
/* VEICURE guided request: uses the exact public v6 variables and brand assets. */
.journey-body{background:var(--base);min-height:100vh}
.journey-main{position:relative;min-height:calc(100vh - 168px);background:radial-gradient(ellipse 75% 38% at 80% 4%,#12394365,transparent 75%),var(--base)}
.journey-site-link{border:1px solid #35606a;border-radius:999px;padding:10px 15px;font-size:12px;font-weight:750;color:var(--silver);white-space:nowrap}
.journey-site-link:hover{border-color:var(--mint);color:var(--mint)}
.journey-shell{max-width:850px;margin:auto;padding:43px 27px 58px}
.journey-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}
.journey-count{color:var(--mint);font-size:13px;letter-spacing:.15em;font-weight:800;white-space:nowrap}
.journey-progress-track{height:4px;border:1px solid #2d5760;border-radius:999px;background:#12333d;overflow:hidden;margin:22px 0 9px}
.journey-progress-track span{display:block;width:16.6667%;height:100%;background:linear-gradient(90deg,var(--mint),var(--coral));border-radius:999px;transition:width .22s ease}
.journey-caption{font-size:12px;color:var(--muted);margin-bottom:45px}
.journey-step[hidden]{display:none!important}
.journey-step{min-height:340px;animation:journey-in .2s ease-out}
@keyframes journey-in{from{opacity:.4;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.journey-step .eyebrow{margin-bottom:18px}
.journey-step h1{font-size:clamp(35px,6.4vw,67px);letter-spacing:-.045em;line-height:1.045;max-width:750px;color:var(--white)}
.journey-step h1:focus{outline:none}
.journey-lead{color:var(--muted);font-size:clamp(15px,2vw,18px);max-width:660px;margin:18px 0 29px}
.journey-options{display:grid;gap:14px}
.journey-options.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.journey-option{appearance:none;display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;width:100%;min-height:141px;border:1px solid #35606a;border-radius:20px;background:linear-gradient(145deg,#102d38,#0a1e29);padding:23px;color:var(--white);transition:border-color .2s,box-shadow .2s,transform .2s}
.journey-option:hover{border-color:var(--mint);transform:translateY(-2px)}
.journey-option[aria-pressed="true"]{border-color:var(--mint);background:linear-gradient(145deg,#16434b,#0c2831);box-shadow:0 0 0 2px #5cdee037,0 12px 32px #0003}
.journey-option[aria-pressed="true"]:after{content:"Selezionato ✓";display:block;align-self:flex-end;margin-top:auto;font-size:11px;font-weight:760;letter-spacing:.06em;color:var(--mint)}
.journey-option strong{font-size:18px;line-height:1.2}
.journey-option small{color:var(--muted);font-size:13px;line-height:1.55}
.choice-glyph{font-size:28px;color:var(--mint);height:40px}
.size-initial{display:grid;place-items:center;width:43px;height:43px;background:#18414a;color:var(--mint);border-radius:12px;font-size:25px;font-weight:860}
.journey-option.journey-service{min-height:118px;display:flex;flex-direction:row;align-items:center;gap:19px;padding:13px 17px}
.journey-service img{width:132px;height:93px;object-fit:cover;border-radius:12px;flex-shrink:0}
.journey-service .journey-service-info{display:flex;flex-direction:column;gap:7px;min-width:0}
.journey-option.journey-service .journey-service-price{display:block;align-self:flex-start;font-size:17px;font-weight:800;color:var(--mint);line-height:1.4;margin-top:3px;overflow-wrap:anywhere}
.journey-option.journey-service:focus-visible{outline:3px solid var(--mint);outline-offset:3px}
.journey-option.journey-service[aria-pressed="true"]:after{align-self:center;margin:0 3px 0 auto;white-space:nowrap}
.journey-options.conditions-options .journey-option{min-height:98px;justify-content:center}
.journey-options.conditions-options .journey-option:after{margin-top:0}
.journey-note{color:var(--muted);font-size:12px;line-height:1.65;margin-top:20px}
.journey-note a{color:var(--mint);text-decoration:underline;text-underline-offset:3px}
.journey-field{margin-top:25px}
.journey-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.journey-field label{display:block;color:var(--silver);font-weight:750;font-size:13px;margin-bottom:9px}
.journey-field label span{font-weight:400;color:var(--muted)}
.journey-field select,.journey-field input,.journey-field textarea{display:block;width:100%;min-height:51px;padding:13px 14px;color:var(--silver);background:#0a2430;border:1px solid #416873;border-radius:12px;font:inherit;font-size:16px;line-height:1.5;color-scheme:dark}
.journey-field textarea{min-height:104px;resize:vertical}
.journey-field select:focus-visible,.journey-field input:focus-visible,.journey-field textarea:focus-visible{outline:3px solid #5cdee08c;outline-offset:2px}
.journey-field .journey-note{margin-top:9px}
.journey-summary{padding:24px;border-radius:20px;border:1px solid #416b75;background:linear-gradient(145deg,#102d38,#091e28)}
.journey-summary-label{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:760}
.journey-price{display:block;font-size:clamp(32px,6vw,50px);color:var(--mint);margin:4px 0;line-height:1.17}
.journey-details{margin:18px 0 0;border-top:1px solid #365d65}
.journey-details div{display:flex;align-items:baseline;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid #2b4c54}
.journey-details dt{color:var(--muted);font-size:12px}
.journey-details dd{color:var(--silver);font-size:13px;font-weight:690;text-align:right;margin:0;max-width:66%;overflow-wrap:anywhere}
.journey-wa{display:flex;justify-content:center;margin-top:22px;min-height:55px;align-items:center}
.journey-feedback{font-size:13px;color:#ffd3bb;background:#45251e;border:1px solid var(--coral);border-radius:11px;padding:11px 14px;margin-top:18px}
.journey-feedback[hidden]{display:none}
.journey-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:34px;padding:15px 0;border-top:1px solid #264b55}
.journey-back{border:0;background:none;color:var(--mint);font-weight:800;padding:12px 7px;white-space:nowrap}
/* A real call-to-action for the mobile calendar check, not a back-link lookalike. */

/* Unified date/time preference: one clear, touch-friendly choice on iPhone. */
.journey-daytime{display:grid;gap:19px;border:1px solid #416873;border-radius:19px;background:linear-gradient(145deg,#0c2833,#081d28);padding:22px}
.journey-daytime .journey-field{margin-top:0}
.journey-daytime .journey-field input,.journey-daytime .journey-field select{min-height:58px;font-size:17px;border-color:#5b7e87}
.journey-daytime .journey-field input[type="date"]{appearance:auto;-webkit-appearance:auto;display:block}

.journey-schedule-note{margin:0;padding:13px 15px;border:1px solid #49717b;border-radius:12px;background:#12313b;color:var(--silver);font-size:13px;line-height:1.55}
.journey-schedule-note strong{color:var(--white);font-weight:800}
.journey-summary .journey-schedule-note{margin-top:18px}
.journey-daytime-status{margin-top:0;border-left:3px solid var(--mint);padding:4px 0 4px 13px;font-size:13px}
.journey-alternatives[hidden]{display:none}
.journey-alternatives{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.journey-alt-choice{min-height:44px;border:1px solid #527782;background:#153845;color:var(--silver);font-size:13px;font-weight:700;border-radius:11px;padding:10px 13px;cursor:pointer}
.journey-alt-choice:focus-visible{outline:3px solid var(--mint);outline-offset:2px}
@media(max-width:690px){.journey-daytime{padding:17px;gap:17px;border-radius:16px}}
.journey-availability-check{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin:17px 0 9px;border-radius:13px;border:1px solid var(--mint);background:var(--mint);color:#071b24;font-size:14px;font-weight:800;line-height:1.3;text-align:center;cursor:pointer}
.journey-availability-check:disabled{background:#18333d;color:var(--silver);border-color:#45626c;opacity:.7;cursor:not-allowed}
.journey-availability-check:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
.journey-availability-check[aria-busy="true"]{opacity:.78}

.journey-next{min-width:174px;justify-content:center}
.journey-next[disabled]{opacity:.37;filter:saturate(.6)}
.journey-next[hidden]{display:none}
.journey-exit{display:flex;justify-content:space-between;gap:15px;margin-top:13px;color:var(--muted);font-size:11px}
.journey-exit a:hover{color:var(--mint)}
@media(max-width:690px){
 .journey-body .header-inner{padding:10px 14px;gap:8px;min-width:0}
 .journey-body .brand{flex:0 1 auto;min-width:0;gap:3px}
 .journey-body .wordlock{min-width:0}
 .journey-body .brand-symbol{width:48px;height:40px;flex-shrink:0}
 .journey-body .brand-words{width:108px;max-width:100%}
 .journey-site-link{max-width:104px;white-space:normal;text-align:center;line-height:1.25}
 .journey-shell{padding:29px 18px 30px}
 .journey-caption{margin-bottom:31px}
 .journey-option{padding:17px;border-radius:17px;min-height:136px}
 .journey-option strong{font-size:15px}
 .journey-option small{font-size:11px}
 .journey-service img{width:106px;height:86px}
 .journey-option.journey-service .journey-service-price{font-size:15px}
 .journey-option.journey-service[aria-pressed="true"]:after{font-size:0}
 .journey-option.journey-service[aria-pressed="true"]:after:first-letter{font-size:15px}
 .journey-fields{grid-template-columns:1fr}
 .journey-actions{position:sticky;bottom:0;z-index:10;margin:30px -18px 0;padding:14px 18px calc(14px + env(safe-area-inset-bottom));background:#06131bf5;backdrop-filter:blur(12px);border-top:1px solid #39616a}
 .journey-actions--summary{position:static;background:transparent;backdrop-filter:none;padding-bottom:14px}
 .journey-site-link{font-size:11px;padding:8px 10px}
 .journey-body .brand-symbol{width:60px;height:43px}
 .journey-body .brand-words{width:125px}
}
@media(max-width:390px){
 .journey-options.cols-2{gap:9px}
 .journey-option{padding:14px;min-height:137px}
 .journey-option.journey-service{padding:10px;gap:12px}
 .journey-service img{width:86px;height:78px}
 .journey-option strong{font-size:14px}
 .journey-option small{font-size:11px}
 .journey-next{min-width:145px}
 .journey-exit{flex-direction:column;align-items:flex-start}
}
@media(max-width:345px){
 .journey-options.cols-2{grid-template-columns:1fr}
 .journey-option{min-height:95px}
 .journey-body .brand-words{width:112px}
 .journey-site-link{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 .journey-step{animation:none}
 .journey-progress-track span,.journey-option{transition:none}
}

/* Optional direct-request panel remains hidden unless every server gate is satisfied. */
#direct-booking-mount[hidden]{display:none}
.journey-direct-panel{margin:24px 0;padding:22px 18px;border:1px solid var(--mint);border-radius:17px;background:#102b36}
.journey-direct-panel h2{font-size:1.18rem;margin:0 0 10px;color:#c8fff7}
.journey-direct-panel p{line-height:1.55}
.journey-direct-panel .journey-field{margin:14px 0}
.journey-direct-panel .journey-field input{display:block;width:100%;max-width:100%;min-height:48px;border:1px solid #668d96;border-radius:11px;background:#061928;color:#fff;padding:12px;font:inherit}
.journey-direct-consent{display:flex;align-items:flex-start;gap:10px;line-height:1.5;margin:18px 0;color:#f2f7fc;font-size:.92rem}
.journey-direct-consent input{width:20px;height:20px;flex-shrink:0;margin-top:2px}
.journey-direct-consent a{color:#a9eaff;text-decoration:underline}
.journey-direct-submit{margin-top:14px;width:100%;min-height:52px}
.journey-direct-submit:disabled{opacity:.5;cursor:not-allowed}
.journey-direct-panel input:focus-visible,.journey-direct-submit:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
