/* ==========================================================================
   Aesir Digital Labs — foglio di stile unico
   1. Font        2. Token      3. Reset      4. Layout
   5. Tipografia  6. Bottoni    7. Header     8. Hero + mockup
   9. Sezioni    10. Pricing   11. Diagramma 12. Configuratore
  13. FAQ        14. Footer    15. Utility   16. Motion / responsive
   ========================================================================== */

/* 1. Font -------------------------------------------------------------- */
@font-face{font-family:'Inter Tight';src:url('../fonts/inter-tight-latin-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Inter Tight';src:url('../fonts/inter-tight-latin-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Inter';src:url('../fonts/inter-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Inter';src:url('../fonts/inter-latin-500-normal.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Inter';src:url('../fonts/inter-latin-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}

/* 2. Token ------------------------------------------------------------- */
:root{
  /* Brand Aesir */
  --ink:#0A0D31;
  --ink-2:#141A4A;
  --ink-3:#1D2560;
  --teal:#55ABAB;
  --teal-600:#3E8F90;
  --teal-700:#2F7273;
  --teal-300:#8FCBCB;
  --teal-100:#D6ECEC;
  --teal-50:#EFF7F7;

  /* Superfici */
  --bg:#FFFFFF;
  --bg-soft:#F5F7FA;
  --bg-softer:#FAFBFC;
  --surface:#FFFFFF;
  --border:#E3E8EF;
  --border-strong:#CFD7E2;

  /* Testo */
  --text:#252A44;
  --text-strong:var(--ink);
  --muted:#5E6580;
  --muted-2:#666E8C;
  --on-dark:#EEF1F8;
  --on-dark-muted:#A6AFC9;

  /* Tipografia */
  --f-display:'Inter Tight','Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --f-body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;

  --t-display:clamp(2.5rem,1.45rem + 4.4vw,4.75rem);
  --t-h2:clamp(1.9rem,1.32rem + 2.4vw,3.1rem);
  --t-h3:clamp(1.2rem,1.1rem + 0.42vw,1.45rem);
  --t-lead:clamp(1.06rem,1.0rem + 0.42vw,1.3rem);
  --t-body:1.0625rem;
  --t-sm:0.9375rem;
  --t-xs:0.8125rem;

  /* Spazio */
  --gutter:clamp(20px,4vw,40px);
  --wrap:1200px;
  --wrap-narrow:820px;
  --section:clamp(68px,8.5vw,128px);

  /* Forma */
  --r-sm:10px;
  --r:14px;
  --r-lg:20px;
  --r-xl:28px;
  --r-pill:999px;

  --sh-1:0 1px 2px rgba(10,13,49,.04),0 2px 8px rgba(10,13,49,.04);
  --sh-2:0 2px 4px rgba(10,13,49,.04),0 12px 28px rgba(10,13,49,.07);
  --sh-3:0 4px 8px rgba(10,13,49,.05),0 28px 60px rgba(10,13,49,.12);
  --sh-teal:0 10px 30px rgba(47,114,115,.3);

  --ease:cubic-bezier(.22,.61,.36,1);
  --dur:.42s;
}

/* 3. Reset ------------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:var(--f-body);font-size:var(--t-body);line-height:1.65;
  font-feature-settings:'cv05' 1,'ss01' 1;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:clip;
}
img,svg,video{max-width:100%;height:auto;display:block}
.aw-i{width:1.15em;height:1.15em;flex:none}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--teal-700);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--teal-600)}
ul,ol{margin:0;padding:0}
:where(h1,h2,h3,h4,p,figure){margin:0}
:focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:4px}
::selection{background:var(--teal-100);color:var(--ink)}
hr{border:0;border-top:1px solid var(--border);margin:0}
fieldset{border:0;margin:0;padding:0;min-width:0}
legend{padding:0}

/* 4. Layout ------------------------------------------------------------ */
.aw-wrap{width:min(100% - var(--gutter)*2,var(--wrap));margin-inline:auto}
.aw-wrap--narrow{width:min(100% - var(--gutter)*2,var(--wrap-narrow))}
.aw-section{padding-block:var(--section);position:relative}
.aw-section--soft{background:var(--bg-soft)}
.aw-section--dark{background:var(--ink);color:var(--on-dark)}
.aw-section--tight{padding-block:clamp(44px,5vw,72px)}
.aw-grid{display:grid;gap:clamp(16px,2vw,24px)}
.aw-skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--ink);color:#fff;padding:12px 20px;border-radius:0 0 var(--r) 0}
.aw-skip:focus{left:0}

/* 5. Tipografia -------------------------------------------------------- */
.aw-display,.aw-h1{
  font-family:var(--f-display);font-weight:700;font-size:var(--t-display);
  line-height:1.03;letter-spacing:-.035em;color:var(--text-strong);text-wrap:balance;
}
.aw-h2{
  font-family:var(--f-display);font-weight:700;font-size:var(--t-h2);
  line-height:1.1;letter-spacing:-.028em;color:var(--text-strong);text-wrap:balance;
}
.aw-h3{
  font-family:var(--f-display);font-weight:600;font-size:var(--t-h3);
  line-height:1.25;letter-spacing:-.018em;color:var(--text-strong);
}
.aw-section--dark .aw-h1,.aw-section--dark .aw-h2,.aw-section--dark .aw-h3{color:#fff}
.aw-lead{font-size:var(--t-lead);line-height:1.6;color:var(--muted);max-width:62ch;text-wrap:pretty}
.aw-section--dark .aw-lead{color:var(--on-dark-muted)}
.aw-eyebrow{
  font-size:var(--t-xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal-700);margin-bottom:14px;
}
.aw-section--dark .aw-eyebrow{color:var(--teal-300)}
.aw-shead{max-width:64ch;margin-bottom:clamp(36px,4.5vw,60px)}
.aw-shead--center{margin-inline:auto;text-align:center}
.aw-shead--center .aw-lead{margin-inline:auto}
.aw-shead .aw-lead{margin-top:18px}
.aw-micro{font-size:var(--t-sm);color:var(--muted-2)}

/* 6. Bottoni ----------------------------------------------------------- */
.aw-btn{
  --btn-bg:var(--teal-700);--btn-fg:#fff;--btn-bd:transparent;
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:14px 26px;border-radius:var(--r-pill);border:1.5px solid var(--btn-bd);
  background:var(--btn-bg);color:var(--btn-fg);
  font-family:var(--f-body);font-weight:600;font-size:var(--t-sm);letter-spacing:-.005em;
  text-decoration:none;cursor:pointer;white-space:nowrap;
  transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background-color .2s,color .2s,border-color .2s;
}
.aw-btn .aw-i{width:17px;height:17px;flex:none;transition:transform var(--dur) var(--ease)}
.aw-btn:hover{color:var(--btn-fg);transform:translateY(-2px)}
.aw-btn:hover .aw-i{transform:translateX(3px)}
.aw-btn:active{transform:translateY(0)}
.aw-btn--primary{box-shadow:var(--sh-teal)}
.aw-btn--primary:hover{--btn-bg:#275F60;box-shadow:0 14px 34px rgba(39,95,96,.36)}
.aw-btn--secondary{--btn-bg:transparent;--btn-fg:var(--ink);--btn-bd:var(--border-strong)}
.aw-btn--secondary:hover{--btn-bd:var(--ink);--btn-fg:var(--ink);background:rgba(10,13,49,.03)}
.aw-btn--ghost{--btn-bg:transparent;--btn-fg:var(--on-dark);--btn-bd:rgba(255,255,255,.28)}
.aw-btn--ghost:hover{--btn-fg:#fff;--btn-bd:rgba(255,255,255,.6);background:rgba(255,255,255,.08)}
.aw-btn--lg{padding:17px 32px;font-size:1rem}
.aw-btn--sm{padding:10px 18px;font-size:var(--t-xs)}
.aw-btn--block{width:100%}
.aw-btns{display:flex;flex-wrap:wrap;gap:14px;align-items:center}

.aw-textlink{
  display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:var(--t-sm);
  color:var(--teal-700);text-decoration:none;
}
.aw-textlink .aw-i{width:16px;height:16px;transition:transform var(--dur) var(--ease)}
.aw-textlink:hover .aw-i{transform:translateX(3px)}

/* 7. Header ------------------------------------------------------------ */
.aw-header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid transparent;transition:border-color .3s,box-shadow .3s,background-color .3s;
}
.aw-header.is-stuck{border-bottom-color:var(--border);box-shadow:0 1px 20px rgba(10,13,49,.05)}
.aw-header__in{display:flex;align-items:center;gap:clamp(16px,3vw,40px);min-height:72px}
.aw-brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink);flex:none}
.aw-brand .custom-logo{width:auto;max-height:40px}
.aw-brand__logo{height:30px;width:auto;flex:none}
.aw-brand__sub{
  font-family:var(--f-display);font-weight:600;font-size:.98rem;letter-spacing:-.02em;line-height:1;
  padding-left:13px;border-left:1px solid var(--border-strong);color:var(--ink);white-space:nowrap;
}
.aw-footer .aw-brand__sub{color:#fff;border-left-color:rgba(255,255,255,.24)}
.aw-footer .aw-brand__logo{height:28px}
@media(max-width:420px){
  .aw-brand__logo{height:22px}
  .aw-brand__sub{font-size:.85rem;padding-left:10px}
  .aw-brand{gap:10px}
}
.aw-nav{display:flex;align-items:center;gap:4px;margin-left:auto;list-style:none}
.aw-nav a{
  display:block;padding:9px 14px;border-radius:var(--r-pill);
  font-size:var(--t-sm);font-weight:500;color:var(--text);text-decoration:none;
  transition:background-color .2s,color .2s;
}
.aw-nav a:hover,.aw-nav .current-menu-item>a{background:var(--bg-soft);color:var(--ink)}
.aw-header__cta{display:flex;align-items:center;gap:10px;flex:none}
.aw-burger{
  display:none;width:44px;height:44px;border:1px solid var(--border);background:#fff;
  border-radius:var(--r-sm);cursor:pointer;padding:0;place-items:center;
}
.aw-burger span{display:block;width:18px;height:1.75px;background:var(--ink);border-radius:2px;transition:transform .3s var(--ease),opacity .2s}
.aw-burger span+span{margin-top:4.5px}
.aw-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.25px) rotate(45deg)}
.aw-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.aw-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.25px) rotate(-45deg)}

/* 8. Hero -------------------------------------------------------------- */
.aw-hero{
  position:relative;overflow:hidden;color:var(--on-dark);
  background:
    radial-gradient(120% 90% at 78% 8%,rgba(85,171,171,.28) 0%,rgba(85,171,171,0) 55%),
    radial-gradient(90% 70% at 10% 100%,rgba(62,143,144,.20) 0%,rgba(62,143,144,0) 60%),
    linear-gradient(168deg,#0A0D31 0%,#101542 52%,#0C1038 100%);
  padding-block:clamp(56px,8vw,104px) clamp(0px,4vw,40px);
}
.aw-hero::after{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(80% 60% at 50% 32%,#000 0%,transparent 78%);
  mask-image:radial-gradient(80% 60% at 50% 32%,#000 0%,transparent 78%);
}
.aw-hero__in{position:relative;z-index:2;display:grid;gap:clamp(40px,5vw,64px);align-items:center}
@media(min-width:1024px){
  .aw-hero__in{grid-template-columns:minmax(0,1.02fr) minmax(0,1.1fr)}
}
.aw-hero .aw-eyebrow{color:var(--teal-300)}
.aw-hero h1{color:#fff}
.aw-hero h1 em{font-style:normal;color:var(--teal-300)}
.aw-hero__lead{margin-top:22px;font-size:var(--t-lead);line-height:1.6;color:var(--on-dark-muted);max-width:52ch}
.aw-hero__btns{margin-top:34px}
.aw-hero__micro{
  margin-top:26px;display:flex;flex-wrap:wrap;gap:8px 22px;
  font-size:var(--t-sm);color:var(--on-dark-muted);list-style:none;
}
.aw-hero__micro li{display:flex;align-items:center;gap:8px}
.aw-hero__micro .aw-i{width:16px;height:16px;color:var(--teal-300);flex:none}
.aw-hero__trust{
  margin-top:clamp(48px,6vw,76px);padding-top:26px;border-top:1px solid rgba(255,255,255,.1);
  display:flex;flex-wrap:wrap;align-items:center;gap:12px 30px;
  font-size:var(--t-xs);letter-spacing:.03em;color:rgba(255,255,255,.7);
}
.aw-hero__trust strong{color:rgba(255,255,255,.8);font-weight:600}

/* Browser mockup */
.aw-stage{position:relative;perspective:1600px}
.aw-browser{
  border-radius:var(--r-lg);overflow:hidden;background:#fff;
  box-shadow:0 40px 90px rgba(0,0,0,.45),0 4px 16px rgba(0,0,0,.3);
  transform:rotateY(-7deg) rotateX(2.5deg);transform-origin:left center;
  transition:transform .8s var(--ease);
}
@media(max-width:1023px){.aw-browser{transform:none}}
.aw-browser__bar{
  display:flex;align-items:center;gap:8px;padding:11px 14px;
  background:#F1F3F7;border-bottom:1px solid #E1E5EC;
}
.aw-browser__dots{display:flex;gap:6px;flex:none}
.aw-browser__dots i{width:9px;height:9px;border-radius:50%;background:#D3D8E0}
.aw-browser__dots i:nth-child(1){background:#F0A0A0}
.aw-browser__dots i:nth-child(2){background:#F2CE8E}
.aw-browser__dots i:nth-child(3){background:#A6D6AE}
.aw-browser__url{
  flex:1;background:#fff;border:1px solid #E4E8EF;border-radius:var(--r-pill);
  padding:4px 12px;font-size:11px;color:#7A8298;display:flex;align-items:center;gap:6px;
  overflow:hidden;white-space:nowrap;text-overflow:ellipsis;
}
.aw-browser__url::before{content:'';width:9px;height:9px;flex:none;border-radius:2px;border:1.5px solid #A8B0C2;border-top-color:transparent;transform:rotate(-45deg)}
.aw-browser__view{position:relative;aspect-ratio:16/10.6;background:#fff}

/* Le "anteprime di sito": interfacce vere disegnate in CSS, non foto stock */
.aw-shot{position:absolute;inset:0;opacity:0;transition:opacity .9s var(--ease);display:grid;grid-template-rows:auto 1fr}
.aw-shot.is-active{opacity:1}
.aw-shot__nav{display:flex;align-items:center;gap:7px;padding:11px 16px;border-bottom:1px solid rgba(0,0,0,.06)}
.aw-shot__logo{width:20px;height:20px;border-radius:5px;flex:none}
.aw-shot__nav b{width:44px;height:5px;border-radius:3px;background:rgba(0,0,0,.14);display:block}
.aw-shot__nav b:nth-child(3){width:34px}
.aw-shot__nav b:nth-child(4){width:38px}
.aw-shot__nav em{margin-left:auto;width:52px;height:16px;border-radius:8px;display:block}
.aw-shot__body{padding:16px;display:grid;gap:9px;align-content:start}
.aw-shot__h{height:13px;border-radius:4px;background:rgba(0,0,0,.72);width:74%}
.aw-shot__h+.aw-shot__h{width:52%}
.aw-shot__p{height:6px;border-radius:3px;background:rgba(0,0,0,.13);width:88%}
.aw-shot__p.s{width:66%}
.aw-shot__row{display:grid;gap:9px;margin-top:6px}
.aw-shot__row--3{grid-template-columns:repeat(3,1fr)}
.aw-shot__row--4{grid-template-columns:repeat(4,1fr)}
.aw-shot__row--2{grid-template-columns:repeat(2,1fr)}
.aw-shot__card{border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:9px;display:grid;gap:6px;background:rgba(0,0,0,.012)}
.aw-shot__thumb{border-radius:6px;aspect-ratio:16/10}
.aw-shot__line{height:5px;border-radius:3px;background:rgba(0,0,0,.15)}
.aw-shot__line.s{width:56%}
.aw-shot__pill{height:14px;width:56px;border-radius:7px}
.aw-shot__hero{border-radius:10px;aspect-ratio:21/5;margin-bottom:2px}
/* varianti cromatiche: tre "clienti" diversi, nessuno reale */
.aw-shot--a{--c1:#2F6BE0;--c2:#EAF0FD}
.aw-shot--b{--c1:#1F8A5F;--c2:#E7F5EE}
.aw-shot--c{--c1:#B4552F;--c2:#FBEDE6}
.aw-shot .aw-shot__logo,.aw-shot .aw-shot__pill,.aw-shot__nav em{background:var(--c1)}
.aw-shot__thumb,.aw-shot__hero{background:linear-gradient(135deg,var(--c2),color-mix(in srgb,var(--c1) 22%,#fff))}

/* Phone mockup sovrapposto */
.aw-phone{
  position:absolute;right:-14px;bottom:-34px;width:clamp(96px,13vw,152px);z-index:3;
  border-radius:20px;padding:6px;background:#0F1330;
  box-shadow:0 24px 50px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.09);
}
.aw-phone__screen{border-radius:15px;overflow:hidden;background:#fff;aspect-ratio:9/18.5;position:relative}
.aw-phone__notch{position:absolute;top:6px;left:50%;transform:translateX(-50%);width:32%;height:5px;border-radius:3px;background:rgba(0,0,0,.55);z-index:2}
.aw-phone .aw-shot__nav{padding:12px 8px 7px}
.aw-phone .aw-shot__body{padding:9px 8px;gap:7px}
.aw-phone .aw-shot__h{height:9px}
.aw-phone .aw-shot__row--3,.aw-phone .aw-shot__row--4{grid-template-columns:1fr}
.aw-phone .aw-shot__row{gap:6px}
.aw-phone .aw-shot__card{padding:6px;gap:4px}
@media(max-width:640px){.aw-phone{right:-6px;bottom:-24px;width:88px}}

/* 9. Sezioni generiche ------------------------------------------------- */
.aw-cards{display:grid;gap:clamp(14px,1.6vw,20px)}
@media(min-width:640px){.aw-cards--2,.aw-cards--3,.aw-cards--4{grid-template-columns:repeat(2,1fr)}}
@media(min-width:960px){.aw-cards--3{grid-template-columns:repeat(3,1fr)}.aw-cards--4{grid-template-columns:repeat(4,1fr)}}

.aw-card{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);
  padding:clamp(22px,2.4vw,30px);
  transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.aw-card:hover{transform:translateY(-4px);box-shadow:var(--sh-2);border-color:var(--border-strong)}
.aw-card__icon{
  width:44px;height:44px;border-radius:12px;display:grid;place-items:center;margin-bottom:18px;
  background:var(--teal-50);color:var(--teal-700);border:1px solid var(--teal-100);
}
.aw-card__icon .aw-i{width:21px;height:21px}
.aw-card h3{margin-bottom:9px}
.aw-card p{color:var(--muted);font-size:var(--t-sm);margin:0}

/* Lista con spunta */
.aw-checks{list-style:none;display:grid;gap:11px}
.aw-checks li{display:grid;grid-template-columns:19px 1fr;gap:11px;align-items:start;font-size:var(--t-sm);line-height:1.5}
.aw-checks .aw-i{width:19px;height:19px;color:var(--teal-600);margin-top:2px}
.aw-checks li.is-head{font-weight:600;color:var(--ink);grid-template-columns:1fr;padding-bottom:2px}

/* Placeholder dichiarati (§ vincoli) */
.aw-placeholder{
  border:1.5px dashed var(--border-strong);border-radius:var(--r-lg);
  padding:clamp(24px,3vw,40px);display:grid;gap:8px;place-items:center;text-align:center;
  background:repeating-linear-gradient(45deg,var(--bg-softer),var(--bg-softer) 12px,#fff 12px,#fff 24px);
  min-height:170px;align-content:center;
}
.aw-placeholder__tag{
  font-size:var(--t-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);
}
.aw-placeholder__note{font-size:var(--t-sm);color:var(--muted-2);max-width:42ch}

/* 10. Pricing ---------------------------------------------------------- */
.aw-tabs{display:inline-flex;padding:5px;background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-pill);gap:4px;margin-bottom:clamp(28px,3vw,44px)}
.aw-tabs button{
  border:0;background:transparent;border-radius:var(--r-pill);padding:10px 22px;cursor:pointer;
  font-size:var(--t-sm);font-weight:600;color:var(--muted);transition:background-color .25s,color .25s,box-shadow .25s;
}
.aw-tabs button[aria-selected="true"]{background:#fff;color:var(--ink);box-shadow:var(--sh-1)}

.aw-plans{display:grid;gap:clamp(14px,1.6vw,20px);align-items:stretch}
@media(min-width:700px){.aw-plans{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1080px){.aw-plans{grid-template-columns:repeat(4,1fr)}}
.aw-plan{
  position:relative;display:flex;flex-direction:column;
  background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);
  padding:clamp(24px,2.4vw,30px);height:100%;
  transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),border-color .3s;
}
.aw-plan:hover{transform:translateY(-5px);box-shadow:var(--sh-2)}
.aw-plan--featured{
  border-color:var(--teal);box-shadow:0 8px 20px rgba(85,171,171,.14),0 30px 60px rgba(10,13,49,.1);
  background:linear-gradient(180deg,var(--teal-50) 0%,#fff 190px);
}
.aw-plan--featured:hover{box-shadow:0 12px 26px rgba(85,171,171,.2),0 36px 70px rgba(10,13,49,.14)}
.aw-plan__badge{
  position:absolute;top:-12px;left:50%;transform:translateX(-50%);
  background:var(--teal-700);color:#fff;border-radius:var(--r-pill);
  padding:6px 16px;font-size:var(--t-xs);font-weight:600;letter-spacing:.05em;
  white-space:nowrap;box-shadow:var(--sh-teal);
}
.aw-plan__name{font-family:var(--f-display);font-weight:700;font-size:1.22rem;letter-spacing:-.02em;color:var(--ink)}
.aw-plan__meta{font-size:var(--t-xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--teal-700);margin-top:5px}
.aw-plan__price{display:flex;align-items:baseline;gap:7px;margin:18px 0 4px;flex-wrap:wrap}
.aw-plan__from{font-size:var(--t-sm);color:var(--muted-2)}
.aw-plan__amount{font-family:var(--f-display);font-weight:700;font-size:2.35rem;letter-spacing:-.035em;color:var(--ink);line-height:1}
.aw-plan__amount--sm{font-size:1.6rem}
.aw-plan__vat{font-size:var(--t-xs);color:var(--muted-2)}
.aw-plan__tagline{font-size:var(--t-sm);color:var(--muted);margin:12px 0 0;min-height:3em}
.aw-plan__sep{margin:22px 0;border-top:1px solid var(--border)}
.aw-plan .aw-checks{margin-bottom:22px}
.aw-plan__timing{
  margin-top:auto;padding-top:16px;font-size:var(--t-xs);color:var(--muted-2);
  border-top:1px dashed var(--border);
}
.aw-plan__cta{margin-top:16px}

.aw-pricing-note{
  margin-top:clamp(24px,3vw,36px);padding:18px 22px;border-radius:var(--r);
  background:var(--bg-soft);border:1px solid var(--border);
  font-size:var(--t-sm);color:var(--muted);display:flex;gap:12px;align-items:flex-start;
}
.aw-pricing-note .aw-i{width:19px;height:19px;color:var(--teal-600);flex:none;margin-top:2px}

/* Tabella add-on */
.aw-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--r-lg);background:#fff}
.aw-table{width:100%;border-collapse:collapse;min-width:420px}
.aw-table th,.aw-table td{padding:14px 20px;text-align:left;font-size:var(--t-sm);border-bottom:1px solid var(--border)}
.aw-table thead th{
  font-size:var(--t-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted-2);background:var(--bg-softer);
}
.aw-table td:last-child,.aw-table th:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.aw-table tbody tr:last-child td{border-bottom:0}
.aw-table tbody tr:hover{background:var(--teal-50)}
.aw-table strong{font-weight:600;color:var(--ink)}

/* 11. Diagramma integrazioni ------------------------------------------- */
.aw-integr{position:relative}
.aw-integr__grid{display:grid;gap:clamp(40px,5vw,72px);align-items:center}
@media(min-width:980px){.aw-integr__grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}}
.aw-orbit{position:relative;aspect-ratio:1/1;max-width:520px;margin-inline:auto;width:100%}
.aw-orbit svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.aw-orbit__ring{fill:none;stroke:rgba(255,255,255,.1);stroke-width:1}
.aw-orbit__dash{fill:none;stroke:rgba(143,203,203,.34);stroke-width:1;stroke-dasharray:2 10;stroke-linecap:round}
.aw-orbit__line{
  fill:none;stroke:rgba(143,203,203,.42);stroke-width:1.25;stroke-dasharray:3 5;
  animation:aw-dash 3.2s linear infinite;
}
@keyframes aw-dash{to{stroke-dashoffset:-32}}
.aw-orbit__core{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:38%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;text-align:center;
  background:radial-gradient(circle at 32% 26%,#1B2360,#0C1038);
  border:1px solid rgba(143,203,203,.34);
  box-shadow:0 0 0 10px rgba(85,171,171,.06),0 0 60px rgba(85,171,171,.24),inset 0 1px 0 rgba(255,255,255,.1);
}
.aw-orbit__core span{
  font-family:var(--f-display);font-weight:700;font-size:clamp(.82rem,2vw,1.05rem);
  letter-spacing:-.01em;color:#fff;line-height:1.2;padding:0 8px;
}
.aw-orbit__core small{display:block;font-family:var(--f-body);font-size:.6rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--teal-300);margin-bottom:4px}
.aw-node{
  position:absolute;transform:translate(-50%,-50%);
  display:flex;align-items:center;gap:7px;white-space:nowrap;
  padding:8px 14px;border-radius:var(--r-pill);
  background:rgba(20,26,74,.86);border:1px solid rgba(143,203,203,.3);
  backdrop-filter:blur(6px);
  font-size:var(--t-xs);font-weight:600;color:#EAF2F2;letter-spacing:.01em;
  box-shadow:0 6px 18px rgba(0,0,0,.3);
  opacity:0;
}
.aw-node::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--teal-300);flex:none;box-shadow:0 0 8px var(--teal-300)}
@keyframes aw-node-in{from{opacity:0;transform:translate(-50%,-50%) scale(.82)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.aw-integr__list{list-style:none;display:grid;gap:14px;margin-top:30px}
.aw-integr__list li{display:grid;grid-template-columns:22px 1fr;gap:13px;align-items:start;font-size:var(--t-sm);color:var(--on-dark-muted)}
.aw-integr__list .aw-i{width:22px;height:22px;color:var(--teal-300);margin-top:1px}
.aw-integr__list strong{display:block;color:#fff;font-weight:600;margin-bottom:2px}

/* 12. Configuratore ---------------------------------------------------- */
.aw-calc{
  background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);
  box-shadow:var(--sh-3);overflow:hidden;
}
.aw-calc__head{padding:clamp(22px,2.6vw,30px) clamp(22px,2.8vw,36px);border-bottom:1px solid var(--border);background:var(--bg-softer)}
.aw-calc__steps{display:flex;align-items:center;gap:6px;list-style:none;flex-wrap:wrap;counter-reset:awstep}
.aw-calc__steps li{
  display:flex;align-items:center;gap:8px;font-size:var(--t-xs);font-weight:600;
  color:var(--muted-2);transition:color .3s;
}
.aw-calc__steps li::before{
  counter-increment:awstep;content:counter(awstep);
  width:24px;height:24px;border-radius:50%;display:grid;place-items:center;flex:none;
  background:#fff;border:1.5px solid var(--border-strong);color:var(--muted-2);font-size:11px;
  transition:background-color .3s,border-color .3s,color .3s;
}
.aw-calc__steps li[data-state="current"]{color:var(--ink)}
.aw-calc__steps li[data-state="current"]::before{background:var(--teal-600);border-color:var(--teal-600);color:#fff}
.aw-calc__steps li[data-state="done"]{color:var(--teal-700)}
.aw-calc__steps li[data-state="done"]::before{background:var(--teal-50);border-color:var(--teal);color:var(--teal-700)}
.aw-calc__steps li+li::after{}
.aw-calc__sep{flex:1;min-width:8px;height:1px;background:var(--border);max-width:34px}
.aw-calc__count{display:none;font-size:var(--t-sm);color:var(--muted);margin-bottom:2px}
.aw-calc__count b{color:var(--ink);font-weight:600}
@media(max-width:680px){
  .aw-calc__steps{display:none}
  .aw-calc__count{display:block}
  .aw-calc__progress{margin-top:12px}
}
.aw-calc__progress{height:3px;background:var(--border);border-radius:2px;overflow:hidden;margin-top:18px}
.aw-calc__progress i{display:block;height:100%;background:var(--teal-600);border-radius:2px;width:0;transition:width .5s var(--ease)}

.aw-calc__body{padding:clamp(24px,3vw,40px) clamp(22px,2.8vw,36px)}
.aw-step{display:none}
.aw-step.is-active{display:block;animation:aw-step-in .38s var(--ease)}
@keyframes aw-step-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.aw-step__q{font-family:var(--f-display);font-weight:700;font-size:clamp(1.35rem,1.1rem + 1vw,1.85rem);letter-spacing:-.025em;color:var(--ink);line-height:1.2}
.aw-step__hint{font-size:var(--t-sm);color:var(--muted);margin-top:9px}
.aw-step__opts{display:grid;gap:11px;margin-top:26px}
@media(min-width:620px){.aw-step__opts--2{grid-template-columns:repeat(2,1fr)}}

.aw-opt{position:relative;display:block;cursor:pointer}
.aw-opt input{position:absolute;opacity:0;width:1px;height:1px}
.aw-opt__box{
  display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:center;
  padding:16px 18px;border:1.5px solid var(--border);border-radius:var(--r);
  background:#fff;transition:border-color .2s,background-color .2s,box-shadow .2s,transform .2s;
}
.aw-opt:hover .aw-opt__box{border-color:var(--teal-300);background:var(--teal-50)}
.aw-opt input:focus-visible+.aw-opt__box{outline:3px solid var(--teal);outline-offset:2px}
.aw-opt input:checked+.aw-opt__box{
  border-color:var(--teal-600);background:var(--teal-50);
  box-shadow:0 0 0 1px var(--teal-600) inset,0 6px 16px rgba(62,143,144,.13);
}
.aw-opt__label{font-weight:600;font-size:var(--t-body);color:var(--ink);grid-column:1}
.aw-opt__hint{grid-column:1;font-size:var(--t-xs);color:var(--muted)}
.aw-opt__right{grid-column:2;grid-row:1/3;display:flex;align-items:center;gap:13px}
.aw-opt__price{font-size:var(--t-sm);font-weight:600;color:var(--teal-700);font-variant-numeric:tabular-nums;white-space:nowrap}
.aw-opt input:checked+.aw-opt__box .aw-opt__price{color:var(--teal-700)}
.aw-opt__mark{
  width:22px;height:22px;border-radius:50%;flex:none;
  border:1.5px solid var(--border-strong);display:grid;place-items:center;transition:all .2s;
}
.aw-opt input:checked+.aw-opt__box .aw-opt__mark{background:var(--teal-600);border-color:var(--teal-600);color:#fff}
.aw-opt__mark .aw-i{width:13px;height:13px;opacity:0;transition:opacity .2s;stroke-width:3}
.aw-opt input:checked+.aw-opt__box .aw-opt__mark .aw-i{opacity:1}
.aw-opt--check .aw-opt__mark{border-radius:7px}

.aw-calc__foot{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:20px clamp(22px,2.8vw,36px);border-top:1px solid var(--border);background:var(--bg-softer);
}
.aw-calc__running{display:flex;align-items:baseline;gap:9px;font-size:var(--t-sm);color:var(--muted)}
.aw-calc__running b{
  font-family:var(--f-display);font-weight:700;font-size:1.5rem;color:var(--ink);
  letter-spacing:-.03em;font-variant-numeric:tabular-nums;
}
.aw-calc__navbtns{display:flex;gap:10px;margin-left:auto}

/* Risultato */
.aw-result{text-align:center;padding-block:8px}
.aw-result__label{font-size:var(--t-sm);color:var(--muted)}
.aw-result__amount{
  font-family:var(--f-display);font-weight:700;
  font-size:clamp(3rem,2rem + 5vw,5.2rem);letter-spacing:-.045em;line-height:1;
  color:var(--ink);font-variant-numeric:tabular-nums;margin:14px 0 6px;
  display:flex;align-items:baseline;justify-content:center;gap:4px;
}
.aw-result__vat{font-size:var(--t-sm);color:var(--muted-2)}
.aw-result__care{
  display:inline-flex;align-items:center;gap:10px;margin-top:20px;padding:11px 20px;
  border-radius:var(--r-pill);background:var(--teal-50);border:1px solid var(--teal-100);
  font-size:var(--t-sm);color:var(--teal-700);font-weight:500;
}
.aw-result__care b{font-weight:700}
.aw-result__care .aw-i{width:20px;height:20px;flex:none;color:var(--teal-600)}
.aw-result__recap{
  margin-top:28px;text-align:left;display:grid;gap:0;
  border:1px solid var(--border);border-radius:var(--r);overflow:hidden;
}
.aw-result__recap div{display:flex;justify-content:space-between;gap:18px;padding:11px 18px;font-size:var(--t-sm);border-bottom:1px solid var(--border)}
.aw-result__recap div:last-child{border-bottom:0}
.aw-result__recap div:nth-child(odd){background:var(--bg-softer)}
.aw-result__recap dt,.aw-result__recap span:first-child{color:var(--muted)}
.aw-result__recap span:last-child{font-weight:600;color:var(--ink);text-align:right}
.aw-result__disclaimer{
  margin-top:22px;font-size:var(--t-xs);color:var(--muted-2);max-width:60ch;margin-inline:auto;line-height:1.6;
}

/* Form lead */
.aw-form{display:grid;gap:16px;margin-top:26px;text-align:left}
@media(min-width:620px){.aw-form__row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}}
.aw-field{display:grid;gap:6px}
.aw-field label{font-size:var(--t-sm);font-weight:600;color:var(--ink)}
.aw-field label .req{color:#C0392B;font-weight:400}
.aw-field input,.aw-field textarea,.aw-field select{
  width:100%;padding:13px 15px;border:1.5px solid var(--border);border-radius:var(--r-sm);
  background:#fff;font-size:var(--t-sm);transition:border-color .2s,box-shadow .2s;
}
.aw-field input:focus,.aw-field textarea:focus{
  outline:0;border-color:var(--teal-600);box-shadow:0 0 0 3px rgba(85,171,171,.18);
}
.aw-field textarea{min-height:104px;resize:vertical}
.aw-field.has-error input,.aw-field.has-error textarea{border-color:#C0392B}
.aw-field__err{font-size:var(--t-xs);color:#C0392B;min-height:0}
.aw-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.aw-consent{display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:start;font-size:var(--t-xs);color:var(--muted);line-height:1.55}
.aw-consent input{width:19px;height:19px;margin-top:1px;accent-color:var(--teal-600)}
.aw-formmsg{padding:13px 16px;border-radius:var(--r-sm);font-size:var(--t-sm);display:none}
.aw-formmsg.is-error{display:block;background:#FDECEA;color:#98241A;border:1px solid #F5C6C0}
.aw-thanks{text-align:center;padding:clamp(26px,4vw,50px) 0}
.aw-thanks__icon{width:64px;height:64px;border-radius:50%;background:var(--teal-50);color:var(--teal-600);display:grid;place-items:center;margin:0 auto 22px;border:1px solid var(--teal-100)}
.aw-thanks__icon .aw-i{width:30px;height:30px;stroke-width:2.4}

/* 13. FAQ -------------------------------------------------------------- */
.aw-faq{border-top:1px solid var(--border)}
.aw-faq__item{border-bottom:1px solid var(--border)}
.aw-faq__q{
  width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;
  padding:22px 0;background:none;border:0;cursor:pointer;text-align:left;
  font-family:var(--f-display);font-weight:600;font-size:clamp(1.02rem,.97rem + .3vw,1.16rem);
  letter-spacing:-.015em;color:var(--ink);transition:color .2s;
}
.aw-faq__q:hover{color:var(--teal-700)}
.aw-faq__q .aw-i{width:22px;height:22px;flex:none;color:var(--teal-600);transition:transform .35s var(--ease);margin-top:1px}
.aw-faq__q[aria-expanded="true"] .aw-i{transform:rotate(180deg)}
.aw-faq__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .38s var(--ease)}
.aw-faq__q[aria-expanded="true"]+.aw-faq__a{grid-template-rows:1fr}
.aw-faq__a>div{overflow:hidden}
.aw-faq__a p{padding-bottom:24px;color:var(--muted);font-size:var(--t-sm);max-width:72ch;margin:0}

/* Processo */
.aw-steps{list-style:none;display:grid;gap:0;counter-reset:aw-step}
@media(min-width:860px){.aw-steps{grid-template-columns:repeat(4,1fr)}}
.aw-timeline{position:relative;display:grid;gap:clamp(18px,2vw,26px)}
@media(min-width:860px){.aw-timeline{grid-template-columns:repeat(4,1fr)}}
.aw-tstep{position:relative;padding-top:34px}
.aw-tstep::before{
  content:'';position:absolute;top:11px;left:0;right:0;height:1px;
  background:linear-gradient(90deg,var(--teal) 0%,var(--border) 100%);
}
.aw-tstep__n{
  position:absolute;top:0;left:0;width:23px;height:23px;border-radius:50%;
  background:#fff;border:1.5px solid var(--teal);color:var(--teal-700);
  display:grid;place-items:center;font-size:11px;font-weight:700;
}
.aw-tstep h3{font-size:1.02rem;margin-bottom:7px}
.aw-tstep p{font-size:var(--t-sm);color:var(--muted);margin:0}

/* Sezione CTA finale */
.aw-cta{
  border-radius:var(--r-xl);padding:clamp(36px,5.5vw,76px);text-align:center;position:relative;overflow:hidden;
  background:
    radial-gradient(90% 120% at 50% -10%,rgba(85,171,171,.32),transparent 60%),
    linear-gradient(150deg,#0A0D31,#141A4A);
  color:#fff;
}
.aw-cta::after{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:.4;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:52px 52px;
  -webkit-mask-image:radial-gradient(70% 70% at 50% 40%,#000,transparent 75%);
  mask-image:radial-gradient(70% 70% at 50% 40%,#000,transparent 75%);
}
.aw-cta>*{position:relative;z-index:1}
.aw-cta h2{color:#fff;max-width:20ch;margin-inline:auto}
.aw-cta p{color:var(--on-dark-muted);max-width:56ch;margin:20px auto 0;font-size:var(--t-lead)}
.aw-cta .aw-btns{justify-content:center;margin-top:34px}

/* 14. Footer ----------------------------------------------------------- */
.aw-footer{background:var(--ink);color:var(--on-dark-muted);padding-block:clamp(48px,6vw,80px) 34px;font-size:var(--t-sm)}
.aw-footer__grid{display:grid;gap:clamp(30px,4vw,48px)}
@media(min-width:760px){.aw-footer__grid{grid-template-columns:1.6fr 1fr 1fr 1fr}}
.aw-footer h4{font-family:var(--f-display);font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#fff;margin-bottom:16px}
.aw-footer ul{list-style:none;display:grid;gap:10px}
.aw-footer a{color:var(--on-dark-muted);text-decoration:none;transition:color .2s}
.aw-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.aw-footer__brand .aw-brand{color:#fff;margin-bottom:16px}
.aw-footer__brand .aw-brand__name span{color:var(--teal-300)}
.aw-footer__tag{max-width:34ch;line-height:1.6}
.aw-footer__parent{
  display:inline-flex;align-items:center;gap:9px;margin-top:18px;padding:8px 15px;
  border-radius:var(--r-pill);border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);
  font-size:var(--t-xs);color:#fff;
}
.aw-footer__parent b{font-weight:600}
.aw-footer__legal{
  margin-top:clamp(36px,4vw,56px);padding-top:24px;border-top:1px solid rgba(255,255,255,.1);
  display:flex;flex-wrap:wrap;gap:8px 26px;justify-content:space-between;align-items:center;
  font-size:var(--t-xs);color:rgba(255,255,255,.5);
}
.aw-footer__legal ul{display:flex;flex-wrap:wrap;gap:8px 20px}
.aw-footer__company{line-height:1.7;margin-top:14px;font-size:var(--t-xs);color:rgba(255,255,255,.55)}

/* CTA sticky mobile */
.aw-sticky{
  position:fixed;left:0;right:0;bottom:0;z-index:90;display:none;
  padding:11px var(--gutter) calc(11px + env(safe-area-inset-bottom));
  background:rgba(255,255,255,.92);backdrop-filter:blur(14px);
  border-top:1px solid var(--border);
  transform:translateY(110%);transition:transform .4s var(--ease);
}
.aw-sticky.is-visible{transform:none}
.aw-sticky .aw-btn{width:100%}
@media(max-width:860px){.aw-sticky{display:block}body{padding-bottom:78px}}

/* 15. Utility ---------------------------------------------------------- */
.aw-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.aw-center{text-align:center}
.aw-mt-l{margin-top:clamp(30px,4vw,50px)}
.aw-hidden{display:none!important}

/* 16. Motion ----------------------------------------------------------- */
[data-aw-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
[data-aw-reveal].is-in{opacity:1;transform:none}
[data-aw-reveal][data-aw-delay="1"]{transition-delay:.08s}
[data-aw-reveal][data-aw-delay="2"]{transition-delay:.16s}
[data-aw-reveal][data-aw-delay="3"]{transition-delay:.24s}
[data-aw-reveal][data-aw-delay="4"]{transition-delay:.32s}

@media(max-width:860px){
  .aw-nav{
    position:fixed;inset:72px 0 auto;flex-direction:column;align-items:stretch;gap:2px;
    background:#fff;border-bottom:1px solid var(--border);padding:14px var(--gutter) 22px;
    box-shadow:0 20px 40px rgba(10,13,49,.1);
    transform:translateY(-14px);opacity:0;pointer-events:none;transition:opacity .28s var(--ease),transform .28s var(--ease);
    max-height:calc(100dvh - 72px);overflow-y:auto;margin:0;
  }
  .aw-nav.is-open{transform:none;opacity:1;pointer-events:auto}
  .aw-nav a{padding:13px 14px;font-size:1rem}
  .aw-burger{display:grid}
  .aw-header__cta .aw-btn--primary{display:none}
  .aw-header__in{min-height:72px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important;
  }
  [data-aw-reveal]{opacity:1!important;transform:none!important}
  .aw-shot{transition:none}
  .aw-browser{transform:none}
}

@media print{
  .aw-header,.aw-sticky,.aw-calc,.aw-cta{display:none!important}
  body{color:#000}
}

/* 17. Prose (contenuti editoriali delle pagine interne) ------------------ */
.aw-prose{font-size:var(--t-body);color:var(--text)}
.aw-prose>*+*{margin-top:1.1em}
.aw-prose h2{font-family:var(--f-display);font-weight:700;font-size:clamp(1.5rem,1.25rem + 1.1vw,2rem);letter-spacing:-.025em;color:var(--ink);margin-top:1.9em;line-height:1.2}
.aw-prose h3{font-family:var(--f-display);font-weight:600;font-size:1.24rem;letter-spacing:-.018em;color:var(--ink);margin-top:1.6em}
.aw-prose p,.aw-prose li{color:var(--text);line-height:1.7;max-width:72ch}
.aw-prose ul,.aw-prose ol{padding-left:1.25em;display:grid;gap:.5em}
.aw-prose ul{list-style:disc}
.aw-prose ol{list-style:decimal}
.aw-prose li::marker{color:var(--teal-600)}
.aw-prose a{color:var(--teal-700);font-weight:500}
.aw-prose img{border-radius:var(--r);margin-block:1.6em}
.aw-prose blockquote{border-left:3px solid var(--teal);padding-left:20px;color:var(--muted);font-size:var(--t-lead)}
.aw-prose table{width:100%;border-collapse:collapse;font-size:var(--t-sm)}
.aw-prose th,.aw-prose td{padding:11px 14px;border-bottom:1px solid var(--border);text-align:left}
.aw-prose code{background:var(--bg-soft);padding:.15em .4em;border-radius:5px;font-size:.9em}
.aw-prose hr{margin-block:2.4em}

/* Paginazione */
.pagination,.nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.pagination .page-numbers,.nav-links .page-numbers{
  display:grid;place-items:center;min-width:40px;height:40px;padding:0 12px;
  border:1px solid var(--border);border-radius:var(--r-sm);text-decoration:none;
  color:var(--text);font-size:var(--t-sm);font-weight:500;
}
.pagination .current,.nav-links .current{background:var(--ink);border-color:var(--ink);color:#fff}

/* ==========================================================================
   18. Pagine interne
   ========================================================================== */

/* Hero delle pagine interne */
.aw-phero{
  position:relative;overflow:hidden;color:var(--on-dark);
  background:
    radial-gradient(110% 100% at 82% 0%,rgba(85,171,171,.24) 0%,rgba(85,171,171,0) 58%),
    linear-gradient(165deg,#0A0D31 0%,#101542 60%,#0C1038 100%);
  padding-block:clamp(28px,4vw,44px) clamp(52px,7vw,88px);
}
.aw-phero::after{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:.45;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:60px 60px;
  -webkit-mask-image:radial-gradient(90% 80% at 60% 20%,#000 0%,transparent 80%);
  mask-image:radial-gradient(90% 80% at 60% 20%,#000 0%,transparent 80%);
}
.aw-phero>*{position:relative;z-index:2}
.aw-phero .aw-eyebrow{color:var(--teal-300)}
.aw-phero h1{color:#fff;font-size:clamp(2.1rem,1.5rem + 2.6vw,3.6rem)}
.aw-phero h1 em{font-style:normal;color:var(--teal-300)}
.aw-phero .aw-lead{color:var(--on-dark-muted);max-width:56ch}
.aw-phero__in{display:grid;gap:clamp(26px,3.5vw,48px);align-items:end}
@media(min-width:940px){.aw-phero__in{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr)}}
.aw-phero__cta{display:grid;gap:14px;justify-items:start}
@media(min-width:940px){.aw-phero__cta{justify-items:end;text-align:right}}
.aw-phero__note{font-size:var(--t-xs);color:rgba(255,255,255,.62);margin:0;max-width:34ch}

/* Breadcrumb */
.aw-crumbs{
  display:flex;flex-wrap:wrap;gap:9px;align-items:center;
  font-size:var(--t-xs);color:rgba(255,255,255,.55);margin-bottom:clamp(22px,3vw,34px);
}
.aw-crumbs a{color:rgba(255,255,255,.78);text-decoration:none}
.aw-crumbs a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.aw-crumbs span[aria-current]{color:rgba(255,255,255,.55)}

/* Due colonne testo + contenuto */
.aw-split{display:grid;gap:clamp(34px,5vw,64px);align-items:start}
@media(min-width:940px){
  .aw-split{grid-template-columns:repeat(2,minmax(0,1fr))}
  .aw-split--reverse>*:first-child{order:2}
}
.aw-split .aw-shead{margin-bottom:26px}

.aw-checks--2col{gap:12px 26px}
@media(min-width:560px){.aw-checks--2col{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Tabella comparativa */
.aw-compare{position:relative}
.aw-table--compare{min-width:660px}
.aw-table--compare th[scope=row]{
  font-weight:500;color:var(--text);text-align:left;width:34%;
  position:sticky;left:0;background:#fff;z-index:1;
}
.aw-table--compare tbody tr:nth-child(odd) th[scope=row]{background:var(--bg-softer)}
.aw-table--compare tbody tr:nth-child(odd) td{background:var(--bg-softer)}
.aw-table--compare tbody tr:hover th[scope=row],.aw-table--compare tbody tr:hover td{background:var(--teal-50)}
.aw-table--compare thead th{text-align:center;font-size:var(--t-sm);text-transform:none;letter-spacing:0;color:var(--ink);font-weight:700;font-family:var(--f-display);padding-block:18px}
.aw-table--compare thead th:first-child{text-align:left;font-family:var(--f-body);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted-2);font-weight:600}
.aw-table--compare td{text-align:center;vertical-align:middle}
.aw-table--compare .is-hl{background:var(--teal-50)!important;box-shadow:inset 1px 0 0 var(--teal-100),inset -1px 0 0 var(--teal-100)}
.aw-table--compare thead .is-hl{border-radius:12px 12px 0 0}
.aw-compare__tag{
  display:block;font-family:var(--f-body);font-size:10px;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;color:var(--teal-700);margin-top:4px;
}
.aw-table--compare td .aw-i{width:19px;height:19px;color:var(--teal-600);margin-inline:auto;stroke-width:2.4}
.aw-compare__no{color:var(--border-strong);font-size:1.1rem}
.aw-compare__val{font-weight:600;color:var(--ink);font-size:var(--t-sm)}

/* Prima / dopo (restyling) */
.aw-beforeafter{display:grid;gap:16px}
@media(min-width:520px){.aw-beforeafter{grid-template-columns:repeat(2,1fr)}}
.aw-ba{position:relative}
.aw-ba__tag{
  position:absolute;top:-10px;left:14px;z-index:2;
  font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  padding:4px 10px;border-radius:var(--r-pill);background:var(--bg-soft);color:var(--muted);
  border:1px solid var(--border);
}
.aw-ba--after .aw-ba__tag{background:var(--teal-600);color:#fff;border-color:var(--teal-600)}
.aw-ba__box{
  border:1px solid var(--border);border-radius:var(--r);padding:20px 14px 16px;
  display:grid;gap:9px;background:#fff;min-height:230px;align-content:start;
}
.aw-ba--before .aw-ba__box{background:#FBFBFC;filter:saturate(.2)}
.aw-ba--after .aw-ba__box{box-shadow:var(--sh-2);border-color:var(--teal-100)}
.aw-ba__row{display:flex;gap:7px;align-items:center}
.aw-ba__row i{display:block;height:6px;border-radius:3px;background:rgba(0,0,0,.16)}
.aw-ba__row i.pill{height:12px;border-radius:6px;background:var(--teal-600)}
.aw-ba--after .aw-ba__row i{background:rgba(10,13,49,.18)}
.aw-ba__block{border-radius:6px;background:rgba(0,0,0,.08)}
.aw-ba__block--hero{aspect-ratio:16/7;background:linear-gradient(135deg,var(--teal-50),var(--teal-100))}
.aw-ba__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.aw-ba__grid span{aspect-ratio:1;border-radius:6px;background:linear-gradient(135deg,var(--bg-soft),var(--teal-50))}

/* Diagramma di flusso e-commerce */
.aw-flow{display:grid;gap:12px;justify-items:center;text-align:center}
.aw-flow__row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.aw-flow__node{
  padding:12px 20px;border-radius:var(--r);white-space:nowrap;
  background:rgba(20,26,74,.7);border:1px solid rgba(143,203,203,.24);
  font-size:var(--t-sm);font-weight:600;color:#EAF2F2;
}
.aw-flow__node--accent{
  background:linear-gradient(135deg,#1B2360,#0C1038);border-color:rgba(143,203,203,.5);
  box-shadow:0 0 40px rgba(85,171,171,.2);font-size:1.05rem;padding:16px 30px;
}
.aw-flow__pipe{display:flex;flex-direction:column;gap:5px;align-items:center}
.aw-flow__pipe i{width:2px;height:7px;border-radius:2px;background:rgba(143,203,203,.45)}
.aw-flow__pipe i:nth-child(2){opacity:.65}
.aw-flow__pipe i:nth-child(3){opacity:.35}

/* Numeri chiave */
.aw-facts{display:grid;gap:clamp(14px,2vw,20px)}
@media(min-width:560px){.aw-facts{grid-template-columns:repeat(2,1fr)}}
@media(min-width:960px){.aw-facts{grid-template-columns:repeat(4,1fr)}}
.aw-fact{padding:24px;border:1px solid var(--border);border-radius:var(--r-lg);background:#fff}
.aw-fact__n{
  font-family:var(--f-display);font-weight:700;font-size:clamp(1.8rem,1.4rem + 1.4vw,2.4rem);
  letter-spacing:-.035em;color:var(--ink);line-height:1;
}
.aw-fact__n small{font-family:var(--f-body);font-size:.9rem;font-weight:500;color:var(--muted-2);letter-spacing:0}
.aw-fact__l{font-size:var(--t-sm);color:var(--muted);margin-top:8px}

/* Elenco numerato del processo */
.aw-steplist{list-style:none;display:grid;gap:2px;counter-reset:none}
.aw-steplist__item{
  display:grid;grid-template-columns:44px 1fr;gap:20px;align-items:start;
  padding:22px 0;border-top:1px solid var(--border);
}
.aw-steplist__item:last-child{border-bottom:1px solid var(--border)}
.aw-steplist__n{
  width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:var(--teal-50);border:1px solid var(--teal-100);color:var(--teal-700);
  font-family:var(--f-display);font-weight:700;font-size:.95rem;
}
.aw-steplist__item h3{margin-bottom:6px}
.aw-steplist__item p{color:var(--muted);font-size:var(--t-sm);margin:0;max-width:70ch}

/* Navigazione delle FAQ */
.aw-faqnav{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:clamp(30px,4vw,50px)}
.aw-faqnav a{
  display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:var(--r-pill);
  border:1px solid var(--border);background:#fff;color:var(--text);
  font-size:var(--t-sm);font-weight:500;text-decoration:none;transition:all .2s;
}
.aw-faqnav a:hover{border-color:var(--teal);background:var(--teal-50);color:var(--teal-700)}
.aw-faqnav .aw-i{width:16px;height:16px;color:var(--teal-600)}
.aw-faqgroup{scroll-margin-top:100px}
.aw-faqgroup+.aw-faqgroup{margin-top:clamp(40px,5vw,64px)}
.aw-faqgroup .aw-shead{margin-bottom:6px}
.aw-faqgroup .aw-h2{font-size:clamp(1.35rem,1.2rem + .7vw,1.7rem)}

/* Schede progetto */
.aw-project{
  display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);
  border-radius:var(--r-lg);overflow:hidden;height:100%;
  transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.aw-project:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}
.aw-project__shot{position:relative;aspect-ratio:16/10;background:var(--bg-soft);overflow:hidden}
.aw-project__shot img{width:100%;height:100%;object-fit:cover;object-position:top center}
.aw-project__noshot{width:100%;height:100%;display:grid;place-items:center;color:var(--border-strong)}
.aw-project__noshot .aw-i{width:44px;height:44px}
.aw-project__mobile{
  position:absolute;right:14px;bottom:-18px;width:22%;border-radius:9px;overflow:hidden;
  border:3px solid #fff;box-shadow:0 10px 26px rgba(10,13,49,.24);background:#fff;
}
.aw-project__mobile img{width:100%;height:auto;display:block}
.aw-project__body{padding:24px;display:flex;flex-direction:column;gap:10px;flex:1}
.aw-project__type{font-size:var(--t-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-700)}
.aw-project__desc{font-size:var(--t-sm);color:var(--muted);margin:0}
.aw-project__meta{display:grid;gap:7px;margin:6px 0 0;font-size:var(--t-xs)}
.aw-project__meta div{display:flex;gap:8px}
.aw-project__meta dt{color:var(--muted-2);min-width:82px}
.aw-project__meta dd{margin:0;color:var(--ink);font-weight:500}
.aw-project__meta--stack div{flex-direction:column;gap:2px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.aw-project__meta--stack div:last-child{border-bottom:0}
.aw-project__links{display:flex;flex-wrap:wrap;gap:16px;margin-top:auto;padding-top:14px}
.aw-project__hero{margin:0;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border)}
.aw-project__aside{
  background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-lg);
  padding:clamp(22px,2.4vw,28px);position:sticky;top:100px;
}

/* Card contatto */
.aw-card--contact{text-align:left}
.aw-card--contact p{margin-top:6px}
.aw-contactlink{font-weight:600;font-size:1.05rem;color:var(--teal-700);text-decoration:none;word-break:break-word}
.aw-contactlink:hover{text-decoration:underline;text-underline-offset:3px}
.aw-card--contact .aw-placeholder{min-height:0;padding:16px}

/* Avviso "bozza da validare" nelle pagine legali */
.aw-notice-draft{
  border:1.5px solid #E7C46B;background:#FEF9EC;color:#6B5312;
  border-radius:var(--r);padding:16px 20px;font-size:var(--t-sm);line-height:1.6;
  margin-bottom:28px;
}
.aw-notice-draft code{background:rgba(107,83,18,.1);color:inherit}
.aw-prose .aw-notice-draft strong{color:#5A4510}

/* Correzioni finali */
.aw-table--compare td:last-child,
.aw-table--compare th:last-child{text-align:center}
.aw-flow{align-self:center;width:100%}
.aw-flow__node{padding:13px 22px;font-size:var(--t-body)}
.aw-flow__node--accent{font-size:1.15rem;padding:18px 34px}
.aw-flow__pipe i{height:9px}
.aw-split>.aw-beforeafter{align-self:center}
.aw-compare__hint{display:none;font-size:var(--t-xs);color:var(--muted-2);margin-bottom:10px}
@media(max-width:760px){
  .aw-compare__hint{display:block}
  .aw-compare{position:relative}
  .aw-compare::after{
    content:'';position:absolute;top:0;right:0;bottom:0;width:34px;pointer-events:none;
    background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.92));
    border-radius:0 var(--r-lg) var(--r-lg) 0;
  }
}

/* ==========================================================================
   19. Livello visivo: sfondi fotografici cloud/tech
   Le immagini stanno sempre SOTTO un velo scuro: il testo mantiene il
   contrasto AA a prescindere dall'immagine.
   ========================================================================== */

.aw-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.aw-bg__img{
  position:absolute;inset:-8%;
  background-size:cover;background-position:center;
  will-change:transform;
}
.aw-bg__veil{position:absolute;inset:0}

/* Sorgenti */
.aw-bg--nodes .aw-bg__img{background-image:url('../img/bg-nodes-1920.webp');opacity:.9}
.aw-bg--mesh  .aw-bg__img{background-image:url('../img/bg-mesh-1920.webp');opacity:.9}
.aw-bg--fiber .aw-bg__img{background-image:url('../img/bg-fiber-1920.webp');opacity:.85}
.aw-bg--datacenter .aw-bg__img{background-image:url('../img/ph-datacenter-1600.webp');opacity:.85}
@media(max-width:900px){
  .aw-bg--nodes .aw-bg__img{background-image:url('../img/bg-nodes-1100.webp')}
  .aw-bg--mesh  .aw-bg__img{background-image:url('../img/bg-mesh-1100.webp')}
  .aw-bg--fiber .aw-bg__img{background-image:url('../img/bg-fiber-1100.webp')}
  .aw-bg--datacenter .aw-bg__img{background-image:url('../img/ph-datacenter-900.webp')}
}

/* Posizionamenti e sfumature */
.aw-bg--mesh .aw-bg__img{background-position:center bottom;
  -webkit-mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.8) 55%,transparent 100%);
  mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.8) 55%,transparent 100%)}
.aw-bg--fiber .aw-bg__img{background-position:right top;
  -webkit-mask-image:radial-gradient(95% 105% at 76% 10%,#000 0%,transparent 78%);
  mask-image:radial-gradient(95% 105% at 76% 10%,#000 0%,transparent 78%)}
.aw-bg--datacenter .aw-bg__img{background-position:center 42%}

/* Velo: garantisce il contrasto del testo sopra qualsiasi immagine */
/* Il velo protegge la colonna del testo e lascia respirare l'immagine
   dove testo non ce n'è. I valori sono stati verificati sui pixel reali:
   il contrasto minimo del bianco resta sopra 6:1 ovunque (AA richiede 4.5). */
.aw-bg__veil{
  background:
    radial-gradient(110% 85% at 80% 4%,rgba(85,171,171,.24) 0%,rgba(85,171,171,0) 58%),
    linear-gradient(96deg,
      rgba(10,13,49,.88) 0%,
      rgba(10,13,49,.78) 34%,
      rgba(11,15,54,.55) 60%,
      rgba(12,16,56,.36) 100%);
}
.aw-bg--datacenter .aw-bg__veil{
  background:linear-gradient(96deg,
    rgba(10,13,49,.9) 0%,
    rgba(10,13,49,.8) 40%,
    rgba(11,15,54,.52) 72%,
    rgba(12,16,56,.34) 100%);
}
/* Nella sezione integrazioni il testo sta a destra: velo specchiato. */
.aw-integr .aw-bg--mesh .aw-bg__veil{
  background:linear-gradient(96deg,
    rgba(10,13,49,.35) 0%,
    rgba(11,15,54,.55) 44%,
    rgba(10,13,49,.85) 62%,
    rgba(10,13,49,.9) 100%);
}
/* Su mobile le colonne si impilano: il testo può finire ovunque,
   quindi il velo torna uniforme. */
@media(max-width:940px){
  .aw-bg__veil,
  .aw-bg--datacenter .aw-bg__veil,
  .aw-integr .aw-bg--mesh .aw-bg__veil{
    background:
      radial-gradient(120% 80% at 80% 2%,rgba(85,171,171,.2) 0%,rgba(85,171,171,0) 60%),
      linear-gradient(180deg,rgba(10,13,49,.74) 0%,rgba(11,15,54,.72) 60%,rgba(12,16,56,.8) 100%);
  }
  .aw-bg--datacenter .aw-bg__veil{background:linear-gradient(180deg,rgba(10,13,49,.8),rgba(12,16,56,.84))}
}
.aw-hero>*:not(.aw-bg),.aw-phero>*:not(.aw-bg),.aw-integr>*:not(.aw-bg){position:relative;z-index:2}
.aw-cta>*:not(.aw-bg){position:relative;z-index:2}
/* Nel riquadro CTA il testo è centrato e l'immagine arriva vicino:
   questo velo radiale garantisce il contrasto dietro le parole. */
.aw-cta .aw-bg__img{opacity:.85}
.aw-cta .aw-bg::after{
  content:'';position:absolute;inset:0;
  background:radial-gradient(62% 72% at 50% 54%,rgba(10,13,49,.86) 0%,rgba(10,13,49,.42) 62%,rgba(10,13,49,0) 100%);
}

/* Immagine editoriale incorniciata */
.aw-figure{margin:0;border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--border);box-shadow:var(--sh-2);position:relative}
.aw-figure img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:16/10}
.aw-figure figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:26px 22px 16px;
  background:linear-gradient(to top,rgba(10,13,49,.88),rgba(10,13,49,0));
  color:rgba(255,255,255,.9);font-size:var(--t-xs);line-height:1.5;
}
.aw-section--dark .aw-figure{border-color:rgba(255,255,255,.14)}

/* ==========================================================================
   20. Animazioni
   ========================================================================== */

/* Deriva lenta degli sfondi */
@keyframes aw-drift{
  0%  {transform:scale(1.06) translate3d(0,0,0)}
  50% {transform:scale(1.12) translate3d(-1.4%,-1.2%,0)}
  100%{transform:scale(1.06) translate3d(0,0,0)}
}
.aw-bg__img{animation:aw-drift 34s ease-in-out infinite}
.aw-bg--fiber .aw-bg__img{animation-duration:44s;animation-direction:reverse}
.aw-bg--mesh .aw-bg__img{animation-duration:40s}

/* Aloni che pulsano */
@keyframes aw-glowpulse{
  0%,100%{opacity:.55;transform:translate3d(0,0,0) scale(1)}
  50%    {opacity:.9;transform:translate3d(2%,-2%,0) scale(1.15)}
}
.aw-bg__glow{
  position:absolute;width:52%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(85,171,171,.38) 0%,rgba(85,171,171,0) 66%);
  animation:aw-glowpulse 16s ease-in-out infinite;filter:blur(8px);
}
.aw-bg__glow--a{top:-18%;right:-6%}
.aw-bg__glow--b{bottom:-26%;left:-10%;animation-delay:-7s;animation-duration:22s;
  background:radial-gradient(circle,rgba(62,143,144,.24) 0%,rgba(62,143,144,0) 65%)}

/* Parallasse allo scroll (il valore --p arriva dal JS) */
.aw-parallax{transform:translate3d(0,calc(var(--p,0) * 1px),0)}

/* Barra di avanzamento della lettura */
.aw-progress{
  position:absolute;left:0;right:0;bottom:-1px;height:2px;
  background:linear-gradient(90deg,var(--teal-600),var(--teal-300));
  transform-origin:left center;transform:scaleX(var(--sp,0));
  opacity:0;transition:opacity .3s;
}
.aw-header.is-stuck .aw-progress{opacity:1}

/* Titoli che entrano parola per parola */
.aw-split-w{display:inline-block;overflow:hidden;vertical-align:top}
.aw-split-w>i{
  display:inline-block;font-style:inherit;
  transform:translateY(105%);opacity:0;
  transition:transform .72s cubic-bezier(.2,.7,.3,1),opacity .5s ease;
  transition-delay:calc(var(--i,0) * 42ms);
}
.is-in .aw-split-w>i,[data-aw-reveal].is-in .aw-split-w>i{transform:none;opacity:1}

/* Bagliore che segue il puntatore sulle card */
.aw-card,.aw-plan,.aw-project{position:relative;isolation:isolate}
.aw-card::before,.aw-plan::before,.aw-project::before{
  content:'';position:absolute;inset:0;border-radius:inherit;z-index:-1;
  background:radial-gradient(320px circle at var(--mx,50%) var(--my,0%),rgba(85,171,171,.13),transparent 62%);
  opacity:0;transition:opacity .35s ease;
}
.aw-card:hover::before,.aw-plan:hover::before,.aw-project:hover::before{opacity:1}
.aw-section--dark .aw-card::before{background:radial-gradient(320px circle at var(--mx,50%) var(--my,0%),rgba(143,203,203,.16),transparent 62%)}

/* Riflesso che attraversa il bottone primario */
.aw-btn--primary{position:relative;overflow:hidden}
.aw-btn--primary::after{
  content:'';position:absolute;top:0;bottom:0;width:38%;left:-45%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.26),transparent);
  transform:skewX(-18deg);transition:left .65s cubic-bezier(.3,.7,.3,1);
}
.aw-btn--primary:hover::after{left:120%}

/* Inclinazione 3D del mockup con il mouse */
.aw-browser{transform:rotateY(calc(-7deg + var(--ty,0deg))) rotateX(calc(2.5deg + var(--tx,0deg)))}
@media(max-width:1023px){.aw-browser{transform:none}}

/* Orbita in rotazione */
@keyframes aw-spin{to{transform:rotate(360deg)}}
@keyframes aw-spin-rev{to{transform:rotate(-360deg)}}
.aw-orbit__rings{position:absolute;inset:0;animation:aw-spin 120s linear infinite}
.aw-orbit.is-in .aw-node{animation:aw-node-in .6s var(--ease) forwards}

/* Contatore */
.aw-count{font-variant-numeric:tabular-nums}

/* Ingresso della pagina.
   Niente cross-document view transition: in prova poteva restare bloccata a
   metà e lasciare header e titolo invisibili. Un fade fa lo stesso effetto
   senza il rischio di nascondere contenuto. */
@keyframes aw-page-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){
  .aw-hero,.aw-phero{animation:aw-page-in .5s cubic-bezier(.22,.61,.36,1) both}
}

/* Rispetto di prefers-reduced-motion su tutto il nuovo livello */
@media(prefers-reduced-motion:reduce){
  .aw-bg__img,.aw-bg__glow{animation:none!important;transform:none!important}
  .aw-parallax{transform:none!important}
  .aw-split-w>i{transform:none!important;opacity:1!important;transition:none!important}
  .aw-orbit__rings{animation:none!important}
  .aw-btn--primary::after{display:none}
  .aw-browser{transform:none!important}
}
