:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#15201a;background:#eee9dc;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#eee9dc}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:20px 16px;position:relative;overflow-x:hidden;isolation:isolate;background-image:none;background-color:#f6f0e6}.app-shell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:transparent}.ambient{display:none}.app-card{width:min(100%,420px);max-width:420px;margin:24px auto;border:none;border-radius:20px;background:#fffffff5;box-shadow:0 14px 36px #1414140f;padding:20px 16px 22px;position:relative;z-index:1;display:flex;flex-direction:column;min-height:auto;overflow:visible}@media (max-width: 480px){.app-shell{padding:12px}.app-card{width:calc(100% - 32px);max-width:390px;margin:12px auto;padding:18px 14px;border-radius:18px}.brand-row{margin-bottom:18px}.brand-mark{font-size:20px}.hero-copy p{font-size:clamp(18px,6.5vw,22px)}}.brand-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.brand-mark{font-weight:760;letter-spacing:.12em;font-size:22px;color:#102015}.brand-mark span{color:#254e3a;margin-right:6px}.brand-sub{display:block;font-size:11px;color:#7a7f76;margin-top:2px;letter-spacing:.28em}.language-switch{display:flex;gap:6px;padding:4px;border-radius:999px;background:#fffffff2;border:1px solid rgba(39,56,46,.05);box-shadow:0 6px 18px #141e180a}.language-switch button{border:0;background:transparent;color:#566059;font-size:13px;padding:8px 10px;border-radius:999px}.language-switch button.active{background:#fff;color:#07110b;box-shadow:0 3px 10px #141e180f}.screen{flex:1}.hero-copy{margin:0 0 22px}.hero-copy p{display:none}.form-stack{display:grid;gap:18px;width:100%}.form-stack.compact{gap:14px}.two-col{display:block;grid-template-columns:none;gap:12px}.field{display:grid;gap:10px}.field-label{display:flex;align-items:center;gap:10px;color:#28342d;font-size:14px;font-weight:580;letter-spacing:.005em}.field-label svg{color:#2ea957}input,select,textarea{width:100%;border:1px solid rgba(45,65,53,.08);background:#fff;color:#122018;border-radius:12px;padding:16px 18px;min-height:64px;outline:none;box-shadow:inset 0 1px #fffffffa,0 6px 18px #101a140a;transition:border-color .14s ease,background .14s ease,transform .12s ease,box-shadow .12s ease;font-size:16px}input::placeholder,textarea::placeholder{color:#9aa3a0}.field-label{color:#54605a;font-size:13px;font-weight:600}select option{color:#111}input:focus,select:focus,textarea:focus{border-color:#2ab165a8;background:#fffffff2;box-shadow:0 0 0 4px #39d17d1a,0 10px 26px #393f370f}textarea{resize:none;min-height:104px}.phone-field{display:flex;gap:10px}.phone-prefix,.phone-number,.date-field input,.time-field select{border:1px solid rgba(45,65,53,.1);border-radius:14px;background:#fff;color:#122018;outline:none;box-shadow:inset 0 1px #fffffff5,0 6px 18px #101a140a;transition:border-color .14s ease,background .14s ease,transform .12s ease,box-shadow .12s ease}.phone-prefix{width:110px;padding:0 12px;min-height:64px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.phone-number{flex:1;padding:16px 18px;min-height:64px}.date-field,.time-field{position:relative}.date-field input,.time-field select{width:100%;padding:16px 18px;min-height:64px;appearance:none;-webkit-appearance:none;-moz-appearance:none}.date-field:after,.time-field:after{content:"";position:absolute;right:16px;top:50%;transform:translateY(-50%) rotate(45deg);width:12px;height:12px;border-right:2px solid #7a7f76;border-bottom:2px solid #7a7f76;pointer-events:none}.primary-button{width:100%;margin-top:18px;border:0;border-radius:14px;min-height:72px;display:flex;align-items:center;justify-content:center;gap:12px;color:#fff;background:linear-gradient(110deg,#163e2b,#1f4734);font-weight:800;font-size:18px;letter-spacing:.06em;box-shadow:0 10px 30px #10221838;transition:transform .12s ease,box-shadow .12s ease}.primary-button:hover{transform:translateY(-2px);box-shadow:0 14px 36px #12281c42}.primary-button:hover{transform:translateY(-2px);box-shadow:0 23px 48px #1d974b4a}.primary-button:active{transform:translateY(0)}.back-button{border:0;background:transparent;color:#5f6b63;padding:0;display:flex;align-items:center;gap:8px;margin-bottom:30px}.price-panel{border:1px solid rgba(30,40,34,.06);border-radius:18px;padding:22px;background:#fffffffa;box-shadow:0 10px 30px #181e1a0f}.route-mini{display:flex;gap:8px;align-items:center;color:#657168;font-size:13px;justify-content:space-between}.route-mini span:last-child{text-align:right}.price-label{margin-top:18px;color:#6e7a72;font-size:11px;text-transform:uppercase;letter-spacing:.17em}.price-value{font-size:48px;line-height:1;letter-spacing:-.035em;font-weight:670;margin:8px 0 18px;color:#18211c}.price-value span{font-size:20px;margin-left:6px;color:#2caf68}.footer-notes{margin-top:12px;color:#5c665f;font-size:13px;line-height:1.45;text-align:center}.footer-notes .line{margin:4px 0}.app-footer{margin-top:14px;color:#6b6b60;text-align:center;font-size:12px}.header-block{margin-bottom:12px}.title-row{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.main-title{margin:0;font-size:26px;color:#163e2b;font-weight:800;line-height:1}.decorative-line{width:68px;height:6px;border-radius:999px;background:linear-gradient(90deg,#4ac464,#bfa56a);margin-top:6px}.benefits{display:flex;gap:12px;margin-top:12px;align-items:center;justify-content:space-between}.benefit{display:flex;flex-direction:column;align-items:center;gap:8px;color:#54605a;font-size:13px;flex:1}.benefit svg{color:#bfa56a}.benefit-label{font-weight:600}.benefit-sep{width:1px;background:#101a140f;height:36px;margin:0 6px}.quote-title{margin-top:40px;font-size:38px;line-height:1.05;letter-spacing:-.04em;font-weight:630;color:#18211c}.muted{color:#68756d;line-height:1.55;margin-bottom:28px}.included-list{display:grid;gap:11px;padding-top:22px;border-top:1px solid rgba(45,65,53,.1)}.included-list div{display:flex;align-items:center;gap:10px;color:#39463e;font-size:13px}.included-list svg{color:#2caf68}.error{margin:14px 0 0;color:#b74c4c;font-size:12px}.done-screen{text-align:center;display:grid;place-items:center;align-content:center;min-height:520px}.success-icon{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#35ba68;box-shadow:0 18px 48px #39d17d3b}.done-screen h1{margin:26px 0 8px;font-size:38px;letter-spacing:-.04em;color:#18211c}.done-screen p{margin:0;color:#68756d;max-width:320px;line-height:1.55}.app-footer{margin-top:34px;color:#7b877f;text-align:center;font-size:10px;letter-spacing:.14em}.enter{animation:enter .32s ease both}@keyframes enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 767px){.app-shell{background-image:none;background-color:#f6f0e6;background-size:auto;background-position:center;padding:12px}.app-shell:after{display:none}.ambient{display:none}.app-card{width:calc(100% - 32px);max-width:none;margin:0 16px;padding:18px 14px;border-radius:18px;background:#fffffffa;box-shadow:0 10px 30px #1414140f}.brand-row{margin-bottom:18px;align-items:center}.brand-mark{font-size:18px;letter-spacing:.09em}.brand-sub{display:none}.language-switch{transform:none;order:2}.form-stack{gap:14px}input,select,textarea{padding:14px 16px;min-height:54px}textarea{min-height:88px}.two-col{grid-template-columns:1fr;gap:14px}.hero-copy{margin-bottom:12px}.hero-copy p{font-size:20px;line-height:1.08}.primary-button{min-height:72px;font-size:17px;border-radius:14px;background:linear-gradient(110deg,#254e3a,#1e412f);box-shadow:0 12px 30px #1e3c2d38}.brand-mark span{color:#bfa56a}.price-value{font-size:46px;margin:8px 0 18px}.price-value span{font-size:20px}.app-card{max-height:none;overflow:visible}.screen{overflow:visible}body,.app-shell{overflow-x:hidden}}.reservas-indicator{position:relative;border:0;background:transparent;cursor:pointer;font-size:20px;padding:6px}.reservas-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#d93025;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center}.reserva-actions{display:grid;gap:8px;margin-top:14px}.reserva-btn{width:100%;border:0;border-radius:12px;padding:12px 14px;font-size:14px;font-weight:700;cursor:pointer}.reserva-btn.confirmar{background:#1f5b3f;color:#fff}.reserva-btn.whatsapp{background:#fff;color:#1f5b3f;border:1px solid #1f5b3f}.reserva-btn.recusar{background:#f3f3f3;color:#8a2f2f}.reservas-filtros{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0 16px}.reservas-filtros button{border:1px solid #d9d9d9;background:#fff;border-radius:10px;padding:9px 6px;font-size:12px;font-weight:600;cursor:pointer}.reservas-filtros button.active{background:#1f5b3f;color:#fff;border-color:#1f5b3f}.reserva-card{padding:16px 0;border-bottom:1px solid #e5e5e5}.reserva-card:last-child{border-bottom:0}
