/* Global Citation Pro — static site styles */
:root{
  --navy:#0a1628; --navy2:#0e1f3a; --navy3:#13294d;
  --blue:#2b7fff; --blue-dark:#1a5fd0; --blue-soft:#e8f1ff;
  --red:#e63946; --red-soft:#fdeef0;
  --white:#ffffff; --ink:#101c30; --muted:#5b6b85; --muted-light:#8fa0bb;
  --line:#e3e9f4; --bg:#f7f9fd; --card:#ffffff;
  --radius:14px; --shadow:0 10px 30px rgba(10,22,40,.10);
  --shadow-lg:0 24px 60px rgba(10,22,40,.16);
  --font-h:'Sora','Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-b:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-b);color:var(--ink);background:var(--bg);line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-h);line-height:1.2;color:var(--navy);letter-spacing:-.01em}
img{max-width:100%}
a{color:var(--blue-dark);text-decoration:none}
a:hover{text-decoration:underline}
.container{width:min(1180px,92%);margin:0 auto}
section{padding:72px 0}
.section-kicker{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-dark);background:var(--blue-soft);padding:.35rem .9rem;border-radius:999px;margin-bottom:1rem}
.section-title{font-size:clamp(1.7rem,3.4vw,2.5rem);margin-bottom:.6rem}
.section-sub{color:var(--muted);max-width:720px;margin-bottom:2.2rem;font-size:1.05rem}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(10,22,40,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;height:70px}
.brand{display:flex;align-items:center;gap:.7rem;color:#fff;font-family:var(--font-h);font-weight:800;font-size:1.12rem}
.brand small{display:block;font-size:.62rem;font-weight:600;letter-spacing:.18em;color:var(--muted-light);text-transform:uppercase}
.brand:hover{text-decoration:none}
.logo-mark{width:42px;height:42px;flex:0 0 42px}
.nav-links{display:flex;gap:1.4rem;align-items:center;list-style:none}
.nav-links a{color:#dbe4f3;font-weight:600;font-size:.95rem}
.nav-links a:hover,.nav-links a.active{color:#fff;text-decoration:none}
.nav-cta{background:var(--blue);color:#fff!important;padding:.6rem 1.2rem;border-radius:10px;font-weight:700}
.nav-cta:hover{background:var(--blue-dark);text-decoration:none}
.nav-toggle{display:none;background:none;border:0;color:#fff;font-size:1.6rem;cursor:pointer}

/* Hero */
.hero{position:relative;background:radial-gradient(1200px 600px at 70% 10%,#14305e 0%,var(--navy) 55%,#060d1a 100%);color:#fff;overflow:hidden;padding:110px 0 90px}
#globe-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.globe-fallback{position:absolute;inset:0;display:none;align-items:center;justify-content:flex-end;pointer-events:none}
.globe-fallback .css-globe{width:min(46vw,520px);height:min(46vw,520px);margin-right:4vw;border-radius:50%;
  background:radial-gradient(circle at 32% 30%,#2b7fff55,transparent 55%),radial-gradient(circle at 70% 75%,#e6394633,transparent 50%),radial-gradient(circle at 50% 50%,#0e2a5c 0%,#081426 78%);
  box-shadow:0 0 120px #2b7fff44,inset -30px -30px 80px #00000088;position:relative}
.globe-fallback .css-globe::after{content:"";position:absolute;inset:0;border-radius:50%;background:
  radial-gradient(circle 6px at 30% 40%,#fff 60%,transparent 61%),radial-gradient(circle 5px at 62% 30%,#ff8a93 60%,transparent 61%),
  radial-gradient(circle 6px at 70% 62%,#fff 60%,transparent 61%),radial-gradient(circle 5px at 42% 70%,#9cc2ff 60%,transparent 61%)}
.hero-inner{position:relative;z-index:2;max-width:640px}
.hero h1{color:#fff;font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:1rem}
.hero h1 .accent{color:#6aa6ff}
.hero p.lead{color:#c4d2ea;font-size:1.15rem;margin-bottom:2rem;max-width:560px}
.hero-btns{display:flex;gap:.9rem;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:.5rem;font-weight:700;padding:.85rem 1.6rem;border-radius:12px;border:0;cursor:pointer;font-size:1rem;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;text-decoration:none}
.btn:hover{text-decoration:none;transform:translateY(-2px)}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 12px 28px rgba(43,127,255,.35)}
.btn-primary:hover{background:var(--blue-dark)}
.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.25)}
.btn-ghost:hover{background:rgba(255,255,255,.16)}
.btn-whatsapp{background:#22b358;color:#fff;box-shadow:0 12px 28px rgba(34,179,88,.3)}
.btn-whatsapp:hover{background:#1a9448}
.btn-outline{background:#fff;color:var(--blue-dark);border:2px solid var(--blue)}
.btn-outline:hover{background:var(--blue-soft)}
.btn-danger{background:var(--red);color:#fff}
.hero-note{margin-top:1.4rem;color:var(--muted-light);font-size:.9rem}

/* Floating listing cards in hero */
.float-cards{position:absolute;z-index:1;right:4vw;top:16%;display:flex;flex-direction:column;gap:1rem;pointer-events:none}
.float-card{background:rgba(255,255,255,.94);color:var(--ink);border-radius:12px;padding:.8rem 1rem;box-shadow:var(--shadow-lg);display:flex;gap:.7rem;align-items:center;min-width:230px;animation:floaty 6s ease-in-out infinite}
.float-card:nth-child(2){animation-delay:1.4s;margin-right:2.4rem}
.float-card:nth-child(3){animation-delay:2.8s}
.float-card .tick{width:30px;height:30px;border-radius:50%;background:#e6f7ec;display:flex;align-items:center;justify-content:center;flex:0 0 30px}
.float-card b{display:block;font-size:.85rem}
.float-card span{font-size:.75rem;color:var(--muted)}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

/* Cards & grids */
.grid{display:grid;gap:1.4rem}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.7rem;box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.card h3{font-size:1.15rem;margin:.7rem 0 .4rem}
.card p{color:var(--muted);font-size:.95rem}
.card .icon{width:46px;height:46px;border-radius:12px;background:var(--blue-soft);display:flex;align-items:center;justify-content:center}
.badge{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.28rem .7rem;border-radius:999px}
.badge-cite{background:#e6f7ec;color:#157a3d}
.badge-sep{background:#eef1f7;color:#4a5a75}
.price{font-family:var(--font-h);font-size:1.9rem;font-weight:800;color:var(--navy)}
.price small{font-size:.9rem;color:var(--muted);font-weight:600}
.pkg{position:relative}
.pkg.featured{border:2px solid var(--blue)}
.pkg .ribbon{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--blue);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.1em;padding:.3rem 1rem;border-radius:999px;text-transform:uppercase}
.pkg ul{list-style:none;margin:1.1rem 0;color:var(--muted)}
.pkg ul li{padding:.4rem 0 .4rem 1.6rem;position:relative;font-size:.95rem}
.pkg ul li::before{content:"✓";position:absolute;left:0;color:#22b358;font-weight:800}
.disclaimer{background:#fff8e6;border:1px solid #f0d98a;border-radius:12px;padding:1.1rem 1.3rem;color:#7a5b00;font-size:.92rem;margin-top:1.6rem}

/* Country */
.country-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}
.country-tile{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.2rem;text-align:center;box-shadow:var(--shadow);transition:transform .15s}
.country-tile:hover{transform:translateY(-3px);text-decoration:none}
.country-tile .flag{font-size:2rem}
.country-tile b{display:block;color:var(--navy);margin-top:.4rem}
.country-tile span{font-size:.82rem;color:var(--muted)}
.dir-list{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0}
.dir-chip{background:var(--blue-soft);color:var(--blue-dark);font-weight:600;font-size:.85rem;padding:.4rem .9rem;border-radius:999px;border:1px solid #cfe0ff}

/* Builder */
.builder{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg);overflow:hidden}
.builder-steps{display:flex;background:var(--navy);overflow-x:auto}
.builder-steps button{flex:1;min-width:120px;background:none;border:0;color:#9db1d1;font-weight:700;padding:1rem .5rem;cursor:pointer;font-size:.85rem;border-bottom:3px solid transparent;white-space:nowrap}
.builder-steps button.active{color:#fff;border-bottom-color:var(--blue)}
.builder-steps button.done{color:#7ee2a8}
.builder-body{padding:2rem}
.bstep{display:none}
.bstep.active{display:block;animation:fadein .3s ease}
@keyframes fadein{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.field{margin-bottom:1.3rem}
.field label{display:block;font-weight:700;margin-bottom:.45rem}
.field input,.field select,.field textarea{width:100%;padding:.8rem 1rem;border:1.5px solid var(--line);border-radius:10px;font-size:1rem;font-family:inherit;background:#fff}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(43,127,255,.15)}
.field .hint{font-size:.85rem;color:var(--muted);margin-top:.3rem}
.radio-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.radio-card{border:2px solid var(--line);border-radius:12px;padding:1.2rem;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.radio-card:hover{border-color:var(--blue)}
.radio-card.selected{border-color:var(--blue);box-shadow:0 0 0 3px rgba(43,127,255,.15)}
.radio-card input{display:none}
.check-row{display:flex;gap:.8rem;align-items:flex-start;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:.9rem 1rem;margin-bottom:.7rem;cursor:pointer}
.check-row input{margin-top:.3rem;transform:scale(1.25)}
.builder-nav{display:flex;justify-content:space-between;margin-top:1.8rem}
.order-summary{background:var(--navy);color:#fff;border-radius:14px;padding:1.6rem;margin-top:1.6rem}
.order-summary h3{color:#fff;margin-bottom:.8rem}
.sum-row{display:flex;justify-content:space-between;padding:.45rem 0;border-bottom:1px dashed rgba(255,255,255,.15);font-size:.95rem}
.sum-row.total{border-bottom:0;font-size:1.25rem;font-weight:800;padding-top:.8rem}
.sum-row.total .t-price{color:#7ee2a8}
.currency-row{display:flex;gap:.7rem;align-items:center;margin:1rem 0;flex-wrap:wrap}

/* Order */
.order-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:start}
.review-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.6rem;box-shadow:var(--shadow)}
.review-box table{width:100%;border-collapse:collapse;font-size:.95rem}
.review-box td{padding:.5rem 0;border-bottom:1px solid var(--line);vertical-align:top}
.review-box td:first-child{color:var(--muted);width:42%}
.terms{display:flex;gap:.7rem;align-items:flex-start;background:var(--bg);padding:1rem;border-radius:10px;margin:1.2rem 0;font-size:.92rem}
.terms input{margin-top:.3rem;transform:scale(1.3)}

/* FAQ */
.faq-item{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:.8rem;overflow:hidden}
.faq-q{width:100%;background:none;border:0;text-align:left;padding:1.1rem 1.3rem;font-weight:700;font-size:1rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:var(--navy);font-family:var(--font-h)}
.faq-q .plus{font-size:1.4rem;color:var(--blue);flex:0 0 auto;margin-left:1rem}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;color:var(--muted)}
.faq-a div{padding:0 1.3rem 1.2rem}

/* Sample report */
.report-sample{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.report-head{background:var(--navy);color:#fff;padding:1.2rem 1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.6rem}
.report-head b{font-family:var(--font-h)}
.sample-tag{background:var(--red);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.1em;padding:.35rem .9rem;border-radius:999px;text-transform:uppercase}
table.report{width:100%;border-collapse:collapse;font-size:.9rem}
table.report th{background:var(--bg);text-align:left;padding:.7rem 1rem;color:var(--navy);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}
table.report td{padding:.7rem 1rem;border-top:1px solid var(--line)}
.status-pill{font-size:.75rem;font-weight:800;padding:.25rem .7rem;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}
.st-sub{background:#e8f1ff;color:#1a5fd0}.st-live{background:#e6f7ec;color:#157a3d}.st-pend{background:#fff4d6;color:#8a6d00}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;counter-reset:step}
.step{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.6rem;position:relative;box-shadow:var(--shadow)}
.step::before{counter-increment:step;content:counter(step);position:absolute;top:-18px;left:1.2rem;width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-family:var(--font-h)}

/* Policies */
.policy{background:#fff;border:1px solid var(--line);border-radius:14px;padding:2rem;box-shadow:var(--shadow);margin-bottom:1.4rem}
.policy h3{margin-bottom:.6rem}
.policy p,.policy li{color:var(--muted);font-size:.96rem}
.policy ul{margin:.6rem 0 .6rem 1.2rem}

/* Footer */
.site-footer{background:#060d1a;color:#c4d2ea;padding:60px 0 30px;margin-top:40px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem;margin-bottom:2.4rem}
.site-footer h4{color:#fff;font-size:1rem;margin-bottom:1rem}
.site-footer a{color:#9db1d1;font-size:.92rem}
.site-footer ul{list-style:none}
.site-footer li{margin-bottom:.55rem}
.footer-brand p{font-size:.9rem;color:#8fa0bb;max-width:300px;margin-top:.8rem}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.4rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.8rem;font-size:.85rem;color:#8fa0bb}

/* WhatsApp float */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:200;width:60px;height:60px;border-radius:50%;background:#22b358;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(34,179,88,.45);transition:transform .15s}
.wa-float:hover{transform:scale(1.08)}
.wa-float svg{width:32px;height:32px;fill:#fff}

/* Route handling */
.route{display:none}
.route.active{display:block;animation:fadein .35s ease}

/* Utilities */
.text-center{text-align:center}
.mt-2{margin-top:1.2rem}.mb-2{margin-bottom:1.2rem}
.dark-section{background:var(--navy);color:#fff}
.dark-section h2,.dark-section h3{color:#fff}
.dark-section .section-sub{color:#b9c8e2}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:2.4rem;align-items:center}
.check-list{list-style:none;margin-top:1rem}
.check-list li{padding:.5rem 0 .5rem 2rem;position:relative;color:#c4d2ea}
.check-list li::before{content:"✓";position:absolute;left:0;color:#7ee2a8;font-weight:800}
.note-box{background:var(--blue-soft);border-left:4px solid var(--blue);padding:1rem 1.2rem;border-radius:0 10px 10px 0;margin:1.2rem 0;font-size:.94rem;color:#274067}

/* Responsive */
@media(max-width:1020px){
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .grid-3{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .float-cards{display:none}
  .order-layout{grid-template-columns:1fr}
  .two-col{grid-template-columns:1fr}
}
@media(max-width:720px){
  .nav-links{position:fixed;top:70px;left:0;right:0;background:var(--navy);flex-direction:column;padding:1.2rem;gap:1rem;display:none;border-bottom:1px solid rgba(255,255,255,.1)}
  .nav-links.open{display:flex}
  .nav-toggle{display:block}
  .grid-3,.grid-2{grid-template-columns:1fr}
  .radio-cards{grid-template-columns:1fr}
  section{padding:52px 0}
  .hero{padding:80px 0 60px}
  .builder-body{padding:1.2rem}
  .steps{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
  html{scroll-behavior:auto}
  .float-card{animation:none}
}
