body{margin:0;overflow:hidden}.simulator{position:fixed;inset:0;background:var(--color-black);display:flex;flex-direction:column;z-index:100;color:var(--color-white);font-family:var(--font-body)}.sim-header{display:flex;align-items:center;padding:0 2rem;height:64px;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.sim-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}.sim-logo img{display:block;height:40px;width:auto}.sim-progress-wrap{flex:1;height:2px;background:#ffffff0f;margin:0 2rem;border-radius:1px;overflow:hidden}.sim-progress-bar{height:100%;background:var(--color-gold);width:0%;transition:width .6s var(--ease-out-expo);border-radius:1px}.sim-close{color:var(--color-gray-light);text-decoration:none;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;transition:all .3s ease;flex-shrink:0}.sim-close:hover{color:var(--color-white);background:#ffffff0d}.sim-main{flex:1;overflow-y:auto;display:flex;align-items:flex-start;justify-content:center;padding:3rem 0}.sim-container{width:100%;max-width:960px;padding:0 2rem}.sim-footer{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 2rem;border-top:1px solid rgba(255,255,255,.06);flex-shrink:0}.sim-footer.hidden{visibility:hidden;pointer-events:none}.sim-btn-back,.sim-btn-next{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;font-family:var(--font-body);font-size:.875rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;border:none;cursor:pointer;transition:all .3s var(--ease-smooth)}.sim-btn-back{background:transparent;color:var(--color-gray-light);padding-left:0}.sim-btn-back:hover{color:var(--color-white)}.sim-btn-back.hidden{opacity:0;pointer-events:none}.sim-btn-next{background:var(--color-gold);color:var(--color-black);margin-left:auto;position:relative;overflow:hidden}.sim-btn-next:before{content:"";position:absolute;inset:0;background:var(--color-white);transform:translate(-101%);transition:transform .4s var(--ease-out-expo)}.sim-btn-next:hover:before{transform:translate(0)}.sim-btn-next span,.sim-btn-next svg{position:relative;z-index:1}.sim-btn-next:disabled{opacity:.3;cursor:not-allowed}.sim-btn-next:disabled:before{display:none}.sim-btn-next.hidden{display:none}.sim-step{opacity:0;transform:translateY(20px);transition:opacity .5s var(--ease-out-expo),transform .5s var(--ease-out-expo)}.sim-step.active{opacity:1;transform:translateY(0)}.sim-step-label{font-family:var(--font-accent);font-size:.8rem;letter-spacing:.35em;text-transform:uppercase;color:var(--color-gold);margin-bottom:1rem;display:block}.sim-question{font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.75rem);font-weight:300;line-height:1.15;margin-bottom:.75rem;color:var(--color-white)}.sim-subtitle{font-size:.95rem;color:var(--color-gray-light);line-height:1.6;margin-bottom:2.5rem}.sim-options{display:grid;gap:.75rem}.sim-option{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:transparent;border:1px solid rgba(255,255,255,.08);color:var(--color-white);cursor:pointer;transition:all .3s var(--ease-smooth);text-align:left;font-family:var(--font-body);width:100%}.sim-option:hover{border-color:#c8b0824d;background:#c8b08208}.sim-option.selected{border-color:var(--color-gold);background:#c8b0820f}.sim-option-content{flex:1}.sim-option-label{font-size:1.05rem;font-weight:500;display:block;margin-bottom:.15rem}.sim-option-desc{font-size:.825rem;color:var(--color-gray);display:block}.sim-option-check{width:22px;height:22px;border:1.5px solid rgba(255,255,255,.15);border-radius:50%;flex-shrink:0;margin-left:1rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.sim-option.selected .sim-option-check{border-color:var(--color-gold);background:var(--color-gold)}.sim-option.selected .sim-option-check:after{content:"";width:6px;height:6px;background:var(--color-black);border-radius:50%}.sim-session-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.sim-session-card{display:flex;flex-direction:column;align-items:flex-start;padding:2rem;background:transparent;border:1px solid rgba(255,255,255,.08);color:var(--color-white);cursor:pointer;transition:all .3s var(--ease-smooth);text-align:left;font-family:var(--font-body);position:relative;overflow:hidden;min-height:170px}.sim-session-card:hover{border-color:#c8b08266;background:#c8b0820a;transform:translateY(-2px)}.sim-session-card .sim-session-number{font-family:var(--font-display);font-size:2.25rem;font-weight:300;color:var(--color-gold);opacity:.25;line-height:1;margin-bottom:auto}.sim-session-card .sim-session-name{font-family:var(--font-display);font-size:1.6rem;font-weight:400;display:block;margin-bottom:.3rem}.sim-session-card .sim-session-subtitle{font-size:.85rem;color:var(--color-gray);display:block}.sim-client-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.sim-client-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;background:transparent;border:1px solid rgba(255,255,255,.08);color:var(--color-white);cursor:pointer;transition:all .3s var(--ease-smooth);text-align:center;font-family:var(--font-body);position:relative}.sim-client-card:hover:not(.disabled){border-color:#c8b08266;background:#c8b0820a;transform:translateY(-2px)}.sim-client-card.disabled{opacity:.4;cursor:not-allowed}.sim-client-card .sim-client-title{font-family:var(--font-display);font-size:1.75rem;font-weight:300;margin-bottom:.5rem}.sim-client-card .sim-client-subtitle{font-size:.8rem;color:var(--color-gray)}.sim-client-badge{position:absolute;top:1rem;right:1rem;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-gold);border:1px solid var(--color-gold);padding:.25rem .5rem;opacity:.6}.sim-counter-wrap{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 0}.sim-counter{display:flex;align-items:center;gap:2.5rem}.sim-counter-btn{width:52px;height:52px;border-radius:50%;border:1px solid var(--color-gold);background:transparent;color:var(--color-gold);font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;font-family:var(--font-body)}.sim-counter-btn:hover{background:var(--color-gold);color:var(--color-black)}.sim-counter-btn:disabled{opacity:.2;cursor:not-allowed}.sim-counter-btn:disabled:hover{background:transparent;color:var(--color-gold)}.sim-counter-display{text-align:center;min-width:80px}.sim-counter-value{font-family:var(--font-display);font-size:3.5rem;font-weight:300;color:var(--color-white);line-height:1}.sim-counter-suffix{font-size:.8rem;color:var(--color-gray);margin-top:.25rem;display:block}.sim-multi-counter{display:flex;flex-direction:column;gap:2rem;padding:1rem 0}.sim-multi-counter-row{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border:1px solid rgba(255,255,255,.08)}.sim-multi-counter-label{font-size:1rem;flex:1}.sim-multi-counter-controls{display:flex;align-items:center;gap:1.25rem}.sim-multi-counter-controls .sim-counter-btn{width:40px;height:40px;font-size:1.2rem}.sim-multi-counter-controls .sim-counter-value{font-size:2rem;min-width:40px;text-align:center}.sim-cities{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1rem}.sim-city{padding:.7rem 1.25rem;border:1px solid rgba(255,255,255,.1);background:transparent;color:var(--color-white);font-family:var(--font-body);font-size:.9rem;cursor:pointer;transition:all .3s ease}.sim-city:hover{border-color:#c8b0824d}.sim-city.selected{border-color:var(--color-gold);background:#c8b08214;color:var(--color-gold)}.sim-address-search{position:relative;z-index:10;margin-top:1.25rem}.sim-address-divider{display:flex;align-items:center;gap:1rem;margin:1rem 0;color:var(--color-gray);font-size:.8rem}.sim-address-divider:before,.sim-address-divider:after{content:"";flex:1;height:1px;background:#ffffff0f}.sim-autocomplete-input{width:100%;background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:var(--color-white);font-family:var(--font-body);font-size:.95rem;padding:.85rem 1rem .85rem 2.75rem;outline:none;transition:border-color .3s ease}.sim-autocomplete-input:focus{border-color:var(--color-gold)}.sim-autocomplete-input::placeholder{color:var(--color-gray)}.sim-autocomplete-icon{position:absolute;left:.9rem;top:50%;transform:translateY(-50%);color:var(--color-gray);pointer-events:none;display:flex}.sim-suggestions{position:absolute;top:100%;left:0;right:0;background:var(--color-charcoal);border:1px solid rgba(255,255,255,.1);border-top:none;z-index:100;max-height:240px;overflow-y:auto}.sim-suggestion{padding:.75rem 1rem;cursor:pointer;transition:background .2s ease;border-bottom:1px solid rgba(255,255,255,.04);font-size:.9rem}.sim-suggestion:hover{background:#c8b08214}.sim-suggestion-name{color:var(--color-white);display:block}.sim-suggestion-detail{color:var(--color-gray);font-size:.8rem;display:block;margin-top:.1rem}.sim-selected-address{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border:1px solid var(--color-gold);background:#c8b0820f;margin-top:1rem}.sim-selected-address-info{flex:1}.sim-selected-address-label{color:var(--color-white);font-size:.95rem;display:block}.sim-selected-address-distance{color:var(--color-gold);font-size:.8rem;display:block;margin-top:.2rem}.sim-selected-address-clear{background:none;border:none;color:var(--color-gray);cursor:pointer;padding:.25rem;font-size:1.1rem;transition:color .2s}.sim-selected-address-clear:hover{color:var(--color-white)}.sim-distance-loading{color:var(--color-gray);font-size:.8rem;margin-top:.5rem;display:flex;align-items:center;gap:.5rem}.sim-distance-loading:before{content:"";width:12px;height:12px;border:1.5px solid rgba(200,176,130,.3);border-top-color:var(--color-gold);border-radius:50%;animation:sim-spin .6s linear infinite}.sim-input{background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.15);color:var(--color-white);font-family:var(--font-body);font-size:1rem;padding:.75rem 0;width:100%;transition:border-color .3s ease;outline:none}.sim-input:focus{border-bottom-color:var(--color-gold)}.sim-input::placeholder{color:var(--color-gray)}.sim-input-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.sim-form-group{margin-bottom:1.75rem}.sim-form-group:has(.sim-input:user-invalid) .sim-input{border-bottom-color:#c8b0828c;box-shadow:0 1px #c8b08240}.sim-field-hint{display:none;margin-top:.5rem;font-size:.78rem;line-height:1.5;color:#c8b082d9;font-style:italic}.sim-form-group:has(.sim-input:user-invalid) .sim-field-hint{display:flex;align-items:flex-start;gap:.4rem}.sim-field-hint:before{content:"";flex-shrink:0;width:6px;height:6px;margin-top:.5rem;border-radius:50%;background:#c8b082b3}.sim-submit-feedback{margin-top:1rem;padding:.75rem 1rem;font-size:.85rem;line-height:1.55;color:#c8b082e6;border-left:2px solid rgba(200,176,130,.5);background:#c8b0820a}.sim-submit-feedback p{margin:0}.sim-submit-feedback strong{color:#ffffffeb;font-weight:500}.sim-form-label{display:block;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-gray-light);margin-bottom:.5rem}.sim-number-input-wrap{display:flex;align-items:center;gap:.5rem;max-width:300px;margin:0 auto}.sim-number-input-wrap .sim-input{text-align:center;font-size:1.5rem;font-family:var(--font-display)}.sim-number-suffix{color:var(--color-gray-light);font-size:1rem;white-space:nowrap}.sim-calendar{max-width:400px;margin:0 auto;user-select:none}.sim-cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.sim-cal-nav{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:transparent;color:var(--color-white);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;font-family:var(--font-body)}.sim-cal-nav:hover{border-color:var(--color-gold);color:var(--color-gold)}.sim-cal-title{font-family:var(--font-display);font-size:1.25rem;font-weight:400;text-transform:capitalize}.sim-cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:.5rem}.sim-cal-weekday{text-align:center;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-gray);padding:.5rem 0}.sim-cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.sim-cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.9rem;background:transparent;border:1px solid transparent;color:var(--color-white);cursor:pointer;transition:all .2s ease;font-family:var(--font-body);border-radius:50%;position:relative}.sim-cal-day:hover:not(.disabled):not(.empty){border-color:#c8b0824d}.sim-cal-day.selected{background:var(--color-gold);color:var(--color-black);font-weight:600}.sim-cal-day.today:not(.selected){border-color:#c8b08266}.sim-cal-day.disabled{color:var(--color-gray);opacity:.25;cursor:not-allowed}.sim-cal-day.empty{cursor:default}.sim-cal-info{margin-top:1.5rem;text-align:center;padding:1rem 1.25rem;border:1px solid rgba(255,255,255,.06)}.sim-cal-info-date{font-family:var(--font-display);font-size:1.15rem;margin-bottom:.25rem}.sim-cal-dates{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.sim-cal-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border:1px solid var(--color-gold);background:#c8b0820f;font-size:.85rem;text-transform:capitalize}.sim-cal-chip-remove{background:none;border:none;color:var(--color-gray);cursor:pointer;font-size:.9rem;padding:0;line-height:1;transition:color .2s}.sim-cal-chip-remove:hover{color:var(--color-white)}.sim-cal-counter{text-align:center;margin-top:1rem;font-size:.8rem;color:var(--color-gray)}.sim-time-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:.5rem}.sim-time-btn{padding:.65rem;border:1px solid rgba(255,255,255,.08);background:transparent;color:var(--color-white);font-family:var(--font-body);font-size:.9rem;cursor:pointer;transition:all .3s ease;text-align:center}.sim-time-btn:hover{border-color:#c8b0824d}.sim-time-btn.selected{border-color:var(--color-gold);background:#c8b08214;color:var(--color-gold)}.sim-toggles{display:flex;flex-direction:column;gap:.75rem}.sim-toggle-item{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:all .3s ease}.sim-toggle-item:hover{border-color:#c8b08233}.sim-toggle-item.active{border-color:#c8b0824d;background:#c8b0820a}.sim-toggle-label{font-size:1rem}.sim-toggle-switch{width:48px;height:26px;border-radius:13px;background:#ffffff1a;position:relative;transition:background .3s ease;flex-shrink:0}.sim-toggle-switch:after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:var(--color-white);top:3px;left:3px;transition:transform .3s ease}.sim-toggle-item.active .sim-toggle-switch,.sim-location-item.active .sim-toggle-switch{background:var(--color-gold)}.sim-toggle-item.active .sim-toggle-switch:after,.sim-location-item.active .sim-toggle-switch:after{transform:translate(22px);background:var(--color-black)}.sim-duration-wrap{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem 0}.sim-duration-display{font-family:var(--font-display);font-size:3.5rem;font-weight:300}.sim-duration-controls{display:flex;align-items:center;gap:1rem}.sim-locations{display:flex;flex-direction:column;gap:.75rem}.sim-location-item{border:1px solid rgba(255,255,255,.08);transition:border-color .3s ease;position:relative;z-index:1}.sim-location-item:focus-within{z-index:50}.sim-location-item.active{border-color:#c8b08233}.sim-location-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;cursor:pointer;transition:background .3s ease}.sim-location-header:hover{background:#ffffff05}.sim-location-name{font-size:.95rem;flex:1}.sim-location-required{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-gold);opacity:.6;margin-right:.75rem}.sim-location-body{padding:0 1.25rem 1.25rem;display:none}.sim-location-item.active .sim-location-body{display:block}.sim-location-select{background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--color-white);font-family:var(--font-body);font-size:.85rem;padding:.6rem .75rem;width:100%;margin-bottom:.75rem;outline:none;appearance:none;cursor:pointer}.sim-location-select:focus{border-color:var(--color-gold)}.sim-location-select option{background:var(--color-charcoal);color:var(--color-white)}.sim-location-item .sim-address-search{margin-top:0}.sim-location-ref{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--color-gray-light);margin-bottom:.75rem;cursor:pointer}.sim-location-ref input{accent-color:var(--color-gold)}.sim-location-time{display:flex;align-items:center;gap:.5rem;margin-top:.75rem}.sim-location-time label{font-size:.8rem;color:var(--color-gray-light)}.sim-location-time input{background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--color-white);font-family:var(--font-body);padding:.4rem .6rem;font-size:.85rem;outline:none}.sim-location-time input:focus{border-color:var(--color-gold)}.sim-contact-intro{font-family:var(--font-display);font-size:1.1rem;font-style:italic;color:var(--color-gray-light);margin-bottom:2.5rem;line-height:1.7}.sim-consent{display:flex;align-items:flex-start;gap:.75rem;margin:1.5rem 0;cursor:pointer;font-size:.8rem;color:var(--color-gray-light);line-height:1.5}.sim-consent input{accent-color:var(--color-gold);margin-top:.15rem;flex-shrink:0;width:16px;height:16px;cursor:pointer}.sim-submit{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2.5rem;background:var(--color-gold);color:var(--color-black);border:none;font-family:var(--font-body);font-size:.875rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;margin-top:1rem}.sim-submit:before{content:"";position:absolute;inset:0;background:var(--color-white);transform:translate(-101%);transition:transform .4s var(--ease-out-expo)}.sim-submit:hover:before{transform:translate(0)}.sim-submit span{position:relative;z-index:1}.sim-submit:disabled{opacity:.5;cursor:not-allowed}.sim-submit:disabled:before{display:none}.sim-done{text-align:center;padding:3rem 0}.sim-done-icon{width:64px;height:64px;border:2px solid var(--color-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;color:var(--color-gold)}.sim-done-title{font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:300;margin-bottom:1rem}.sim-done-text{color:var(--color-gray-light);line-height:1.7;margin-bottom:2.5rem;max-width:500px;margin-left:auto;margin-right:auto}.sim-done-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-gold);text-decoration:none;font-size:.875rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;transition:opacity .3s ease}.sim-done-link:hover{opacity:.7}.sim-loading{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:3rem 0}.sim-spinner{width:40px;height:40px;border:2px solid rgba(200,176,130,.2);border-top-color:var(--color-gold);border-radius:50%;animation:sim-spin .8s linear infinite}@keyframes sim-spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.sim-header{padding:0 1.25rem;height:56px}.sim-progress-wrap{margin:0 1rem}.sim-main{padding:2rem 0;align-items:flex-start}.sim-container{padding:0 1.25rem}.sim-footer{padding:1rem 1.25rem}.sim-session-grid{grid-template-columns:1fr 1fr;gap:.6rem}.sim-session-card{padding:1.5rem;min-height:130px}.sim-session-card .sim-session-number{font-size:1.75rem}.sim-session-card .sim-session-name{font-size:1.3rem}.sim-client-cards{grid-template-columns:1fr}.sim-client-card{padding:2rem}.sim-cal-day{font-size:.8rem}.sim-input-row{grid-template-columns:1fr;gap:0}.sim-counter-value{font-size:2.5rem}.sim-counter{gap:1.5rem}.sim-time-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 480px){.sim-session-grid{grid-template-columns:1fr}.sim-question{font-size:1.5rem}.sim-btn-next{padding:.75rem 1.25rem;font-size:.8rem}}
