/* Klyvora — responsive layout and independent information pages, 2026-11-04 */
:root { --kv-page-line:rgba(109,202,255,.24); --kv-page-bg:#061426; }
/* Keeps links in one cohesive header without squeezing the brand. */
.header .nav{gap:18px}
.header .menu{gap:clamp(12px,1.55vw,23px)}
.header .menu > a{white-space:nowrap}
.header .menu .nav-cta{white-space:nowrap}
@media (max-width:1180px) and (min-width:761px){
  .header .brand img{width:58px!important;height:auto!important}
  .header .klyvora-wordmark{font-size:15px}
  .header .klyvora-wordmark small{font-size:8px}
  .header .menu{gap:12px}
  .header .menu > a{font-size:11px}
  .header .menu .nav-cta{padding:9px 12px}
}
/* Titles and visual accents for newly separated pages. */
.klyvora-page-hero{position:relative;isolation:isolate;overflow:hidden;padding:84px 0 88px;background:radial-gradient(ellipse at 83% 35%,rgba(19,99,182,.32),transparent 53%),linear-gradient(140deg,#061324,#08182d 72%,#06101e);border-bottom:1px solid rgba(104,184,243,.2)}
.klyvora-page-hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(1px 1px at 15% 22%,rgba(167,224,255,.68) 85%,transparent),radial-gradient(1px 1px at 60% 72%,rgba(106,196,255,.68) 85%,transparent),radial-gradient(1px 1px at 86% 14%,rgba(136,217,255,.55) 85%,transparent);background-size:285px 240px;opacity:.32}
.klyvora-page-hero-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);align-items:center;gap:36px;min-height:345px}
.klyvora-page-hero-copy{position:relative;z-index:2}
.klyvora-breadcrumb{display:inline-flex;align-items:center;gap:12px;margin-bottom:28px;font-size:12px;color:#a0c9e4;text-decoration:none}
.klyvora-breadcrumb:hover{color:#8cebff}
.klyvora-breadcrumb span{color:#3b6987}
.klyvora-page-hero h1{margin:15px 0 20px;font:600 clamp(44px,5.5vw,76px)/1.07 'Space Grotesk',sans-serif;letter-spacing:-.065em;color:#f4f9ff;max-width:810px}
.klyvora-page-hero h1 em{font-style:normal;color:#62dafb}
.klyvora-page-hero-copy>p{color:#bbd1e5;max-width:680px;font-size:16px;line-height:1.8}
.klyvora-page-hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:27px}
.klyvora-page-hero-orbit{position:relative;width:min(100%,295px);aspect-ratio:1;justify-self:end;display:grid;place-items:center}
.klyvora-orbit-outline{position:absolute;inset:7%;border-radius:50%;border:1px solid rgba(107,211,255,.28);box-shadow:inset 0 0 70px rgba(17,99,203,.21),0 0 70px rgba(18,118,231,.16);background:radial-gradient(circle at 40% 38%,rgba(31,120,207,.21),rgba(3,20,42,.2) 68%)}
.klyvora-orbit-outline:after,.klyvora-orbit-outline:before{content:"";position:absolute;inset:17%;border:1px solid rgba(91,204,255,.18);border-radius:50%}
.klyvora-orbit-outline:after{inset:27%;border-color:rgba(101,203,255,.26)}
.klyvora-orbit-core{width:35%;aspect-ratio:1;z-index:1;border-radius:50%;background:radial-gradient(circle at 35% 28%,#4dddff,#1166bc 48%,#09264d 90%);box-shadow:0 0 60px rgba(32,133,240,.47),inset -17px -15px 25px rgba(3,18,50,.48)}
.klyvora-orbit-caption{position:absolute;bottom:0;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:.21em;color:#9edfff;white-space:nowrap}
.klyvora-orbit-caption b{color:#eefaff}
.klyvora-related-pages{padding:70px 0 90px;background:linear-gradient(180deg,#061323,#071629)}
.klyvora-related-pages h2,.klyvora-additional-services h2{max-width:none!important}
.klyvora-route-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px}
.klyvora-route-card{display:flex;flex-direction:column;position:relative;gap:10px;min-height:210px;padding:25px;border-radius:22px;border:1px solid var(--kv-page-line);background:radial-gradient(circle at 85% 12%,rgba(35,126,205,.22),transparent 54%),linear-gradient(155deg,#0e2841,#08192e);box-shadow:0 20px 40px rgba(0,0,0,.16);transition:transform .25s,border-color .25s,box-shadow .25s}
.klyvora-route-card:hover{transform:translateY(-4px);border-color:#6cdfff;box-shadow:0 22px 52px rgba(0,88,182,.19)}
.route-card-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;font-size:24px;color:#70eaff;background:rgba(11,67,104,.46);border:1px solid rgba(115,215,255,.33)}
.klyvora-route-card strong{font:650 21px/1.25 'Space Grotesk',sans-serif;letter-spacing:-.025em;color:#f2faff}
.klyvora-route-card small{font-size:13px;color:#a5c5db;line-height:1.55;max-width:245px}
.route-card-arrow{position:absolute;right:20px;top:22px;color:#5fdaff;font-size:20px}
.klyvora-contact-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.klyvora-contact-cards .klyvora-route-card{min-height:170px}
.klyvora-home-final{padding:72px 0;background:linear-gradient(120deg,#091c33,#0a2a48)}
.klyvora-home-final-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}
.klyvora-home-final h2{font-size:clamp(32px,3.7vw,52px);margin:15px 0 12px;max-width:720px!important}
.klyvora-home-final p{color:#b1cce2}
.klyvora-home-final .actions{flex-shrink:0}
/* Give the globe its own full-width square on mobile. Old fixed min-heights and max-widths are overridden. */
@media(max-width:1050px){
  body[data-klyvora-page="home"] .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.8fr)!important}
  body[data-klyvora-page="home"] .hero h1{font-size:clamp(46px,6.1vw,74px)!important}
}
@media(max-width:760px){
  .header .nav{gap:10px}
  .header .menu{gap:4px}
  .header .menu a{font-size:14px;white-space:normal}
  body[data-klyvora-page="home"] .hero{min-height:0!important;overflow:visible!important}
  body[data-klyvora-page="home"] .hero-grid{display:flex!important;flex-direction:column!important;align-items:stretch!important;min-height:0!important;gap:28px!important;padding:40px 0 48px!important}
  body[data-klyvora-page="home"] .hero-copy{order:0!important;width:100%!important;max-width:none!important}
  body[data-klyvora-page="home"] .hero h1{font-size:clamp(40px,9.3vw,65px)!important;line-height:1.1!important;max-width:none!important;margin:20px 0!important}
  body[data-klyvora-page="home"] .hero .lead{font-size:15px!important;max-width:100%!important;line-height:1.7!important}
  body[data-klyvora-page="home"] .hero-proof{margin:24px 0 0!important;gap:8px!important}
  body[data-klyvora-page="home"] .hero-proof span{font-size:10px!important}
  body[data-klyvora-page="home"] .klyvora-earth-visual{
    display:block!important;order:1!important;position:relative!important;flex:none!important;align-self:center!important;
    width:min(100%,450px)!important;max-width:450px!important;min-width:0!important;
    height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:1!important;
    padding:0!important;margin:0 auto 30px!important;overflow:visible!important;
  }
  body[data-klyvora-page="home"] .earth-3d-stage{
    display:block!important;position:relative!important;inset:auto!important;
    width:100%!important;max-width:100%!important;min-width:0!important;aspect-ratio:1!important;
    height:auto!important;min-height:0!important;max-height:none!important;
    margin:0 auto!important;overflow:visible!important;transform:none!important;
  }
  body[data-klyvora-page="home"] .earth-globe-canvas,
  body[data-klyvora-page="home"] .earth-globe-video,
  body[data-klyvora-page="home"] .earth-sphere-fallback{inset:0!important;width:100%!important;height:100%!important;aspect-ratio:1!important;object-fit:contain!important;object-position:center!important}
  body[data-klyvora-page="home"] .earth-motion-toggle{left:50%!important;bottom:-46px!important;transform:translateX(-50%)!important;min-height:38px!important}
  body[data-klyvora-page="home"] .earth-globe-halo{inset:0!important}
  .klyvora-page-hero{padding:48px 0 56px}
  .klyvora-page-hero-layout{grid-template-columns:1fr;min-height:0;gap:20px}
  .klyvora-page-hero-orbit{width:155px;position:absolute;right:6px;top:25px;opacity:.18;pointer-events:none}
  .klyvora-page-hero h1{font-size:clamp(38px,8.6vw,56px)}
  .klyvora-page-hero-copy>p{font-size:14px}
  .klyvora-route-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .klyvora-home-final-inner{flex-direction:column;align-items:flex-start}
  .klyvora-home-final .actions{margin-top:0;width:100%}
}
@media(max-width:520px){
  body[data-klyvora-page="home"] .hero-grid{padding:26px 0 40px!important;gap:21px!important}
  body[data-klyvora-page="home"] .hero h1{font-size:clamp(40px,10.7vw,55px)!important}
  body[data-klyvora-page="home"] .klyvora-earth-visual{width:min(100%,calc(100vw - 64px),340px)!important;max-width:none!important;margin:6px auto 34px!important}
  .klyvora-page-hero{padding:35px 0 48px}
  .klyvora-page-hero h1{font-size:clamp(38px,10vw,50px)}
  .klyvora-page-hero-actions .btn{width:100%}
  .klyvora-route-cards,.klyvora-contact-cards{grid-template-columns:1fr}
  .klyvora-route-card{min-height:170px}
  .klyvora-home-final .actions{display:flex;flex-direction:column}
}
@media(max-width:340px){
  body[data-klyvora-page="home"] .hero h1{font-size:39px!important}
  body[data-klyvora-page="home"] .klyvora-earth-visual{width:calc(100vw - 66px)!important}
}
@media(prefers-reduced-motion:reduce){.klyvora-route-card{transition:none!important}}
html[data-theme="light"] .klyvora-page-hero{background:linear-gradient(140deg,#e7f5ff,#d0eafa);border-bottom-color:#bfdbea}
html[data-theme="light"] .klyvora-page-hero h1{color:#15324d}
html[data-theme="light"] .klyvora-page-hero-copy>p,html[data-theme="light"] .klyvora-breadcrumb{color:#40647e}
html[data-theme="light"] .klyvora-related-pages{background:#f0f8fd}
html[data-theme="light"] .klyvora-route-card{background:linear-gradient(150deg,#fff,#e8f4fc);border-color:#bad7eb}
html[data-theme="light"] .klyvora-route-card strong{color:#103450}
html[data-theme="light"] .klyvora-route-card small{color:#4d728e}
/* Ensure breadcrumb and category kicker remain clearly separated. */
.klyvora-page-hero .klyvora-breadcrumb{display:flex;width:max-content;max-width:100%;margin-bottom:25px;line-height:1.4}
.klyvora-page-hero .kicker{display:block;width:max-content;max-width:100%;margin-bottom:14px}
.klyvora-page-hero h1{margin-top:0}
/* Compact privacy control: available on demand, without covering the globe on first visit. */
#klyvora-privacy:not([open]){width:auto;max-width:calc(100vw - 24px)}
#klyvora-privacy:not([open])>summary{padding:10px 14px;font-size:12px;line-height:1.3}
@media(max-width:680px){
 #klyvora-privacy:not([open]){right:auto;left:12px;bottom:12px;max-width:calc(100vw - 24px)}
 #klyvora-privacy[open]{max-height:calc(100vh - 24px);overflow:auto}
}
/* Compact mobile hero: Earth begins above the fold on common phones. */
@media(max-width:520px){
 body[data-klyvora-page="home"] .hero-grid{gap:16px!important;padding:19px 0 26px!important}
 body[data-klyvora-page="home"] .hero h1{font-size:clamp(37px,10vw,47px)!important;line-height:1.075!important;margin:16px 0!important}
 body[data-klyvora-page="home"] .hero .lead{font-size:14px!important;line-height:1.58!important}
 body[data-klyvora-page="home"] .hero .actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin-top:19px!important}
 body[data-klyvora-page="home"] .hero .actions .btn{width:auto!important;min-width:0!important;max-width:100%!important;display:flex!important;padding:12px 6px!important;min-height:46px!important;gap:5px!important;line-height:1.25!important;font-size:12px!important;white-space:normal!important;text-align:center!important}
 body[data-klyvora-page="home"] .hero-proof{display:none!important}
 body[data-klyvora-page="home"] .klyvora-earth-visual{margin:4px auto 33px!important}
}
@media(max-width:350px){body[data-klyvora-page="home"] .hero .actions .btn{font-size:11px!important;padding:12px 4px!important}}
@media(max-width:760px){.klyvora-page-hero-orbit{display:none}}
.header .menu a[aria-current="page"]{color:#8de8ff}
.header .menu a[aria-current="page"]:not(.nav-cta)::after{opacity:1;transform:scaleX(1)}
html[data-theme="light"] .header .menu a[aria-current="page"]{color:#1473b3}
