/* =========================================================
   CIAO Travels · visa.html — "Captain CIAO's visa desk"
   Every selector is scoped with .p-visa
   ========================================================= */
.p-visa .v-defs{position:absolute;width:0;height:0;overflow:hidden}
.p-visa .vw .icon,.p-visa .vd .icon{width:20px;height:20px}

/* ---------------------------------------------------------
   1 · HERO
   --------------------------------------------------------- */
.p-visa .vh{position:relative;overflow:hidden;background:var(--paper);padding:calc(var(--hdr) + clamp(18px,3vw,44px)) 0 clamp(84px,9vw,128px)}
.p-visa .vh__guilloche{position:absolute;inset:0;pointer-events:none;opacity:.7;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='26' viewBox='0 0 120 26'%3E%3Cpath d='M0 13C15 1 45 1 60 13S105 25 120 13' fill='none' stroke='%23E39800' stroke-opacity='.22' stroke-width='1'/%3E%3Cpath d='M0 13C15 25 45 25 60 13S105 1 120 13' fill='none' stroke='%23E39800' stroke-opacity='.14' stroke-width='1'/%3E%3C/svg%3E");
  background-size:120px 26px;
  -webkit-mask:linear-gradient(100deg,#000 0%,rgba(0,0,0,.55) 40%,transparent 62%);mask:linear-gradient(100deg,#000 0%,rgba(0,0,0,.55) 40%,transparent 62%)}
/* yellow office wall with a stamp-perforated edge */
.p-visa .vh__wall{position:absolute;top:calc(var(--hdr) + 6px);right:0;bottom:0;width:calc(50% - 8px);background:var(--y);overflow:hidden;
  -webkit-mask:radial-gradient(circle 9px at 0 50%,#0000 96%,#000 100%) 0 0/100% 26px repeat-y;mask:radial-gradient(circle 9px at 0 50%,#0000 96%,#000 100%) 0 0/100% 26px repeat-y}
.p-visa .vh__wall::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(11,11,12,.13) 1.4px,transparent 1.7px);background-size:14px 14px;
  -webkit-mask:linear-gradient(200deg,#000,transparent 70%);mask:linear-gradient(200deg,#000,transparent 70%)}
.p-visa .vh__wallword{position:absolute;right:-.06em;bottom:-.16em;font-weight:900;font-size:clamp(9rem,25vw,26rem);line-height:.8;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:2px rgba(11,11,12,.16);user-select:none}
.p-visa .vh__grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:1fr auto auto 1fr;grid-template-areas:". stage" "head stage" "body stage" ". stage";column-gap:clamp(24px,3vw,56px)}
.p-visa .vh__head{grid-area:head;position:relative;padding-top:clamp(8px,2vw,24px)}
.p-visa .vh__body{grid-area:body;position:relative;padding-bottom:clamp(8px,2vw,24px)}
.p-visa .vh__stage{grid-area:stage;align-self:center}
.p-visa .vh__head .phero__crumb{margin-bottom:14px}
/* paper + yellow hero is not a .phero: give it the ink focus ring the shared CSS gives paper heroes */
.p-visa .vh :focus-visible{outline-color:var(--ink)}
.p-visa .vh__title{font-weight:900;text-transform:uppercase;letter-spacing:-.055em;line-height:.84;font-size:clamp(4.2rem,10vw,9.6rem);color:var(--ink)}
.p-visa .vh__l1,.p-visa .vh__l2{display:block}
.p-visa .vh__amp{color:transparent;-webkit-text-stroke:.03em var(--ink);margin-right:-.04em}
.p-visa .vh__eta{display:inline-block;background:var(--ink);color:var(--y);padding:.07em .11em .03em .08em;border-radius:.07em;transform:rotate(-3deg) translateY(.02em);box-shadow:.055em .055em 0 var(--y);margin-left:.02em}
.p-visa .vh__script{display:block;color:var(--ink);font-size:clamp(1.9rem,3vw,2.9rem);line-height:1;transform:rotate(-7deg);margin:.05em 0 0 2.2em}
.p-visa .vh__lead{margin-top:clamp(16px,2vw,26px);color:var(--y-ink);max-width:54ch}
.p-visa .vh__cta{margin-top:28px;gap:14px}
.p-visa .vh__cta .btn--wa .icon{width:22px;height:22px}

/* stage: Captain behind, passport in front (type sandwich with the wall word) */
.p-visa .vh__stage{position:relative;height:clamp(440px,44vw,640px)}
.p-visa .vh__cap{position:absolute;left:-3%;bottom:0;height:90%;width:auto;max-width:none;z-index:1}
.p-visa .vh__ppwrap{--pw:clamp(132px,14vw,205px);position:absolute;right:0;bottom:4%;z-index:3;width:calc(var(--pw) * 2);height:calc(var(--pw) * 1.42)}
.p-visa .vh__ppwrap.tilt{transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
.p-visa .vh__ppwrap .tilt__glare{display:none}

/* ---------- the 3D passport ---------- */
.p-visa .pp{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(24deg) rotateZ(-7deg);font-size:calc(var(--pw) * .043)}
.p-visa .pp__shadow{position:absolute;left:3%;right:1%;bottom:-9%;height:26%;border-radius:50%;background:radial-gradient(closest-side,rgba(74,51,0,.45),transparent);transform:translateZ(-40px);transition:transform 1.4s var(--ease)}
.p-visa .pp__book{position:absolute;inset:0;transform-style:preserve-3d;transition:transform 1.4s cubic-bezier(.6,.04,.22,1)}
.p-visa .pp__half,.p-visa .pp__cover{position:absolute;top:0;left:var(--pw);width:var(--pw);height:100%}
.p-visa .pp__half{background:#151517;border-radius:3px 14px 14px 3px;transform:translateZ(-1px);box-shadow:0 7px 0 #000,0 26px 40px -14px rgba(0,0,0,.55)}
.p-visa .pp__cover{transform-style:preserve-3d;transform-origin:0 50%;transform:rotateY(-179deg);transition:transform 1.5s cubic-bezier(.62,.04,.24,1)}
.p-visa .pp__face{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:3px 14px 14px 3px}
.p-visa .pp__face--inside{transform:rotateY(180deg);border-radius:14px 3px 3px 14px;background:#151517;box-shadow:0 7px 0 #000,0 26px 40px -14px rgba(0,0,0,.55)}
.p-visa .pp__face--front{display:flex;flex-direction:column;align-items:center;justify-content:space-between;text-align:center;padding:2.6em 1.6em 2.2em;color:var(--y);
  background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.07),transparent 55%),repeating-linear-gradient(45deg,rgba(255,255,255,.02) 0 2px,transparent 2px 5px),#141416;
  box-shadow:inset 0 0 0 1px rgba(253,182,28,.18),inset 6px 0 10px -6px rgba(0,0,0,.9),0 7px 0 #000}
.p-visa .pp__ctop{font-weight:900;font-size:1.9em;letter-spacing:.14em;line-height:1.1}
.p-visa .pp__ctop small{display:block;font-size:.36em;letter-spacing:.24em;font-weight:700;opacity:.8;margin-top:.5em}
.p-visa .pp__emblem{width:62%;padding:1.6em 0;border-block:1px solid rgba(253,182,28,.35)}
.p-visa .pp__emblem img,.p-visa .pp__seal img{width:100%;height:auto;max-width:none}
.p-visa .pp__cbot{display:flex;align-items:center;gap:.6em;font-weight:800;font-size:.95em;letter-spacing:.22em}
.p-visa .pp__cbot i{width:1.8em;height:1px;background:currentColor}
.p-visa .pp__chip{width:2.6em;height:1.7em;border:1.5px solid currentColor;border-radius:.3em;position:relative;opacity:.8}
.p-visa .pp__chip::before{content:"";position:absolute;inset:.35em .9em;border:1.5px solid currentColor;border-radius:50%}
/* inner pages */
.p-visa .pp__page{position:absolute;inset:5px 5px 5px 0;border-radius:0 10px 10px 0;overflow:hidden;color:var(--ink);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='14' viewBox='0 0 60 14'%3E%3Cpath d='M0 7C8 1 22 1 30 7S52 13 60 7' fill='none' stroke='%23E39800' stroke-opacity='.18' stroke-width='.8'/%3E%3C/svg%3E") 0 0/60px 14px,radial-gradient(circle at 70% 30%,#FFF6D8,#FBF4E2 70%);
  box-shadow:inset 8px 0 14px -10px rgba(74,51,0,.45),1px 0 0 #E8DCC0,2px 0 0 #FFFAEE,3px 0 0 #E2D4B4}
.p-visa .pp__face--inside .pp__page{inset:5px 0 5px 5px;border-radius:10px 0 0 10px;box-shadow:inset -8px 0 14px -10px rgba(74,51,0,.45),-1px 0 0 #E8DCC0,-2px 0 0 #FFFAEE,-3px 0 0 #E2D4B4}
.p-visa .pp__phead{display:flex;justify-content:space-between;gap:.6em;padding:1.3em 1.5em .7em;font-size:.82em;font-weight:800;letter-spacing:.18em;color:var(--y-ink);border-bottom:1px dashed rgba(74,51,0,.25)}
.p-visa .pp__drow{display:flex;gap:1.2em;padding:1.3em 1.5em 0}
.p-visa .pp__photo{width:7.6em;height:9.6em;flex:none;border-radius:.4em;box-shadow:inset 0 0 0 1px rgba(11,11,12,.18);
  background:radial-gradient(circle at 50% 39%,var(--ink) 0 1.55em,transparent calc(1.55em + .5px)),radial-gradient(52% 30% at 50% 100%,var(--ink) 0 98%,transparent 100%),radial-gradient(rgba(11,11,12,.12) .7px,transparent .9px) 0 0/.5em .5em,var(--y)}
.p-visa .pp__fields{display:grid;gap:.45em;min-width:0}
.p-visa .pp__fields dt{font-size:.62em;letter-spacing:.06em;text-transform:uppercase;color:var(--steel);font-weight:600;white-space:nowrap}
.p-visa .pp__fields dd{font-size:1.06em;font-weight:800;line-height:1.1;letter-spacing:.02em}
.p-visa .pp__sig{position:absolute;left:1.5em;bottom:5.3em;font-family:var(--f-script);font-size:2em;color:#24324d;transform:rotate(-6deg)}
.p-visa .pp__seal{position:absolute;left:5.6em;top:10.4em;width:4.4em;padding:1.05em .5em;border-radius:50%;border:2px solid rgba(227,152,0,.55);opacity:.5;transform:rotate(-14deg)}
.p-visa .pp__mrz{position:absolute;left:0;right:0;bottom:0;padding:.8em 1.1em 1em;font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:.86em;line-height:1.45;letter-spacing:.06em;white-space:nowrap;overflow:hidden;color:#3b3526;background:rgba(255,255,255,.55);border-top:1px solid rgba(74,51,0,.15)}
.p-visa .pp__pno{position:absolute;right:1.2em;bottom:.9em;font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:.8em;letter-spacing:.2em;color:rgba(74,51,0,.5)}
.p-visa .pp__stamp{position:absolute;overflow:visible;font-family:var(--f);opacity:.9;transform:rotate(var(--r));transition:opacity .16s ease,transform .42s var(--ease-back);transition-delay:calc(var(--i) * .3s)}
.p-visa .pp__stamp--1{left:5%;top:13%;width:47%;color:var(--sl-maroon)}
.p-visa .pp__stamp--2{right:3%;top:31%;width:56%;color:var(--sl-green)}
.p-visa .pp__stamp--3{left:4%;top:56%;width:54%;color:var(--ink)}
.p-visa .pp__stamp--4{right:6%;bottom:10%;width:46%;color:var(--sl-orange)}
/* choreography (JS adds .is-open then .is-stamped) */
.js .p-visa .pp:not(.is-open) .pp__cover{transform:rotateY(0deg)}
.js .p-visa .pp:not(.is-open) .pp__book{transform:translateX(calc(var(--pw) * -.5))}
.js .p-visa .pp:not(.is-open) .pp__shadow{transform:translateZ(-40px) translateX(25%) scaleX(.55)}
.js .p-visa .pp:not(.is-stamped) .pp__stamp{opacity:0;transform:scale(1.8) rotate(var(--r));transition-delay:0s}

/* tape */
.p-visa .vtape{position:relative;z-index:6;overflow-x:clip;margin:-50px 0 -58px;padding:24px 0;pointer-events:none}
.p-visa .vtape .marquee{background:var(--y);color:var(--ink);border-block:3px solid var(--ink);padding-block:12px;width:112%;margin-left:-6%;transform:rotate(-2deg);box-shadow:0 14px 30px -18px rgba(0,0,0,.6)}
.p-visa .vtape .marquee__item{font-size:clamp(1.05rem,2vw,1.6rem)}

/* ---------------------------------------------------------
   2 · TI SERVE IL VISTO? (3-step checker; no visible header, sr-only H2: DESIGN v2.14)
   --------------------------------------------------------- */
.p-visa .vw{padding-top:calc(clamp(64px,7vw,110px) + 26px);padding-bottom:clamp(60px,6.5vw,104px)}
.p-visa .vw__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(18px,2.2vw,28px);align-items:start}

/* radar (route screen) */
.p-visa .vw__radar{position:sticky;top:calc(var(--hdr-offset,var(--hdr)) + 14px);transition:top .35s var(--ease);border-radius:var(--r-l);overflow:hidden;border:1px solid rgba(253,182,28,.22);background:radial-gradient(circle at 50% 42%,#221d10,var(--ink-2) 62%)}
.p-visa .vw__board{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line-l)}
.p-visa .vw__boardlbl{display:inline-flex;align-items:center;gap:8px;font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--mist)}
.p-visa .vw__boardlbl .icon{width:16px;height:16px;color:var(--y)}
.p-visa .vw__flap{font-size:1.12rem}
.p-visa .vw__flap.board span{min-width:1.05em}
.p-visa .vw__globe{position:relative;height:clamp(300px,27vw,390px);color:var(--y)}
.p-visa .vw__fb{position:absolute;inset:6% 4%;width:92%;height:88%;opacity:.85;transition:opacity .6s}
.p-visa .vw__fb text{font-family:var(--f)}
.p-visa .vw__radar.is-3d .vw__fb{opacity:0;visibility:hidden}
.p-visa .vw__read{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line-l)}
.p-visa .vw__read>div{padding:12px 16px 13px;border-left:1px solid var(--line-l);min-width:0}
.p-visa .vw__read>div:first-child{border-left:0}
.p-visa .vw__read dt{font-size:.6rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--mist)}
.p-visa .vw__read dd{font-size:.9rem;font-weight:800;color:var(--y);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.p-visa .vw__read dd.is-empty{color:var(--ink-4)}
/* the page's one Captain cameo: round avatar (passport pose, face + passport) beside the live tip */
.p-visa .vw__tip{display:flex;align-items:center;gap:18px;padding:18px 18px 20px;border-top:1px solid var(--line-l)}
.p-visa .vw__av{flex:none;width:68px;--av-x:-50%;--av-y:5%;--av-w:250%}
.p-visa .vw__bubble{flex:1;min-width:0;max-width:none;font-size:.86rem;padding:11px 15px 12px;color:var(--ink);box-shadow:5px 5px 0 var(--y)}
.p-visa .vw__bubble .bubble__who{margin-bottom:2px}
.p-visa .vw__bubble::after{left:-12px;top:50%;bottom:auto;margin-top:-9px;width:18px;height:18px;border:3px solid var(--ink);border-top:0;border-right:0;clip-path:none;transform:rotate(45deg);background:var(--white)}

/* desk (kiosk) */
.p-visa .vw__desk{position:relative;background:var(--ink-2);border:1px solid var(--line-l);border-radius:var(--r-l);padding:clamp(16px,2.4vw,32px)}
.p-visa .vw__gates{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:clamp(22px,2.6vw,32px)}
.p-visa .vw__gate{width:100%;min-height:66px;display:grid;align-content:center;gap:1px;text-align:left;padding:10px 14px;border-radius:14px;border:1.5px solid var(--ink-4);color:var(--white);transition:border-color .2s,background .2s}
.p-visa .vw__gate:not(:disabled):hover{border-color:var(--y)}
.p-visa .vw__gate[aria-current="step"]{background:var(--ink-3);border-color:var(--y);box-shadow:inset 0 -3px 0 var(--y)}
.p-visa .vw__gate:disabled{opacity:.42;cursor:not-allowed}
.p-visa .vw__gnum{font-size:.64rem;font-weight:800;letter-spacing:.18em;color:var(--y)}
.p-visa .vw__glbl{font-weight:700;font-size:.9rem;line-height:1.2}
.p-visa .vw__gval{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mist);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.p-visa .vw__gate.is-done .vw__gval{color:var(--y)}
.p-visa .vw__step{border:0;min-width:0}
.p-visa .vw__q{display:block;font-weight:800;font-size:clamp(1.5rem,2.5vw,2.2rem);line-height:1.05;letter-spacing:-.035em;color:var(--white);padding:0}
.p-visa .vw__qn{display:block;font-size:.72rem;font-weight:800;letter-spacing:.18em;color:var(--y);margin-bottom:10px}
.p-visa .vw__hint{margin:10px 0 24px;font-size:.95rem}
.p-visa .vw__opts{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:14px}
.p-visa .vopt{position:relative;display:flex;flex-direction:column;gap:10px;min-height:186px;padding:20px 18px 18px;text-align:left;border-radius:20px;background:var(--ink-3);border:2px solid var(--ink-4);color:var(--white);transition:transform .3s var(--ease),background .25s,border-color .25s,box-shadow .3s}
.p-visa .vopt:hover{border-color:var(--y);transform:translateY(-3px)}
.p-visa .vopt[aria-checked="true"]{background:var(--y);border-color:var(--y);color:var(--ink);box-shadow:6px 6px 0 var(--paper);transform:translate(-3px,-3px)}
.p-visa .vopt__code{font-weight:900;font-size:clamp(1.7rem,2.5vw,2.3rem);line-height:1;letter-spacing:-.045em;color:var(--y)}
.p-visa .vopt[aria-checked="true"] .vopt__code{color:var(--ink)}
.p-visa .vopt__txt{display:grid;gap:5px;margin-top:auto}
.p-visa .vopt__t{font-weight:800;font-size:1.04rem;line-height:1.2}
.p-visa .vopt__d{font-size:.83rem;line-height:1.4;color:var(--mist)}
.p-visa .vopt__si{font-family:var(--f-si);font-weight:400;font-size:.82rem;color:var(--y)}
.p-visa .vopt[aria-checked="true"] .vopt__d{color:var(--y-ink)}
.p-visa .vopt[aria-checked="true"] .vopt__si{color:var(--ink)}
.p-visa .vopt__tick{position:absolute;top:14px;right:14px;width:30px;height:30px;border-radius:50%;border:2px solid var(--ink-4);display:grid;place-items:center;color:transparent;transition:.25s}
.p-visa .vopt__tick .icon{width:16px;height:16px;stroke-width:3}
.p-visa .vopt[aria-checked="true"] .vopt__tick{background:var(--ink);border-color:var(--ink);color:var(--y)}
.p-visa .vw__nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:26px;padding-top:20px;border-top:1px dashed var(--ink-4)}
.p-visa .vw__count{font-size:.8rem;font-weight:700;color:var(--mist);letter-spacing:.04em}
.p-visa .vw__nav .btn:disabled{opacity:.35;pointer-events:none}
.p-visa .vw__back{color:var(--white)}
@media (prefers-reduced-motion:no-preference){
  .p-visa .vw__panel.is-enter>*{animation:vwIn .55s var(--ease) both}
  .p-visa .vw__panel.is-enter .vcard__stamp{animation:vwStamp .5s var(--ease-back) .35s both}
}
@keyframes vwIn{from{opacity:0;transform:translateX(26px)}}
@keyframes vwStamp{from{opacity:0;transform:scale(1.9) rotate(-12deg)}to{opacity:1;transform:rotate(-12deg)}}
.p-visa .vw__disc{display:flex;gap:12px;align-items:flex-start;margin-top:28px;font-size:.88rem;color:var(--mist);max-width:92ch}
.p-visa .vw__disc .icon{color:var(--y);flex:none;margin-top:2px}
.p-visa .vw__disc b{color:var(--white)}
.p-visa .vw__disc a,.p-visa .vf a:not(.vf__olink){color:var(--y);text-decoration:underline;text-underline-offset:3px}

/* ---------- visa card (result) ---------- */
.p-visa .vcard{position:relative;background:var(--paper);color:var(--ink);border-radius:24px;overflow:hidden;box-shadow:0 0 0 2px var(--y),0 34px 80px -28px rgba(253,182,28,.5)}
.p-visa .vcard :focus-visible{outline-color:var(--ink)}
.p-visa .vcard p{color:var(--y-ink)}
.p-visa .vcard__band{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:12px clamp(16px,2.4vw,26px);background:var(--y);border-bottom:2.5px solid var(--ink);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.p-visa .vcard__band b{display:inline-flex;align-items:center;gap:8px}
.p-visa .vcard__band b .icon{width:16px;height:16px}
.p-visa .vcard__body{padding:clamp(18px,2.6vw,32px);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='26' viewBox='0 0 120 26'%3E%3Cpath d='M0 13C15 1 45 1 60 13S105 25 120 13' fill='none' stroke='%23E39800' stroke-opacity='.12' stroke-width='1'/%3E%3C/svg%3E") 0 0/120px 26px}
.p-visa .vcard__vrow{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:6px 0 4px}
.p-visa .vcard__vrow .vcard__verdict{margin:8px 0}
.p-visa .vcard__case{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.78rem;font-weight:700;color:var(--steel)}
.p-visa .vcard__case span{padding:4px 10px;border-radius:999px;border:1.5px solid var(--ink);color:var(--ink);background:var(--white)}
.p-visa .vcard__case .icon{width:14px;height:14px}
.p-visa .vcard__verdict{font-weight:900;text-transform:uppercase;letter-spacing:-.05em;line-height:.88;font-size:clamp(2.3rem,4.4vw,3.9rem);margin:14px 0 12px;outline:none}
.p-visa .vcard__sum{max-width:58ch;font-size:.98rem}
.p-visa .vcard__stamp{flex:none;width:clamp(104px,10vw,138px);height:auto;color:var(--sl-maroon);transform:rotate(-12deg);margin:4px 4px 0 0}
.p-visa .vcard__stamp text{font-family:var(--f)}
.p-visa .vcard__cols{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:18px;margin-top:24px}
.p-visa .vcard__h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:6px}
.p-visa .vcard__h output{font-size:.8rem;letter-spacing:.04em;color:var(--steel)}
.p-visa .vcard__ciao{background:var(--ink);color:var(--white);border-radius:18px;padding:18px 18px 16px}
.p-visa .vcard__ciao .vcard__h{color:var(--y)}
.p-visa .vcard__ciao ul{list-style:none;display:grid;gap:10px;margin-top:10px}
.p-visa .vcard__ciao li{display:flex;gap:10px;font-size:.88rem;line-height:1.4;font-weight:500}
.p-visa .vcard__ciao li .icon{width:18px;height:18px;color:var(--y);flex:none;margin-top:1px;stroke-width:3}
.p-visa .vcard__time{margin-top:14px;border:2.5px solid var(--ink);border-radius:16px;padding:14px 16px;background:var(--white);box-shadow:4px 4px 0 var(--ink)}
.p-visa .vcard__time b{display:block;font-weight:900;font-size:1.35rem;letter-spacing:-.03em;text-transform:uppercase;line-height:1.05;margin:4px 0 6px}
.p-visa .vcard__time p{font-size:.84rem;line-height:1.45}
.p-visa .vcard__disc{display:flex;gap:10px;align-items:flex-start;margin-top:22px;padding:13px 16px;border-radius:14px;background:var(--y-100);font-size:.84rem;color:var(--y-ink);line-height:1.5}
.p-visa .vcard__disc .icon{flex:none;width:18px;height:18px;margin-top:1px}
.p-visa .vcard__disc a{font-weight:700;text-decoration:underline;text-underline-offset:3px;color:var(--ink)}
.p-visa .vcard__acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.p-visa .vcard__acts .btn--ghost{color:var(--ink)}
.p-visa .vcard__mrz{padding:12px clamp(16px,2.4vw,26px) 14px;border-top:2px dashed rgba(11,11,12,.18);font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:clamp(.6rem,1.05vw,.8rem);line-height:1.6;letter-spacing:.16em;color:var(--steel);white-space:nowrap;overflow:hidden}

/* shared checkbox row (visa card + folder) */
.p-visa .vchk{display:flex;gap:12px;align-items:flex-start;padding:11px 2px;border-bottom:1px dashed rgba(11,11,12,.16);cursor:pointer;font-size:.92rem;font-weight:500;line-height:1.4;color:var(--ink)}
.p-visa .vchk:last-child{border-bottom:0}
.p-visa .vchk input{appearance:none;-webkit-appearance:none;width:24px;height:24px;flex:none;margin-top:-1px;border:2.5px solid var(--ink);border-radius:7px;background:var(--white);cursor:pointer;transition:background .2s,transform .2s var(--ease-back)}
.p-visa .vchk input:checked{background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FDB61C' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/16px no-repeat;transform:rotate(-6deg)}
.p-visa .vchk input:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.p-visa .vchk input:checked+span{color:var(--steel);text-decoration:line-through;text-decoration-color:var(--y-600);text-decoration-thickness:2px}
.p-visa .vchk small{display:block;font-size:.76rem;color:var(--steel);text-decoration:none}

/* ---------------------------------------------------------
   3 · PROCESS (opener: editorial side label)
   --------------------------------------------------------- */
/* the one cape on the page: a hard ink diagonal from the tool into the yellow process */
.p-visa .vt-cape{color:var(--ink);background:var(--y)}
.p-visa .vt{overflow:hidden;overflow:clip;padding-top:clamp(48px,5vw,84px)}
.p-visa .vt__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:18px 48px}
.p-visa .vt__lead{max-width:30ch;font-weight:700;font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.45;color:var(--ink);padding-bottom:6px}
.p-visa .vt__route{--p:0;position:relative;margin-top:clamp(36px,4vw,60px)}
.p-visa .vt__line{position:absolute;left:12px;right:12px;top:24px;height:4px;background:repeating-linear-gradient(90deg,var(--ink) 0 14px,transparent 14px 26px)}
.p-visa .vt__line::after{content:"";position:absolute;inset:0;background:var(--ink);transform-origin:0 50%;transform:scaleX(var(--p))}
.p-visa .vt__plane{position:absolute;z-index:2;top:50%;left:calc(var(--p) * 100%);width:50px;height:50px;margin:-25px 0 0 -25px;border-radius:50%;background:var(--ink);color:var(--y);display:grid;place-items:center;box-shadow:0 0 0 5px var(--y)}
.p-visa .vt__plane .icon{width:24px;height:24px;transform:rotate(45deg)}
.p-visa .vt__steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,22px);padding-top:76px}
.p-visa .vt__step{position:relative;display:flex;flex-direction:column;background:var(--paper);border:2.5px solid var(--ink);border-radius:22px;box-shadow:var(--sh-hard);padding:22px 20px 20px}
.p-visa .vt__step::before{content:"";position:absolute;top:-63px;left:22px;width:24px;height:24px;border-radius:50%;border:3px solid var(--ink);background:var(--y);transition:background .3s,box-shadow .3s}
.p-visa .vt__step.is-lit::before{background:var(--ink);box-shadow:0 0 0 6px rgba(11,11,12,.16)}
.p-visa .vt__top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
/* process numbers: ghost fill while waiting, solid ink + yellow offset when the plane reaches the stop
   (outline + fill on Poppins 900 showed overlapping-contour seams) */
.p-visa .vt__n{font-weight:900;font-size:clamp(2.8rem,4vw,3.6rem);line-height:.8;letter-spacing:-.06em;color:rgba(11,11,12,.14);transition:color .35s,text-shadow .35s}
.p-visa .vt__step.is-lit .vt__n{color:var(--ink);text-shadow:3px 3px 0 var(--y)}
.p-visa .vt__step h3{margin:18px 0 8px}
.p-visa .vt__step p{font-size:.94rem;line-height:1.55}
.p-visa .vt__time{display:inline-flex;align-self:flex-start;align-items:center;gap:7px;margin-top:auto;padding:6px 12px;border-radius:999px;border:2px solid var(--ink);font-size:.76rem;font-weight:800;background:var(--y)}
.p-visa .vt__step p+.vt__time{margin-top:16px}
.p-visa .vt__time .icon{width:15px;height:15px}

/* ---------------------------------------------------------
   4 · LA CARTELLINA (opener: ink caption box; no office photo, audit #3)
   --------------------------------------------------------- */
.p-visa .vd__grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);grid-template-areas:"aside op" "aside folder";grid-template-rows:auto 1fr;gap:0 clamp(32px,5vw,84px);align-items:start}
.p-visa .vd__op{grid-area:op;margin-bottom:clamp(26px,3vw,44px)}
.p-visa .vd__folderwrap{grid-area:folder}
/* the short column (counter + actions) rides along while the long folder scrolls by */
.p-visa .vd__aside{grid-area:aside;position:sticky;top:calc(var(--hdr-offset,var(--hdr)) + 28px);transition:top .35s var(--ease);padding-top:14px}
.p-visa .vd__meter{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:8px 14px}
.p-visa .vd__count{font-weight:900;font-size:clamp(3.4rem,5.4vw,5rem);line-height:.82;letter-spacing:-.05em}
.p-visa .vd__mlbl{font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding-bottom:6px}
.p-visa .vd__bar{grid-column:1/-1;height:14px;border-radius:999px;border:2.5px solid var(--ink);background:var(--white);overflow:hidden}
.p-visa .vd__bar i{display:block;height:100%;width:0;background:repeating-linear-gradient(-45deg,var(--y) 0 8px,var(--y-300) 8px 16px);border-right:2.5px solid var(--ink);transition:width .5s var(--ease)}
.p-visa .vd__note{margin-top:18px;font-size:.92rem;line-height:1.5;color:var(--steel);max-width:34ch}
.p-visa .vd__case{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:20px;padding:12px 14px;border:2px dashed var(--ink);border-radius:14px;font-size:.86rem;font-weight:600;line-height:1.45}
.p-visa .vd__case b{font-weight:800}
.p-visa .vd__case small{font-weight:600;color:var(--steel)}
.p-visa .vd__case button{font-weight:800;text-decoration:underline;text-underline-offset:3px;min-height:44px;text-align:left}
.p-visa .vd__acts{margin-top:22px}
.p-visa .vd__folderwrap{position:relative;padding-top:38px}
.p-visa .vd__folder{position:relative;background:#FFFDF7;border:2.5px solid var(--ink);border-radius:6px 26px 26px 26px;box-shadow:10px 10px 0 var(--y),10px 10px 0 2.5px var(--ink);padding:clamp(22px,3vw,40px)}
.p-visa .vd__tab{position:absolute;left:-2.5px;top:-38px;height:38px;display:flex;align-items:center;gap:8px;padding:0 20px;background:var(--ink);color:var(--y);border-radius:14px 14px 0 0;font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.p-visa .vd__tab .icon{width:16px;height:16px}
.p-visa .vd__group+.vd__group{margin-top:26px}
.p-visa .vd__gh{display:flex;align-items:center;gap:10px;margin-bottom:4px}
.p-visa .vd__gl{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--ink);color:var(--y);font-weight:900;font-size:.85rem}
.p-visa .vd__gh h3{font-size:.76rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.p-visa .vd__sig{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:28px;padding-top:18px;border-top:2px solid var(--ink);font-size:.78rem;font-weight:600;color:var(--steel)}
.p-visa .vd__sig b{color:var(--ink)}
.p-visa .vd__printhead{display:none}
/* "ready for the gate" seal (stamps = trust, allowed on visa): ghosted until every box is ticked */
.p-visa .vd__ready{position:absolute;top:-22px;right:26px;z-index:2;display:grid;place-items:center;text-align:center;width:118px;height:118px;border-radius:50%;border:3.5px double var(--sl-green);color:var(--sl-green);font-weight:900;font-size:.72rem;line-height:1.15;letter-spacing:.12em;text-transform:uppercase;background:rgba(255,253,247,.88);transform:rotate(-12deg) scale(.9);opacity:.16;transition:opacity .3s,transform .45s var(--ease-back)}
.p-visa .vd__ready b{display:block;font-size:1.5rem;letter-spacing:-.02em;line-height:1}
.p-visa .vd__folder.is-complete .vd__ready{opacity:.95;transform:rotate(-12deg) scale(1)}

/* ---------------------------------------------------------
   5 · FAQ (no header: the official source and the questions start straight away)
   --------------------------------------------------------- */
.p-visa .vf__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,96px);align-items:start}
.p-visa .vf__side{position:sticky;top:calc(var(--hdr-offset,var(--hdr)) + 24px);transition:top .35s var(--ease)}
.p-visa .vf__olbl{font-size:.7rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--mist)}
.p-visa .vf__olink{display:inline-flex;align-items:center;gap:.2em;min-height:44px;margin:8px 0 14px;font-weight:900;font-size:clamp(2rem,4.1vw,3.6rem);line-height:1;letter-spacing:-.045em;color:var(--y);overflow-wrap:anywhere}
.p-visa .vf__olink .icon{width:.62em;height:.62em;flex:none;stroke-width:2.6}
.p-visa .vf__olink:hover span{text-decoration:underline;text-decoration-thickness:.06em;text-underline-offset:.1em}
.p-visa .vf__onote{max-width:40ch;font-size:.98rem;line-height:1.55}
.p-visa .vf__more{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:22px;font-weight:800;color:var(--white)}
.p-visa .vf__more span:first-child{background:linear-gradient(var(--y),var(--y)) 0 100%/100% 2px no-repeat;padding-bottom:2px}
.p-visa .vf__more .icon{width:18px;height:18px;color:var(--y);transition:transform .25s var(--ease)}
.p-visa .vf__more:hover .icon{transform:translateX(4px)}
.p-visa .vf__acc summary{color:var(--white)}
.p-visa .vf__acc summary:hover{color:var(--y)}
.p-visa .vf a:not(.vf__olink):not(.vf__more){color:var(--y);text-decoration:underline;text-underline-offset:3px}

/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */
@media (max-width:1100px){
  .p-visa .vw__grid{grid-template-columns:minmax(0,1fr)}
  .p-visa .vw__radar{position:relative;top:0;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);grid-template-areas:"board board" "globe read" "globe tip"}
  .p-visa .vw__board{grid-area:board}
  .p-visa .vw__globe{grid-area:globe;height:300px}
  .p-visa .vw__read{grid-area:read;grid-template-columns:1fr;border-top:0;border-left:1px solid var(--line-l);align-content:start}
  .p-visa .vw__read>div{border-left:0;border-bottom:1px solid var(--line-l)}
  .p-visa .vw__tip{grid-area:tip;border-left:1px solid var(--line-l);border-top:0}
  .p-visa .vt__steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}
  .p-visa .vt__line{display:none}
  .p-visa .vt__step::before{display:none}
  .p-visa .vt__steps{padding-top:0}
}
@media (max-width:900px){
  .p-visa .vh__grid{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;grid-template-areas:"head" "stage" "body"}
  .p-visa .vh__wall{display:none}
  .p-visa .vh__guilloche{-webkit-mask:none;mask:none;opacity:.5}
  .p-visa .vh__stage{height:clamp(420px,92vw,600px);margin:14px -24px 26px}
  .p-visa .vh__stage::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(rgba(11,11,12,.12) 1.4px,transparent 1.7px) 0 0/14px 14px,var(--y);
    -webkit-mask:radial-gradient(circle 9px at 50% 0,#0000 96%,#000 100%) top/26px 51% repeat-x,radial-gradient(circle 9px at 50% 100%,#0000 96%,#000 100%) bottom/26px 51% repeat-x;
    mask:radial-gradient(circle 9px at 50% 0,#0000 96%,#000 100%) top/26px 51% repeat-x,radial-gradient(circle 9px at 50% 100%,#0000 96%,#000 100%) bottom/26px 51% repeat-x}
  .p-visa .vh__cap{left:0;height:88%;bottom:3%}
  .p-visa .vh__ppwrap{right:24px;bottom:5%}
  .p-visa .vh__ppwrap{--pw:clamp(128px,26vw,190px)}
  .p-visa .vd__grid,.p-visa .vf__grid{grid-template-columns:minmax(0,1fr)}
  .p-visa .vd__grid{grid-template-areas:"op" "aside" "folder";grid-template-rows:auto;row-gap:clamp(28px,5vw,40px)}
  .p-visa .vd__op{margin-bottom:0}
  .p-visa .vf__side,.p-visa .vd__aside{position:relative;top:0}
  .p-visa .vd__aside{padding-top:0}
}
@media (max-width:720px){
  .p-visa .vw__radar{display:block}
  .p-visa .vw__globe{height:250px}
  .p-visa .vw__read{grid-template-columns:repeat(3,minmax(0,1fr));border-left:0;border-top:1px solid var(--line-l)}
  .p-visa .vw__read>div{border-bottom:0;border-left:1px solid var(--line-l);padding:10px 12px}
  .p-visa .vw__read>div:first-child{border-left:0}
  .p-visa .vw__tip{border-left:0;border-top:1px solid var(--line-l);padding:12px 14px 16px}
  .p-visa .vw__av{width:58px}
  .p-visa .vw__opts{grid-template-columns:minmax(0,1fr)}
  .p-visa .vopt{flex-direction:row;align-items:center;min-height:0;gap:14px;padding:16px 54px 16px 16px}
  .p-visa .vopt__code{flex:none;font-size:1.45rem}
  .p-visa .vopt__txt{margin-top:0}
  .p-visa .vopt__tick{top:50%;margin-top:-15px}
  .p-visa .vcard__stamp{width:84px;margin:0 -4px 0 0}
  .p-visa .vcard__cols{grid-template-columns:minmax(0,1fr)}
  .p-visa .vt__route{padding-left:46px}
  .p-visa .vt__line{display:block;left:20px;right:auto;top:8px;bottom:8px;width:4px;height:auto;background:repeating-linear-gradient(180deg,var(--ink) 0 14px,transparent 14px 26px)}
  .p-visa .vt__line::after{transform-origin:50% 0;transform:scaleY(var(--p))}
  .p-visa .vt__plane{left:50%;top:calc(var(--p) * 100%);width:42px;height:42px;margin:-21px 0 0 -21px}
  .p-visa .vt__plane .icon{transform:rotate(135deg);width:20px;height:20px}
  .p-visa .vt__steps{grid-template-columns:minmax(0,1fr);gap:18px}
  .p-visa .vt__step::before{display:block;top:22px;left:-35px}
  .p-visa .vt__step{padding:20px 18px 18px}
}
@media (max-width:640px){
  .p-visa .vh__title{font-size:clamp(3.9rem,19vw,5.6rem)}
  .p-visa .vh__script{margin-left:1.4em}
  .p-visa .vh__cta .btn{flex:1 1 auto}
  .p-visa .vh__stage{margin-inline:-16px;height:clamp(400px,112vw,470px)}
  .p-visa .vh__cap{left:-4%;height:84%}
  .p-visa .vh__ppwrap{right:12px;bottom:4%}
  .p-visa .vopt__code{font-size:1.3rem}
  .p-visa .vtape{margin:-40px 0 -50px}
  .p-visa .vw__gates{gap:6px}
  .p-visa .vw__gate{padding:8px 10px;min-height:60px}
  .p-visa .vw__glbl{font-size:.78rem}
  .p-visa .vw__gval{font-size:.64rem}
  .p-visa .vw__nav{flex-wrap:wrap}
  .p-visa .vw__count{order:-1;width:100%}
  .p-visa .vcard__acts .btn{flex:1 1 auto}
  .p-visa .vcard__acts .btn--wa{flex-basis:100%}
  /* long verdicts ("Lo verifichiamo noi", "Sponsored visa") pushed the stamp out of the card:
     the verdict takes the full width and the stamp lands on the summary, text wrapping around it */
  .p-visa .vcard__vrow{display:block;margin:0}
  .p-visa .vcard__vrow .vcard__verdict{margin:14px 0 10px;font-size:clamp(1.9rem,9.4vw,2.3rem)}
  .p-visa .vcard__stamp{float:right;width:82px;margin:0 -2px 8px 12px}
  .p-visa .vcard__cols{clear:both}
  .p-visa .vd__folder{box-shadow:6px 6px 0 var(--y),6px 6px 0 2.5px var(--ink)}
}

/* ---------------------------------------------------------
   Reduced motion
   --------------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  .p-visa .pp__book,.p-visa .pp__cover,.p-visa .pp__stamp,.p-visa .pp__shadow,.p-visa .vd__bar i{transition:none!important}
}

/* ---------------------------------------------------------
   Print: only the document folder
   --------------------------------------------------------- */
@media print{
  @page{margin:14mm}
  body.p-visa{background:#fff!important}
  body.p-visa::after{display:none!important}
  .p-visa .hdr,.p-visa .mnav,.p-visa .ftr,.p-visa .dock,.p-visa .skip,.p-visa .toast,.p-visa .cur,.p-visa .wipe,.p-visa .loader,.p-visa .cape,.p-visa .vtape,.p-visa main>section:not(#docs){display:none!important}
  .p-visa #docs{padding:0!important;background:#fff!important}
  .p-visa .vd__grid{display:block}
  .p-visa .vd__aside,.p-visa .vd__op{display:none!important}
  .p-visa .vd__folderwrap{padding-top:0}
  .p-visa .vd__printhead{display:block;margin-bottom:18px;padding-bottom:12px;border-bottom:2px solid #000;font-size:11pt}
  .p-visa .vd__printhead .vd__ph1{margin:0;color:#000;font-size:20pt;font-weight:900;text-transform:uppercase;letter-spacing:-.02em;line-height:1.1}
  .p-visa .vd__printhead p{margin-top:4pt;color:#333}
  .p-visa .vd__folder{box-shadow:none!important;border:1.5px solid #000;border-radius:10px;padding:18px 22px}
  .p-visa .vd__tab{display:none}
  .p-visa .vchk{break-inside:avoid;font-size:11pt}
  .p-visa .vchk input,.p-visa .vd__gl{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .p-visa .reveal{opacity:1!important;transform:none!important}
}


/* ---------- polish ---------- */
.p-visa .vh__script{margin-bottom:.35em}
@media (max-width:640px){.p-visa .vd__ready{width:96px;height:96px;right:12px;top:-30px;font-size:.6rem}.p-visa .vd__ready b{font-size:1.2rem}}

.p-visa .vh__lead{margin-top:34px}
@media (max-width:900px){.p-visa .vh__lead{margin-top:0}}

/* split-flap: tiles were ink-2 on an ink-2 screen, i.e. invisible */
.p-visa .vw__flap.board span{background:var(--ink-3);box-shadow:inset 0 0 0 1px rgba(253,182,28,.16),inset 0 -1px 0 rgba(255,255,255,.05)}

/* disabled wizard buttons: no semi-transparent yellow (turns olive on ink) */
.p-visa .vw__nav .btn:disabled{opacity:1;--bg:transparent;--fg:rgba(255,255,255,.34);color:rgba(255,255,255,.34);box-shadow:inset 0 0 0 2px rgba(255,255,255,.12);cursor:not-allowed}

/* the visa card has its own disclaimer: don't repeat it right under it */
.p-visa .vw.is-done .vw__disc{display:none}

@media (max-width:1100px){
  /* single column (tablets + phones): the questions come first, the route radar answers underneath */
  .p-visa .vw__desk{order:-1}
}
@media (max-width:640px){
  .p-visa .vh__eyex{display:none}
  .p-visa .vh__cta{padding-right:5px}
}
/* inline links in copy: bigger touch area, same line box */
.p-visa .vw__disc a,.p-visa .vcard__disc a,.p-visa .vf .acc__body a{padding-block:12px}
/* stacked hero (≤900): the rotated "senza pensieri" script must sit above the yellow band, not under it */
@media (max-width:900px){
  .p-visa .vh__head{z-index:5}
  .p-visa .vh__stage{margin-top:30px}
}

/* wizard tiles: a plain hairline under the big code (no ticket perforation or notches: stubs = bookable tours only, A3) */
.p-visa .vopt__code{display:block;margin:0 -18px;padding:0 18px 14px;border-bottom:1px solid var(--ink-4)}
.p-visa .vopt[aria-checked="true"] .vopt__code{border-bottom-color:rgba(11,11,12,.22)}
@media (max-width:720px){
  .p-visa .vopt__code{align-self:stretch;display:flex;align-items:center;width:5.2rem;margin:-16px 0;padding:0 12px 0 0;border-bottom:0;border-right:1px solid var(--ink-4)}
  .p-visa .vopt[aria-checked="true"] .vopt__code{border-right-color:rgba(11,11,12,.22)}
}
@media (max-width:640px){.p-visa .vopt__code{width:4.9rem}}
@media print{
  .p-visa .vchk input{outline:none!important}
  .p-visa .vd__folder:not(.is-complete) .vd__ready{display:none}
}
@media (max-width:400px){
  /* "Destinazione" must fit the narrow gate tile at 360px */
  .p-visa .vw__gate{padding-inline:9px}
  .p-visa .vw__glbl{font-size:.74rem}
}
/* focus rings: ink wherever the shared yellow ring would sit on yellow or paper */
.p-visa .hdr:not(.is-solid) .hdr__in :focus-visible,.p-visa .skip:focus-visible{outline-color:var(--ink)}
.p-visa .hdr:not(.is-solid) .mega :focus-visible{outline-color:var(--y)}
