@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@300;400;500&display=swap');
:root{
  --i2l-navy:#1B2A6B;--i2l-navy-dark:#111B4A;--i2l-navy-light:#2D3F8F;
  --i2l-gold:#F4C430;--i2l-gold-dark:#C99E1A;
  --i2l-white:#FFFFFF;--i2l-off:#F8F7F2;
  --i2l-g200:#E0DED6;--i2l-g400:#9B9890;--i2l-g600:#5C5A55;--i2l-g800:#2C2B28;
  --i2l-success:#1D9E75;
  --i2l-r:12px;--i2l-rl:20px;
  --i2l-shadow:0 12px 60px rgba(27,42,107,.17);
  --i2l-fd:'Cormorant Garamond',serif;
  --i2l-fb:'DM Sans',sans-serif;
}
.i2l-booking-wrap{font-family:var(--i2l-fb);max-width:680px;margin:2rem auto 4rem;padding:0 1rem;}
.i2l-hidden{display:none!important;}

/* Logo */
.i2l-logo-wrap{text-align:center;margin-bottom:2rem;padding-top:1rem;}
.i2l-logo-svg{width:80px;margin-bottom:.85rem;}
.i2l-logo-name{font-family:var(--i2l-fd);font-size:2rem;font-weight:600;color:var(--i2l-navy);line-height:1;}
.i2l-logo-tagline{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--i2l-gold-dark);margin-top:.35rem;}

/* Progress */
.i2l-progress{display:flex;align-items:center;margin-bottom:2rem;padding:0 .5rem;}
.i2l-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:500;flex-shrink:0;background:#F1F0EB;color:var(--i2l-g400);border:1.5px solid var(--i2l-g200);transition:all .35s;position:relative;z-index:1;}
.i2l-dot.active{background:var(--i2l-gold);color:var(--i2l-navy-dark);border-color:var(--i2l-gold);}
.i2l-dot.done{background:var(--i2l-navy);color:#fff;border-color:var(--i2l-navy);}
.i2l-dot.done span{display:none;}.i2l-dot.done::after{content:'✓';font-size:.8rem;}
.i2l-line{height:1.5px;flex:1;background:var(--i2l-g200);transition:background .35s;}
.i2l-line.done{background:var(--i2l-navy);}

/* Card */
.i2l-card{background:#fff;border-radius:var(--i2l-rl);box-shadow:var(--i2l-shadow);padding:2.5rem;animation:i2lIn .4s ease both;}
@keyframes i2lIn{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);}}
.i2l-step-header{margin-bottom:1.75rem;}
.i2l-step-label{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--i2l-gold-dark);font-weight:500;margin-bottom:.4rem;}
.i2l-step-title{font-family:var(--i2l-fd);font-size:1.9rem;font-weight:600;color:var(--i2l-navy);line-height:1.15;margin:0 0 .4rem;}
.i2l-step-sub{font-size:.88rem;color:var(--i2l-g600);line-height:1.5;margin:0;}

/* Service cards */
.i2l-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
@media(max-width:480px){.i2l-service-grid{grid-template-columns:1fr;}}
.i2l-service-card{border:1.5px solid var(--i2l-g200);border-radius:var(--i2l-r);padding:1.25rem 1rem;cursor:pointer;transition:all .22s;background:var(--i2l-off);user-select:none;}
.i2l-service-card:hover{border-color:var(--i2l-navy);background:#fff;}
.i2l-service-card.selected{border-color:var(--i2l-navy);background:var(--i2l-navy);}
.i2l-service-card.selected .i2l-svc-name{color:#fff;}
.i2l-service-card.selected .i2l-svc-price{color:var(--i2l-gold);}
.i2l-service-card.selected .i2l-svc-icon{background:rgba(255,255,255,.12);color:var(--i2l-gold);}
.i2l-svc-icon{width:38px;height:38px;border-radius:8px;background:rgba(27,42,107,.08);display:flex;align-items:center;justify-content:center;font-size:1.1rem;margin-bottom:.8rem;color:var(--i2l-navy);transition:all .22s;}
.i2l-svc-name{font-size:.9rem;font-weight:500;color:var(--i2l-navy);line-height:1.3;margin-bottom:.35rem;transition:color .22s;}
.i2l-svc-price{font-size:.8rem;color:var(--i2l-gold-dark);font-weight:500;transition:color .22s;}

/* Mode */
.i2l-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.i2l-mode-card{border:1.5px solid var(--i2l-g200);border-radius:var(--i2l-r);padding:2rem 1rem;text-align:center;cursor:pointer;transition:all .22s;background:var(--i2l-off);}
.i2l-mode-card:hover{border-color:var(--i2l-navy);}
.i2l-mode-card.selected{border-color:var(--i2l-navy);background:var(--i2l-navy);}
.i2l-mode-card.selected .i2l-mode-icon,.i2l-mode-card.selected .i2l-mode-name{color:var(--i2l-gold);}
.i2l-mode-card.selected .i2l-mode-desc{color:rgba(255,255,255,.6);}
.i2l-mode-icon{font-size:2rem;margin-bottom:.75rem;color:var(--i2l-navy);transition:color .22s;}
.i2l-mode-name{font-weight:500;font-size:1rem;color:var(--i2l-navy);transition:color .22s;}
.i2l-mode-desc{font-size:.78rem;color:var(--i2l-g600);margin-top:.3rem;transition:color .22s;}

/* Inputs */
.i2l-field-group{margin-bottom:1.25rem;}
.i2l-label{display:block;font-size:.78rem;font-weight:500;color:var(--i2l-g600);margin-bottom:.45rem;letter-spacing:.04em;}
.i2l-input{width:100%;border:1.5px solid var(--i2l-g200)!important;border-radius:var(--i2l-r)!important;padding:.75rem 1rem!important;font-family:var(--i2l-fb)!important;font-size:.95rem!important;color:var(--i2l-g800)!important;background:var(--i2l-off)!important;outline:none!important;box-shadow:none!important;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;}
.i2l-input:focus{border-color:var(--i2l-navy)!important;box-shadow:0 0 0 3px rgba(27,42,107,.08)!important;background:#fff!important;}

/* Slots */
.i2l-slot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:.5rem;}
@media(max-width:400px){.i2l-slot-grid{grid-template-columns:1fr;}}
.i2l-slot{border:1.5px solid var(--i2l-g200);border-radius:var(--i2l-r);padding:.9rem 1rem;cursor:pointer;transition:all .22s;background:var(--i2l-off);display:flex;align-items:center;gap:.75rem;user-select:none;}
.i2l-slot:hover{border-color:var(--i2l-navy);background:#fff;}
.i2l-slot.selected{border-color:var(--i2l-navy);background:var(--i2l-navy);}
.i2l-slot.selected .i2l-slot-time{color:#fff;}
.i2l-slot.selected .i2l-slot-ico{color:var(--i2l-gold);}
.i2l-slot-ico{font-size:1.15rem;color:var(--i2l-navy-light);transition:color .22s;flex-shrink:0;}
.i2l-slot-time{font-size:.92rem;font-weight:500;color:var(--i2l-navy);transition:color .22s;}

/* Summary */
.i2l-summary-box{background:var(--i2l-off);border:1.5px solid var(--i2l-g200);border-radius:var(--i2l-r);padding:1.25rem;margin-bottom:1.25rem;}
.i2l-sum-row{display:flex;gap:.6rem;margin-bottom:.55rem;font-size:.88rem;}
.i2l-sum-lbl{color:var(--i2l-g600);min-width:65px;font-size:.78rem;}
.i2l-sum-val{color:var(--i2l-navy);font-weight:500;}
.i2l-sum-divider{height:1px;background:var(--i2l-g200);margin:.75rem 0;}
.i2l-ai-desc{font-size:.87rem;color:var(--i2l-g600);line-height:1.65;font-style:italic;margin:0;}
.i2l-ai-desc.loading{color:var(--i2l-g400);}
.i2l-price-bar{display:flex;justify-content:space-between;align-items:baseline;border-top:2px solid var(--i2l-navy);padding-top:.75rem;margin-top:.75rem;}
.i2l-price-lbl{font-size:.82rem;color:var(--i2l-g600);}
.i2l-price-val{font-family:var(--i2l-fd);font-size:1.6rem;font-weight:600;color:var(--i2l-navy);}
.i2l-price-val small{font-size:1rem;font-weight:400;color:var(--i2l-g600);}

/* Payment options */
.i2l-pay-opt{border:1.5px solid var(--i2l-g200);border-radius:var(--i2l-r);padding:1rem 1.25rem;margin-bottom:.75rem;display:flex;align-items:center;gap:1rem;cursor:pointer;background:var(--i2l-off);transition:all .22s;}
.i2l-pay-opt:hover{border-color:var(--i2l-navy);}
.i2l-pay-sel{border-color:var(--i2l-navy);background:rgba(27,42,107,.04);}
.i2l-pay-opt-hidden{display:none;}
.i2l-radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--i2l-g400);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .22s;}
.i2l-radio.i2l-checked{border-color:var(--i2l-navy);background:var(--i2l-navy);}
.i2l-radio-dot{width:8px;height:8px;border-radius:50%;background:#fff;opacity:0;transition:opacity .2s;}
.i2l-radio.i2l-checked .i2l-radio-dot{opacity:1;}
.i2l-pay-info{flex:1;}
.i2l-pay-name{font-weight:500;color:var(--i2l-navy);font-size:.95rem;}
.i2l-pay-desc{font-size:.78rem;color:var(--i2l-g600);margin-top:.2rem;}
.i2l-pay-logo{background:#011B33;color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.06em;padding:.3rem .55rem;border-radius:5px;flex-shrink:0;}
.i2l-bank-box{background:var(--i2l-navy);border-radius:var(--i2l-r);padding:1.25rem;margin-top:.75rem;}
.i2l-bank-row{display:flex;justify-content:space-between;font-size:.82rem;margin-bottom:.5rem;color:rgba(255,255,255,.6);}
.i2l-bank-row:last-child{margin-bottom:0;}
.i2l-bval{color:var(--i2l-gold);font-weight:500;}
.i2l-selar-panel{margin-top:.75rem;}
.i2l-selar-info{display:flex;gap:1rem;align-items:flex-start;background:rgba(108,59,245,.06);border:1.5px solid rgba(108,59,245,.2);border-radius:var(--i2l-r);padding:1rem 1.25rem;font-size:.88rem;}
.i2l-selar-info span{font-size:1.4rem;flex-shrink:0;}

/* Buttons */
.i2l-btn-row{display:flex;gap:.75rem;margin-top:1.75rem;align-items:center;}
.i2l-btn-back{background:none;border:1.5px solid var(--i2l-g200);border-radius:var(--i2l-r);padding:.72rem 1.4rem;font-family:var(--i2l-fb);font-size:.88rem;color:var(--i2l-g600);cursor:pointer;transition:all .2s;}
.i2l-btn-back:hover{border-color:var(--i2l-g400);color:var(--i2l-g800);}
.i2l-btn-next{flex:1;background:var(--i2l-navy);border:none;border-radius:var(--i2l-r);padding:.8rem 1.5rem;font-family:var(--i2l-fb);font-size:.95rem;font-weight:500;color:#fff;cursor:pointer;transition:all .22s;}
.i2l-btn-next:hover{background:var(--i2l-navy-light);}
.i2l-btn-next:disabled{background:var(--i2l-g200);color:var(--i2l-g400);cursor:not-allowed;}
.i2l-btn-gold{background:var(--i2l-gold)!important;color:var(--i2l-navy-dark)!important;}
.i2l-btn-gold:hover{background:var(--i2l-gold-dark)!important;}
.i2l-error-msg{background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;padding:.7rem 1rem;font-size:.85rem;color:#dc2626;margin-top:.75rem;}

/* Confirmation */
.i2l-confirm-wrap{text-align:center;padding:1rem 0;}
.i2l-confirm-icon{width:72px;height:72px;border-radius:50%;background:rgba(29,158,117,.12);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;font-size:1.9rem;}
.i2l-confirm-title{font-family:var(--i2l-fd);font-size:2rem;font-weight:600;color:var(--i2l-navy);margin:0 0 .5rem;}
.i2l-confirm-sub{font-size:.9rem;color:var(--i2l-g600);line-height:1.6;max-width:380px;margin:0 auto;}
.i2l-confirm-box{background:var(--i2l-off);border:1.5px solid var(--i2l-g200);border-radius:var(--i2l-r);padding:1.25rem;margin:1.5rem 0;text-align:left;}
.i2l-crow{display:flex;justify-content:space-between;font-size:.85rem;padding:.4rem 0;border-bottom:1px solid var(--i2l-g200);}
.i2l-crow:last-child{border-bottom:none;}
.i2l-clbl{color:var(--i2l-g600);}.i2l-cval{color:var(--i2l-navy);font-weight:500;}
.i2l-notify{background:rgba(29,158,117,.08);border:1px solid rgba(29,158,117,.2);border-radius:8px;padding:.65rem 1rem;font-size:.82rem;color:#0F6E56;display:flex;align-items:center;gap:.5rem;margin-bottom:.65rem;text-align:left;}
