/* ============================================================================
   Audit GDPR Gratuit (audit-gratuito.html) — standalone public page, platform palette (navy / blue / gold).
   ============================================================================ */
:root{--bg:#030712;--bg2:#0F172A;--card:#111827;--line:#1E293B;--txt:#E2E8F0;--muted:#94A3B8;--white:#fff;--blue:#3B82F6;--blue2:#1D4ED8;--gold:#D4AF37;--gold2:#F4D03F;--ok:#22C55E;--warn:#F59E0B;--bad:#EF4444;--ease:cubic-bezier(.2,.7,.2,1);}
*{box-sizing:border-box;}
html,body{margin:0;}
body.fa{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% -20%,rgba(212,175,55,.14),transparent 55%),radial-gradient(ellipse at 100% 60%,rgba(29,78,216,.14),transparent 50%),var(--bg);color:var(--txt);font-family:'Inter',system-ui,sans-serif;font-size:15px;line-height:1.5;}
.fa svg{width:18px;height:18px;flex-shrink:0;}
.fa-skip{position:absolute;left:-999px;top:8px;background:var(--gold);color:#111;padding:8px 12px;border-radius:8px;z-index:10;}
.fa-skip:focus{left:8px;}
.fa-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
.fa-top{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;max-width:1120px;width:100%;margin:0 auto;}
.fa-brand{display:flex;align-items:center;gap:10px;color:var(--gold);text-decoration:none;letter-spacing:.12em;font-size:13px;font-weight:600;}
.fa-brand img{width:34px;height:34px;object-fit:contain;}
.fa-brand b{color:var(--white);font-weight:700;}
.fa-lang{background:var(--card);border:1px solid var(--line);color:var(--txt);border-radius:8px;padding:6px 8px;font:inherit;font-size:13px;}
.fa-main{flex:1;width:100%;max-width:1120px;margin:0 auto;padding:12px 20px 60px;outline:none;}
.fa-in > *{animation:faIn .45s var(--ease) both;}
.fa-foot{display:flex;justify-content:center;align-items:center;gap:8px;padding:20px;color:var(--muted);font-size:12px;border-top:1px solid var(--line);}
.fa-foot svg{color:var(--gold);width:16px;height:16px;}

/* buttons */
.fa-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:var(--card);color:var(--txt);border-radius:12px;padding:12px 20px;font:inherit;font-weight:600;font-size:14.5px;cursor:pointer;min-height:46px;transition:transform .15s var(--ease),box-shadow .2s ease,border-color .15s ease,opacity .15s ease;}
.fa-btn:hover:not(:disabled){transform:translateY(-2px);}
.fa-btn:focus-visible,.fa-ans:focus-visible,.fa-link:focus-visible,.fa-f input:focus-visible,.fa-f select:focus-visible{outline:3px solid var(--gold2);outline-offset:2px;}
.fa-btn:disabled{opacity:.45;cursor:not-allowed;}
.fa-btn.gold{background:linear-gradient(135deg,var(--gold),var(--gold2));border-color:var(--gold);color:#1a1405;box-shadow:0 10px 30px rgba(212,175,55,.28);}
.fa-btn.primary{background:linear-gradient(180deg,#2563EB,var(--blue2));border-color:#2563EB;color:#fff;box-shadow:0 8px 24px rgba(37,99,235,.3);}
.fa-btn.ghost{background:transparent;}
.fa-btn.xl{padding:16px 30px;font-size:16px;border-radius:14px;}
.fa-btn.busy{position:relative;color:transparent!important;}
.fa-btn.busy::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;border:2px solid rgba(0,0,0,.25);border-top-color:#1a1405;animation:faSpin .7s linear infinite;}
.fa-link{background:none;border:0;color:var(--muted);text-decoration:underline;cursor:pointer;font:inherit;}
.fa-center{text-align:center;}

/* hero */
.fa-hero{text-align:center;padding:48px 0 20px;max-width:760px;margin:0 auto;}
.fa-badge{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.06em;color:var(--gold);border:1px solid rgba(212,175,55,.4);background:rgba(212,175,55,.08);border-radius:999px;padding:6px 14px;margin-bottom:22px;}
.fa-badge svg{width:15px;height:15px;}
.fa-hero h1{font-size:clamp(34px,6vw,58px);line-height:1.05;margin:0 0 14px;letter-spacing:-.02em;background:linear-gradient(180deg,#fff,#CBD5E1);-webkit-background-clip:text;background-clip:text;color:transparent;}
.fa-sub{font-size:clamp(16px,2.2vw,19px);color:#AEB7C5;max-width:600px;margin:0 auto 30px;}
.fa-adv{list-style:none;padding:0;margin:0 auto 34px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:760px;}
.fa-adv li{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 10px;border-radius:16px;background:rgba(17,24,39,.75);border:1px solid var(--line);font-weight:600;font-size:14px;animation:faIn .5s var(--ease) both;animation-delay:var(--d);position:relative;}
.fa-adv-ic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(212,175,55,.12);color:var(--gold);}
.fa-adv-ic svg{width:22px;height:22px;}
.fa-adv li > svg{position:absolute;top:10px;right:10px;color:var(--ok);width:16px;height:16px;}
.fa-meta{color:var(--muted);font-size:13px;margin-top:14px;}
.fa-resume{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;text-align:left;padding:18px 20px;border-radius:16px;border:1px solid rgba(212,175,55,.45);background:rgba(212,175,55,.07);}
.fa-resume b{display:block;color:var(--white);}
.fa-resume span{color:#AEB7C5;font-size:14px;}
.fa-resume-b{display:flex;gap:8px;}

/* cards + form */
.fa-card{background:rgba(17,24,39,.82);border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 24px 60px rgba(0,0,0,.35);backdrop-filter:blur(10px);}
.fa-form-card,.fa-quiz{max-width:720px;margin:24px auto 0;}
.fa-card h2{font-size:24px;color:var(--white);margin:6px 0 4px;}
.fa-muted{color:var(--muted);margin:0 0 20px;}
.fa-steps{display:flex;align-items:center;gap:8px;margin-bottom:10px;}
.fa-steps span{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;border:1px solid var(--line);color:var(--muted);}
.fa-steps span.on{background:var(--gold);color:#1a1405;border-color:var(--gold);}
.fa-steps i{flex:0 0 40px;height:2px;background:var(--line);}
.fa-steps em{font-style:normal;color:var(--muted);font-size:12.5px;margin-left:6px;}
.fa-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;}
.fa-grid .span2{grid-column:1/-1;}
.fa-f{display:block;font-size:13px;font-weight:600;color:#CBD5E1;}
.fa-f input,.fa-f select{display:block;width:100%;margin-top:6px;}
.fa-f .fa-err{display:block;margin-top:4px;}
.fa-f b{color:var(--gold);} .fa-f i{font-weight:400;color:var(--muted);font-style:normal;}
.fa-f input,.fa-f select{background:#0B1220;border:1px solid var(--line);border-radius:10px;color:var(--white);padding:12px 13px;font:inherit;font-size:15px;min-height:46px;}
.fa-f input:focus,.fa-f select:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.2);}
.fa-f input[aria-invalid],.fa-check input[aria-invalid]{border-color:var(--bad);}
.fa-err{color:#F87171;font-size:12px;font-weight:500;min-height:0;}
.fa-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.fa-check{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:#CBD5E1;cursor:pointer;}
.fa-check input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--gold);flex-shrink:0;}
.fa-check b{color:var(--gold);}
.fa-privacy{font-size:12.5px;color:var(--muted);border:1px solid var(--line);border-radius:10px;padding:10px 12px;}
.fa-privacy summary{cursor:pointer;color:#CBD5E1;font-weight:600;}
.fa-privacy p{margin:8px 0 0;}
.fa-nav{display:flex;justify-content:space-between;gap:10px;margin-top:22px;}
.fa-msg{color:#F87171;font-size:13.5px;min-height:18px;margin:10px 0 0;text-align:center;}
.fa-msg.ok{color:#4ADE80;}

/* quiz */
.fa-q-top{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);}
.fa-q-count{color:var(--gold);font-weight:700;letter-spacing:.02em;}
.fa-progress{height:8px;border-radius:99px;background:#1E293B;overflow:hidden;margin:10px 0 26px;}
.fa-progress span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--blue),var(--gold));transition:width .45s var(--ease);}
.fa-q{font-size:clamp(20px,3vw,26px)!important;line-height:1.3;min-height:68px;animation:faSlide .35s var(--ease) both;}
.fa-answers{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px;}
.fa-ans{display:flex;align-items:center;justify-content:center;gap:12px;padding:22px;border-radius:16px;border:2px solid var(--line);background:#0B1220;color:var(--white);font:inherit;font-size:18px;font-weight:700;cursor:pointer;min-height:76px;transition:transform .15s var(--ease),border-color .15s ease,background .15s ease;}
.fa-ans:hover{transform:translateY(-2px);}
.fa-ans-ic{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid currentColor;}
.fa-ans.yes .fa-ans-ic{color:var(--ok);} .fa-ans.no .fa-ans-ic{color:var(--bad);}
.fa-ans.yes:hover,.fa-ans.yes.sel{border-color:var(--ok);background:rgba(34,197,94,.1);}
.fa-ans.no:hover,.fa-ans.no.sel{border-color:var(--bad);background:rgba(239,68,68,.1);}
.fa-ans.sel{box-shadow:0 0 0 4px rgba(255,255,255,.05);}
.fa-keys{font-size:12px;color:var(--muted);text-align:center;margin:14px 0 0;}
.fa-saved{display:block;text-align:center;font-size:12.5px;color:#4ADE80;opacity:0;transition:opacity .2s ease;height:16px;}
.fa-saved.show{opacity:1;}

/* result */
.fa-result{display:flex;flex-direction:column;gap:18px;margin-top:14px;}
.fa-eyebrow{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);font-weight:700;}
.fa-res-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;}
.fa-res-head h1{font-size:30px;color:var(--white);margin:4px 0 0;}
.fa-score-row{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center;margin-top:18px;}
.fa-ring{position:relative;display:flex;flex-direction:column;align-items:center;}
.fa-ring svg{display:block;width:210px;height:210px;transform:rotate(-90deg);}
.fa-ring circle{fill:none;stroke-width:14;}
.fa-ring .bg{stroke:#1E293B;}
.fa-ring .fg{stroke:var(--c);stroke-linecap:round;transition:stroke-dashoffset 1.3s var(--ease);}
.fa-ring-v{position:absolute;left:50%;transform:translateX(-50%);width:210px;top:0;height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.fa-ring-v b{font-size:50px;font-weight:800;color:var(--white);line-height:1;}
.fa-status{display:block;width:max-content;max-width:100%;margin:14px 0 0;white-space:nowrap;font-size:14px;font-weight:700;padding:5px 14px;border:1px solid;border-radius:999px;background:rgba(3,7,18,.5);text-align:center;}
.fa-gauge{max-width:360px;width:100%;justify-self:center;}
.fa-gauge-t{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:6px;}
.fa-gauge svg{width:100%;height:auto;}
.fa-mail{display:flex;align-items:center;gap:8px;color:#4ADE80;font-size:13.5px;margin:14px 0 0;}
.fa-lists{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.fa-list h3{display:flex;align-items:center;gap:8px;font-size:16px;color:var(--white);margin:0 0 12px;}
.fa-list h3 em{margin-left:auto;font-style:normal;font-size:12px;border-radius:99px;padding:2px 10px;}
.fa-list.ko h3 svg,.fa-list.ko li svg{color:var(--bad);} .fa-list.ok h3 svg,.fa-list.ok li svg{color:var(--ok);}
.fa-list.ko h3 em{background:rgba(239,68,68,.14);color:#F87171;} .fa-list.ok h3 em{background:rgba(34,197,94,.14);color:#4ADE80;}
.fa-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.fa-list li{display:flex;gap:10px;align-items:flex-start;font-size:14px;padding:9px 10px;border-radius:10px;background:#0B1220;}
.fa-list li svg{margin-top:1px;width:16px;height:16px;}
.fa-list li.none{color:var(--muted);}
.fa-na{font-size:12.5px;color:var(--muted);margin:12px 0 0;}
.fa-reco{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap;border-width:2px;background:radial-gradient(ellipse at 0% 0%,rgba(212,175,55,.16),transparent 60%),rgba(17,24,39,.88);border-color:rgba(212,175,55,.55);}
.fa-reco.p-premium{background:radial-gradient(ellipse at 0% 0%,rgba(239,68,68,.16),transparent 60%),rgba(17,24,39,.88);border-color:rgba(239,68,68,.5);}
.fa-reco h2{font-size:36px;letter-spacing:.06em;margin:4px 0;}
.fa-reco p{margin:0;color:#CBD5E1;max-width:600px;}
.fa-h2{font-size:22px;color:var(--white);margin:12px 0 0;text-align:center;scroll-margin-top:20px;}
.fa-packs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch;}
.fa-pack{position:relative;display:flex;flex-direction:column;gap:12px;padding:26px 22px;border-radius:18px;background:rgba(17,24,39,.8);border:1px solid var(--line);transition:transform .2s var(--ease),border-color .2s ease;}
.fa-pack:hover{transform:translateY(-4px);}
.fa-pack.rec{border:2px solid var(--gold);background:linear-gradient(170deg,rgba(212,175,55,.12),rgba(17,24,39,.9) 55%);box-shadow:0 20px 50px rgba(212,175,55,.14);transform:scale(1.03);}
.fa-pack-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:linear-gradient(90deg,var(--gold),var(--gold2));color:#1a1405;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 14px;border-radius:99px;white-space:nowrap;}
.fa-pack h3{margin:0;font-size:20px;color:var(--white);display:flex;align-items:center;gap:9px;}
.fa-pack h3 .pk-ic{width:22px;height:22px;color:var(--gold);}
.fa-pack .fa-btn .pk-ic{width:17px;height:17px;}
.fa-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;vertical-align:middle;}
.fa-pack-badge.soft{background:rgba(17,24,39,.95);color:var(--gold2);border:1px solid rgba(212,175,55,.5);}
.fa-pack-tag{margin:-4px 0 0;font-size:13px;line-height:1.5;color:var(--muted);}
.fa-pack-ideal{font-size:12.5px;line-height:1.5;color:#CBD5E1;}
.fa-pack-ideal b,.fa-pack-goal b{color:var(--white);}
.fa-pack-goal{margin:0;font-size:12.5px;line-height:1.55;color:#CBD5E1;padding:9px 11px;border-left:2px solid var(--gold);background:rgba(212,175,55,.06);border-radius:0 8px 8px 0;}
.fa-price{font-size:28px;font-weight:800;color:var(--gold);}
.fa-price small{font-size:12px;color:var(--muted);font-weight:500;display:block;}
.fa-price i{font-size:12px;color:var(--muted);font-style:normal;font-weight:500;}
.fa-pack ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;flex:1;}
.fa-pack li{display:flex;gap:8px;font-size:14px;color:#CBD5E1;}
.fa-pack li svg{color:var(--gold);width:16px;height:16px;margin-top:2px;}
.fa-disc{font-size:12.5px;color:var(--muted);text-align:center;margin:6px 0 0;}
.fa-spin{display:inline-block;width:34px;height:34px;border-radius:50%;border:3px solid #1E293B;border-top-color:var(--gold);animation:faSpin .8s linear infinite;}

@keyframes faIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
@keyframes faSlide{from{opacity:0;transform:translateX(14px);}to{opacity:1;transform:none;}}
@keyframes faSpin{to{transform:rotate(360deg);}}

@media (max-width:900px){
  .fa-adv{grid-template-columns:repeat(2,minmax(0,1fr));}
  .fa-score-row{grid-template-columns:1fr;justify-items:center;gap:16px;}
  .fa-lists{grid-template-columns:1fr;}
  .fa-packs{grid-template-columns:1fr;max-width:460px;margin:0 auto;width:100%;}
  .fa-pack.rec{transform:none;order:-1;}
}
@media (max-width:560px){
  .fa-top{padding:12px 16px;}
  .fa-main{padding:6px 14px 40px;}
  .fa-hero{padding:26px 0 10px;}
  .fa-card{padding:20px 16px;border-radius:16px;}
  .fa-grid{grid-template-columns:1fr;}
  .fa-answers{gap:10px;}
  .fa-ans{padding:18px 10px;font-size:17px;}
  .fa-nav{flex-direction:column-reverse;}
  .fa-nav .fa-btn{width:100%;}
  .fa-keys{display:none;}
  .fa-ring svg{width:180px;height:180px;}
  .fa-ring-v{height:180px;width:180px;}
  .fa-ring-v b{font-size:42px;}
  .fa-reco{flex-direction:column;align-items:stretch;text-align:center;}
  .fa-reco .fa-btn{width:100%;}
  .fa-res-head .fa-btn{width:100%;}
  .fa-resume{flex-direction:column;align-items:stretch;}
  .fa-resume-b{flex-direction:column;}
}
@media (prefers-reduced-motion:reduce){ *,*::before,*::after{animation:none!important;transition:none!important;} }
