/* ============================================
   Compni — shared stylesheet
   ============================================ */

*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:'Inter',sans-serif;background:#fff;color:#0F172A}
::selection{background:#FFCC00;color:#0F172A}

/* Buttons */
.btn-y{background:#FFCC00;color:#0F172A;font-weight:600;font-size:14px;padding:10px 20px;border-radius:8px;border:1px solid #E6B800;transition:background .15s,box-shadow .15s;display:inline-flex;align-items:center;gap:8px}
.btn-y:hover{background:#F5C200;box-shadow:0 4px 12px rgba(255,204,0,.3)}
.btn-w{background:#fff;color:#0F172A;font-weight:500;font-size:14px;padding:10px 20px;border-radius:8px;border:1px solid #E2E8F0;transition:border-color .15s,background .15s;display:inline-flex;align-items:center;gap:8px}
.btn-w:hover{border-color:#94A3B8;background:#F8FAFC}
.btn-d{background:#0F172A;color:#fff;font-weight:600;font-size:14px;padding:10px 20px;border-radius:8px;transition:background .15s;display:inline-flex;align-items:center;gap:8px}
.btn-d:hover{background:#1E293B}

/* Cards */
.card{background:#fff;border:1px solid #E2E8F0;border-radius:12px;transition:box-shadow .2s,border-color .2s}
.card:hover{border-color:#CBD5E1;box-shadow:0 4px 24px rgba(15,23,42,.07)}
.card-dk{background:#0F172A;border:1px solid #1E293B;border-radius:12px}

/* Nav */
.nav-link{font-size:14px;font-weight:500;color:#475569;padding:6px 12px;border-radius:6px;transition:color .15s}
.nav-link:hover{color:#0F172A}
.nav-link.active{color:#0F172A;font-weight:600}

/* Section label */
.label{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#D4A800}
.label-d{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#94A3B8}

/* FAQ */
details>summary{list-style:none;cursor:pointer}
details>summary::-webkit-details-marker{display:none}
details[open] .faq-plus{transform:rotate(45deg)}
.faq-plus{transition:transform .2s ease}

/* Marquee - right to left (default) */
@keyframes marqueeRTL{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.marquee-track{animation:marqueeRTL 38s linear infinite; display:flex; width:max-content}
.marquee-track:hover{animation-play-state:paused}
.marquee-mask{overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}

/* Dividers & misc */
.check{color:#10B981;flex-shrink:0;margin-top:2px}
.cross{color:#94A3B8;flex-shrink:0;margin-top:2px}

/* Hero gradient */
.hero-gradient{background:radial-gradient(ellipse 90% 70% at 50% -10%,rgba(255,204,0,.16) 0%,transparent 65%)}

/* Mobile menu */
#mobile-menu{transition:transform .28s ease, opacity .2s ease}
#mobile-menu.closed{transform:translateY(-8px);opacity:0;pointer-events:none}
#mobile-menu.open{transform:translateY(0);opacity:1;pointer-events:auto}
.hamburger-line{transition:transform .2s ease, opacity .2s ease}
#menu-toggle[aria-expanded="true"] .line-1{transform:translateY(6px) rotate(45deg)}
#menu-toggle[aria-expanded="true"] .line-2{opacity:0}
#menu-toggle[aria-expanded="true"] .line-3{transform:translateY(-6px) rotate(-45deg)}

/* Image treatment */
.photo-frame{border-radius:16px;overflow:hidden;border:1px solid #E2E8F0}
.photo-frame img{width:100%;height:100%;object-fit:cover;display:block}

/* Skip link */
.skip-link{position:absolute;left:-999px;top:0;background:#FFCC00;color:#0F172A;padding:10px 16px;border-radius:0 0 8px 0;font-weight:600;font-size:14px;z-index:100}
.skip-link:focus{left:0}

/* Focus visibility */
a:focus-visible, button:focus-visible, summary:focus-visible{outline:2px solid #D4A800; outline-offset:2px; border-radius:4px}
