.sfe-reservation{max-width:760px;scroll-margin-top:100px}.sfe-reservation__content{font-family:var(--ocf-font-body,Inter,sans-serif)}.sfe-rental-form{padding:30px;border:1px solid var(--ocf-border);border-radius:20px;background:var(--ocf-bg-alt);display:grid;gap:28px;max-width:100%;box-sizing:border-box}.sfe-rental-form *{box-sizing:border-box}.sfe-rental-form fieldset{min-width:0;margin:0;padding:0;border:0}.sfe-rental-form legend{display:block;padding:0;margin:0 0 10px;color:var(--ocf-heading);font-size:17px;font-weight:600}.sfe-reservation .sfe-reservation__help{font-size:13px;line-height:1.6;color:var(--ocf-body);margin:0 0 16px}.sfe-reservation__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.sfe-rental-form label:not(.sfe-reservation__choice):not(.sfe-reservation__check):not(.sfe-reservation__insurance){display:grid;gap:8px;font-size:13px;font-weight:500;color:var(--ocf-heading);min-width:0}.sfe-rental-form input:not([type=checkbox]):not([type=radio]){display:block;width:100%;max-width:100%;min-width:0;min-height:46px;border:1px solid var(--ocf-border);border-radius:9px;background:var(--ocf-bg);color:var(--ocf-heading);padding:11px 12px;font:inherit;font-size:15px;line-height:1.4}.sfe-rental-form input:focus-visible,.sfe-rental-form button:focus-visible{outline:2px solid var(--ocf-secondary,#6fa8ff);outline-offset:3px}.sfe-rental-form input[type=checkbox],.sfe-rental-form input[type=radio]{accent-color:var(--ocf-primary);width:17px;height:17px;margin:2px 0 0;flex-shrink:0}.sfe-reservation__contact{display:grid;gap:16px}.sfe-reservation__check{display:flex;gap:10px;align-items:start;font-size:12px;color:var(--ocf-body);line-height:1.5}.sfe-reservation__check+.sfe-reservation__check{margin-top:-7px}.sfe-calendar{border:1px solid var(--ocf-border);border-radius:12px;background:var(--ocf-bg);padding:15px;max-width:410px;margin-bottom:16px}.sfe-calendar__header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;color:var(--ocf-heading);font-size:14px}.sfe-calendar__nav{height:34px;width:34px;border:1px solid var(--ocf-border);border-radius:7px;background:transparent;color:var(--ocf-heading);font-size:25px;line-height:1;cursor:pointer}.sfe-calendar__nav:disabled{opacity:.3;cursor:default}.sfe-calendar__weekdays,.sfe-calendar__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.sfe-calendar__weekdays{font-size:11px;color:var(--ocf-body);margin-bottom:6px}.sfe-calendar__day{width:100%;min-height:36px;padding:5px 0;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ocf-heading);font:inherit;font-size:13px;cursor:pointer}.sfe-calendar__day:not(:disabled):hover{border-color:var(--ocf-primary)}.sfe-calendar__day.is-range{background:color-mix(in srgb,var(--ocf-primary) 20%,transparent)}.sfe-calendar__day.is-selected{background:var(--ocf-primary);color:#fff}.sfe-calendar__day.is-today:not(.is-selected){border-color:var(--ocf-border)}.sfe-calendar__day:disabled{opacity:.28;cursor:not-allowed}.sfe-calendar__day.is-blocked{text-decoration:line-through;opacity:.45}.sfe-reservation .sfe-reservation__date-status{margin:10px 0 0;min-height:20px;font-size:12px;color:var(--ocf-body)}.sfe-reservation__unavailable{margin-top:10px;font-size:11px;color:var(--ocf-body)}.sfe-reservation__unavailable summary{cursor:pointer}.sfe-reservation__unavailable span{display:block;margin-top:8px}.sfe-reservation__choices{display:grid;gap:9px}.sfe-reservation__choice{display:grid;grid-template-columns:17px minmax(0,1fr) auto;align-items:start;gap:12px;padding:14px;border:1px solid var(--ocf-border);border-radius:10px;cursor:pointer;background:var(--ocf-bg)}.sfe-reservation__choice:has(input:checked),.sfe-reservation__insurance:has(input:checked){border-color:var(--ocf-secondary,#6fa8ff);background:color-mix(in srgb,var(--ocf-primary) 12%,var(--ocf-bg))}.sfe-reservation__choice strong{display:block;color:var(--ocf-heading);font-size:13px;font-weight:500}.sfe-reservation__choice small{display:block;color:var(--ocf-body);font-size:10px;line-height:1.5;margin-top:5px}.sfe-reservation__choice b{font-size:13px;font-weight:600;color:var(--ocf-heading)}.sfe-reservation__address{margin-top:16px}.sfe-reservation__insurance{display:flex;align-items:start;gap:10px;padding:13px;border:1px solid var(--ocf-border);border-radius:9px;font-size:12px;color:var(--ocf-heading);cursor:pointer;background:var(--ocf-bg)}.sfe-reservation__uploads{display:grid;gap:15px}.sfe-rental-form input[type=file]{font-size:12px!important;padding:9px!important}.sfe-rental-form input[type=file]::file-selector-button{border:1px solid var(--ocf-border);border-radius:5px;background:var(--ocf-bg-alt);color:var(--ocf-heading);padding:6px 9px;margin-right:10px;cursor:pointer;font:inherit}.sfe-reservation .sfe-reservation__privacy{font-size:11px;margin:12px 0 0}.sfe-reservation__privacy a{color:var(--ocf-secondary,#6fa8ff);text-decoration:underline}.sfe-reservation__estimate{display:grid;grid-template-columns:1fr auto;gap:8px;padding:18px 0;border-block:1px solid var(--ocf-border);font-size:14px}.sfe-reservation__estimate strong{color:var(--ocf-heading)}.sfe-reservation__estimate small{grid-column:1/-1;font-size:11px;line-height:1.6}.sfe-reservation [hidden]{display:none!important}.sfe-reservation__submit{width:100%;border-radius:10px!important;cursor:pointer;min-height:50px}.sfe-reservation__submit:disabled{opacity:.6;cursor:wait}.sfe-reservation__error{padding:13px;border:1px solid var(--ocf-error,#ffb4ab);border-radius:9px;color:var(--ocf-error,#ffb4ab);font-size:13px;line-height:1.5}.sfe-reservation__success{padding:28px;border:1px solid var(--ocf-border);border-radius:16px;background:var(--ocf-bg-alt)}.sfe-reservation__success h3{margin:0 0 12px;color:var(--ocf-heading)}.sfe-reservation__success p{font-size:14px}.sfe-reservation__trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:600px){.sfe-rental-form{padding:20px 16px;gap:24px}.sfe-reservation__row{grid-template-columns:minmax(0,1fr);gap:14px}.sfe-reservation__date-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sfe-reservation__date-inputs input{font-size:12px!important;padding-inline:7px!important}.sfe-calendar{max-width:100%;padding:10px}.sfe-calendar__day{min-height:36px}.sfe-reservation__choice{padding:12px;gap:9px}.sfe-reservation__choice small{font-size:10px}.sfe-reservation{scroll-margin-top:80px}}