/* AgencyNika launch polish: shared UX, responsive surfaces and cookie controls. */
:root { --launch-focus: #6b44ee; }
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
a, button, input, textarea, select { touch-action: manipulation; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible {
  outline: 3px solid var(--launch-focus) !important; outline-offset: 4px;
}
.site-header .logo { flex-shrink: 0; }
/* The dark cinematic header needs light navigation and a legible wordmark. */
.site-header .nav > a:not(:last-child), .migrated-page .site-header .nav > a:not(:last-child) { color: #f7f5ff !important; }
.site-header .nika-logo, .footer .nika-logo { display: inline-flex !important; align-items: center !important; white-space: nowrap; }
.site-header .nika-logo i, .footer .nika-logo i { display:inline-block; transform:none !important; margin:0 0 0 6px !important; font-size:13px !important; letter-spacing:.14em !important; }
.home-v2 .home-hero h1, .migrated-page .hero h1, .case-page .case-hero h1 { color: #f8f8ff !important; }
.home-v2 .home-hero .scroll-pill { color:#fff !important; background:rgba(255,255,255,.09) !important; border:1px solid rgba(255,255,255,.4) !important; }
.home-v2 .home-hero .scroll-pill:hover { background:rgba(255,255,255,.17) !important; }
.migrated-contact .hero .chip { color: #f3f2ff !important; background: rgba(255,255,255,.09) !important; border-color: rgba(255,255,255,.28) !important; }
.site-header .nav [aria-current="page"] { font-weight: 900; }
.site-header .nav a { white-space: nowrap; }
.migrated-about .portrait { padding: 0 !important; overflow:hidden; background:#171122!important; border-color:rgba(18,12,30,.12)!important; }
.migrated-about .portrait img { display:block; width:100%; height:100%; min-height:520px; object-fit:cover; object-position:54% 50%; }
.migrated-about .team-photo { overflow:hidden; background:linear-gradient(135deg, #201335, #4937ae 65%, #d83eab)!important; border:0!important; color:#fff!important; display:flex!important; flex-direction:column; justify-content:space-between; align-items:stretch!important; padding:24px!important; text-align:left!important; }
.migrated-about .team-photo .team-monogram { font-size:clamp(88px,9vw,140px); line-height:.8; font-weight:900; letter-spacing:-.11em; color:rgba(255,255,255,.2); }
.migrated-about .team-photo .team-name { font-size:clamp(30px,3vw,45px); line-height:1; font-weight:900; letter-spacing:-.04em; color:#fff; }
.migrated-about .role:nth-child(2) .team-photo { background:linear-gradient(135deg,#20264b,#553aca,#ed38a1)!important; }
.migrated-about .role:nth-child(3) .team-photo { background:linear-gradient(135deg,#100c32,#3355bb,#5f47d9)!important; }
.migrated-about .role:nth-child(4) .team-photo { background:linear-gradient(135deg,#261334,#8b3bd8,#ef5a94)!important; }
.founder-video-frame video { max-width: 100%; }
.founder-video-frame .founder-intro-video { object-position: center; }
.founder-video-frame .founder-video-note { pointer-events: none; }
.founder-video-frame .founder-video-kicker { pointer-events: none; }
.founder-video-frame .founder-video-frame-empty { display: none; }
.founder-play-button { position:absolute; z-index:5; top:50%; left:50%; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; flex-direction:column; gap:10px; width:112px; height:112px; border-radius:50%; border:1px solid rgba(255,255,255,.75); background:rgba(20,13,38,.76); color:#fff; backdrop-filter:blur(12px); cursor:pointer; box-shadow:0 16px 60px rgba(0,0,0,.3); }
.founder-play-button span { font-size:28px; margin-left:4px; }
.founder-play-button small { font-size:11px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.founder-play-button:hover { background:#5429dd; transform:translate(-50%,-50%) scale(1.05); }
.founder-play-button:focus-visible { outline-color:#fff!important; }
.diagnosis-booking-inline { display:flex; gap: 18px; flex-wrap:wrap; align-items:center; margin: 28px 0 22px; }
.diagnosis-booking-inline .pill-cta { border: 0; cursor: pointer; }
.diagnosis-booking-inline a:not(.pill-cta) { color: inherit; font-weight: 800; text-decoration: underline; }
.growth-modal .booking-embed { width: 100%; display: block; height: min(65vh, 690px); min-height: 450px; border: 1px solid rgba(10,15,26,.13); border-radius: 16px; background: #fff; }
.growth-modal .modal-intro { margin-bottom: 18px; }
.growth-modal .booking-fallback-link { display: inline-block; margin-top: 14px; color: #2f267d; font-weight: 800; }
.growth-modal .modal-close { cursor: pointer; min-width: 44px; min-height: 44px; }
.cookie-consent {
  position: fixed; z-index: 9999; inset: auto 20px 20px;
  display: flex; gap: 26px; align-items: center; justify-content: space-between;
  width: min(980px, calc(100% - 40px)); margin-inline: auto;
  padding: 22px 24px; border-radius: 22px; background: #fff; color: #111323;
  border: 1px solid rgba(21,21,27,.15); box-shadow: 0 24px 90px rgba(0,0,0,.28);
  font-family: Arial,Helvetica,sans-serif;
}
.cookie-consent[hidden] { display: none !important; }
.cookie-consent-copy { flex: 1 1 420px; }
.cookie-consent-copy strong { display:block; font-size: 17px; margin-bottom: 6px; }
.cookie-consent-copy p { margin: 0; font-size: 14px; line-height: 1.55; color: #4b5260; }
.cookie-consent-copy a { color: #5431c7; font-weight: 800; }
.cookie-consent-actions { display: flex; gap: 10px; flex: 0 0 auto; }
.cookie-consent-actions button {
  padding: 13px 18px; min-height: 46px; border-radius: 999px; cursor:pointer;
  font-size: 13px; line-height: 1.2; font-weight: 800; border: 1px solid #27243b;
}
.cookie-decline { color: #27243b; background: #fff; }
.cookie-accept { color: #fff; background: #27243b; }
.cookie-consent-actions button:hover { transform: translateY(-1px); }
.privacy-content { padding: clamp(50px,7vw,100px) 0; }
.privacy-content h1 { font-size: clamp(52px, 7vw, 94px); line-height: .97; letter-spacing: -.06em; }
.privacy-content h2 { font-size: clamp(24px,3vw,36px); letter-spacing: -.03em; margin-top: 42px; }
.privacy-content p, .privacy-content li { font-size: 17px; line-height: 1.65; max-width: 75ch; }
.privacy-content li { margin-bottom: 10px; }
.footer-row a[href="/privacy/"], .footer-row [data-cookie-settings] { font-size: 13px; }
.footer-row [data-cookie-settings] { cursor: pointer; background: transparent; color: inherit; border: 0; text-decoration: underline; }
@media (max-width: 900px) {
  .cookie-consent { flex-wrap: wrap; gap: 15px; }
  .cookie-consent-copy { flex-basis: 100%; }
  .site-header .nav.open { max-height: calc(100svh - 84px); overflow-y: auto; }
}
@media (max-width: 620px) {
  html { scroll-padding-top: 72px; }
  .cookie-consent { inset: auto 12px 12px; width: calc(100% - 24px); padding: 18px; border-radius: 18px; }
  .cookie-consent-actions { flex: 1 1 100%; }
  .cookie-consent-actions button { flex: 1; padding-inline: 10px; }
  .growth-modal { max-height: 92svh; overflow-y: auto; }
  .growth-modal .modal-shell { padding: 22px 14px; }
  .growth-modal .booking-embed { height: 60svh; min-height: 400px; }
  .diagnosis-booking-inline { align-items: stretch; flex-direction: column; }
  .diagnosis-booking-inline .pill-cta { width: 100%; text-align:center; }
  .privacy-content { padding: 48px 0 80px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .cookie-consent-actions button { transition: none; }
}
