.online-booking-page{background:#fff}
.ob-eyebrow{display:block;font-size:10px;line-height:1.7;letter-spacing:.1em;text-transform:uppercase;font-weight:550;color:var(--muted);margin-bottom:18px}
.ob-link{display:inline-flex;align-items:center;gap:13px;font:inherit;font-size:13px;font-weight:550;line-height:1.7;color:inherit;text-decoration:underline;text-decoration-color:var(--lime);text-decoration-thickness:3px;text-underline-offset:6px;background:none;border:0;padding:0;cursor:pointer;min-height:44px}
.ob-hero{background:var(--paper);padding:38px 0 55px}
.ob-breadcrumb{display:flex;gap:11px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-bottom:38px}
.ob-breadcrumb a{text-decoration:none}
.ob-hero-grid{display:grid;grid-template-columns:1fr 1.07fr;gap:65px;align-items:center}
.ob-hero h1{font-size:clamp(42px,3.8vw,54px);font-weight:550;letter-spacing:-.055em;line-height:1.08}
.ob-hero h1>span{display:block;font-size:19px;font-weight:500;line-height:1.4;letter-spacing:-.02em;margin-bottom:24px}
.ob-hero h1 em{font-style:normal;color:#50624a}
.ob-opening{font-size:14px;line-height:1.85;color:var(--muted);margin-top:25px;max-width:545px}
.ob-actions{display:flex;align-items:center;gap:16px 24px;flex-wrap:wrap;margin-top:28px}
.ob-actions .button{font-size:13px}
.ob-hero picture,.ob-hero img,.ob-collection picture,.ob-collection img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.ob-hero figcaption,.ob-collection figcaption{font-size:11px;line-height:1.7;color:var(--muted);margin-top:15px}
.ob-intro{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:end}
.ob-intro h2,.ob-collection h2,.ob-faq h2{font-size:clamp(36px,3.5vw,49px);font-weight:550;line-height:1.1;letter-spacing:-.045em}
.ob-intro>p{font-size:15px;line-height:1.85;color:var(--muted);max-width:465px;padding-bottom:3px}
.ob-example{padding:82px 0 72px}
.ob-example-ribbon{border-block:1px solid var(--line);margin-top:38px}
.ob-example-ribbon>.wrap{display:flex;justify-content:space-between;gap:15px;padding-block:18px;font-size:11px;color:var(--muted)}
.ob-example-ribbon>.wrap>span:last-child{color:var(--ink)}
.ob-workbench{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-top:32px;align-items:start}
.ob-customer,.ob-operator{min-width:0}
.ob-panel-label{display:flex;justify-content:space-between;gap:12px;line-height:1.7;font-size:10px;color:var(--muted);margin-bottom:19px}
.ob-panel-label>span:first-child{color:var(--ink);font-weight:550}
.ob-workbench h3{font-size:31px;line-height:1.15;letter-spacing:-.04em;font-weight:550}
.ob-demo-intro{font-size:13px;line-height:1.85;color:var(--muted);margin-top:17px}
.ob-dates{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:18px 0;margin:23px 0 22px;border-block:1px solid var(--line)}
.ob-dates>div>span{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}
.ob-dates strong{display:block;font-size:13px;font-weight:550}
.ob-dates>small{font-size:10px;color:var(--muted);margin-left:auto}
.ob-workbench fieldset{min-width:0;padding:0;border:0;margin:0}
.ob-workbench legend{font-size:11px;font-weight:550;margin-bottom:12px;padding:0}
.ob-vehicles{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ob-vehicles label{position:relative;cursor:pointer;display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;border-bottom:2px solid var(--line);padding:15px 0 16px}
.ob-vehicles label:has(input:checked){border-color:#91ab4b;background:linear-gradient(0deg,#f6f9eb,transparent 75%)}
.ob-workbench input[type=radio],.ob-workbench input[type=checkbox]{accent-color:#426334;width:17px;height:17px;flex:0 0 17px;margin:3px 0 0;cursor:pointer}
.ob-workbench input:focus-visible{outline:2px solid #527e22;outline-offset:4px}
.ob-choice>span{display:block;font-size:11px;color:var(--muted);line-height:1.7}
.ob-choice .ob-choice-name{font-size:15px;color:var(--ink);font-weight:550}
.ob-choice>strong{font-size:22px;font-weight:550;letter-spacing:-.035em;display:block;margin-top:12px}
.ob-choice small,.ob-extras small{font-size:10px;letter-spacing:0;font-weight:400;color:var(--muted)}
.ob-workbench .ob-extras{margin-top:25px}
.ob-extras label{display:flex;align-items:center;gap:11px;cursor:pointer;font-size:12px;min-height:46px;border-bottom:1px solid #e6eade}
.ob-extras label strong{margin-left:auto;font-weight:500;white-space:nowrap}
.ob-extras input[type=checkbox]{margin-top:0}
.ob-customer-total{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0 18px}
.ob-customer-total span{display:block;font-size:12px;font-weight:550}
.ob-customer-total small{display:block;font-size:10px;color:var(--muted);margin-top:4px}
.ob-customer-total>strong{font-size:29px;font-weight:550;letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.ob-preview{width:100%;font-size:13px;justify-content:space-between}
.ob-result-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 0;margin-top:25px;border-block:1px solid var(--line);min-height:120px}
.ob-result-top>div:first-child{min-width:0}
#ob-reservation-status{display:block;font-size:10px;color:var(--muted);line-height:1.7}
#ob-booking-reference{display:block;font-size:15px;font-weight:500;line-height:1.6;margin-top:7px}
.ob-booking-value{text-align:right;flex-shrink:0;min-width:112px}
.ob-booking-value>strong{display:block;font-size:38px;line-height:1.2;font-weight:550;letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.ob-booking-value>span{display:block;font-size:10px;line-height:1.7;color:var(--muted);margin-top:10px}
.is-confirmed .ob-booking-value>strong{text-decoration:underline;text-decoration-color:var(--lime);text-decoration-thickness:4px;text-underline-offset:6px}
.is-confirmed #ob-reservation-status{color:#426334}
.ob-record{margin:0;padding:8px 0}
.ob-record>div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid #e6eade;font-size:12px;line-height:1.7}
.ob-record dt{color:var(--muted)}
.ob-record dd{margin:0;font-weight:500}
#ob-record-extras{min-height:3.4em}
.ob-carried-through{margin-top:22px;padding:18px 20px;background:var(--paper)}
.ob-carried-through>span{font-size:10px;font-weight:550}
.ob-carried-through ul{padding:0;margin:10px 0 0;list-style:none}
.ob-carried-through li{font-size:11px;line-height:1.8;margin-top:6px;padding-left:18px;position:relative;color:var(--muted)}
.ob-carried-through li:before{content:'✓';position:absolute;left:0;color:#426334}
.ob-outcome{font-size:12px;line-height:1.8;color:var(--muted);margin-top:21px;min-height:3.6em}
.is-confirmed .ob-outcome{color:#426334}
.ob-reset{font-size:11px;margin-top:5px}
.ob-integration{padding:75px 0;background:var(--paper)}
.ob-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:40px 0 23px}
.ob-principles article{border-top:1px solid #cdd5c4;padding-top:25px}
.ob-principles article>span{display:block;font-size:9px;line-height:1.7;color:var(--muted);margin-bottom:18px}
.ob-principles h3{font-size:28px;line-height:1.2;font-weight:550;letter-spacing:-.03em}
.ob-principles p,.ob-collection-grid>div>p{font-size:14px;line-height:1.85;color:var(--muted);margin-top:19px}
.ob-collection{padding:82px 0}
.ob-collection-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:85px;align-items:center}
.ob-collection .ob-link{margin-top:22px}
.ob-faq{padding:0 0 80px}
.ob-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px}
.ob-faq details{border-top:1px solid var(--line)}
.ob-faq details:last-child{border-bottom:1px solid var(--line)}
.ob-faq summary{font-size:14px;line-height:1.7;font-weight:550;padding:20px 28px 20px 0;cursor:pointer;list-style:none;position:relative}
.ob-faq summary::-webkit-details-marker{display:none}
.ob-faq summary:after{content:'+';position:absolute;right:0;top:17px;font-size:21px;font-weight:400}
.ob-faq details[open] summary:after{content:'−'}
.ob-faq details p{padding:0 15px 22px 0;font-size:14px;line-height:1.85;color:var(--muted)}
.online-booking-page section[id]{scroll-margin-top:105px}
@media(min-width:801px){.ob-workbench h3{min-height:2.3em}.ob-demo-intro{min-height:3.7em}}
@media(max-width:1100px){.ob-hero-grid{gap:35px}.ob-hero h1{font-size:43px}.ob-intro,.ob-faq-grid{gap:50px}.ob-workbench{gap:45px}.ob-dates{gap:12px}.ob-dates>small{flex-basis:100%;margin-left:0}.ob-collection-grid{gap:45px}.ob-principles{gap:30px}}
@media(max-width:800px){.ob-hero-grid,.ob-intro,.ob-workbench,.ob-collection-grid,.ob-faq-grid{grid-template-columns:1fr;gap:34px}.ob-hero h1{font-size:54px}.ob-opening,.ob-intro>p{max-width:650px}.ob-hero img,.ob-collection img{max-height:440px}.ob-workbench{gap:40px}.ob-operator{border-top:1px solid var(--line);padding-top:30px}.ob-dates{gap:22px}.ob-dates>small{flex-basis:auto;margin-left:auto}.ob-result-top{min-height:110px}.ob-principles{gap:25px}.ob-principles h3{font-size:24px}.ob-example,.ob-collection,.ob-integration{padding-block:60px}.ob-faq{padding-bottom:60px}}
@media(max-width:600px){.ob-hero{padding:28px 0 35px}.ob-breadcrumb{font-size:10px;margin-bottom:29px}.ob-hero h1{font-size:42px}.ob-hero h1>span{font-size:17px;margin-bottom:20px}.ob-opening{font-size:14px}.ob-intro h2,.ob-collection h2,.ob-faq h2{font-size:36px}.ob-intro{gap:23px}.ob-intro>p{font-size:14px}.ob-example-ribbon>.wrap{flex-wrap:wrap;gap:4px}.ob-example-ribbon>.wrap>span{width:100%}.ob-workbench h3{font-size:29px}.ob-panel-label{font-size:10px}.ob-dates{gap:14px}.ob-dates>small{flex-basis:100%;margin-left:0}.ob-vehicles{gap:18px}.ob-vehicles label{grid-template-columns:17px 1fr;gap:9px}.ob-choice .ob-choice-name{font-size:14px}.ob-choice>span{font-size:10px}.ob-choice>strong{font-size:21px}.ob-record>div{grid-template-columns:90px 1fr;gap:14px}.ob-booking-value{min-width:90px}.ob-booking-value>strong{font-size:34px}#ob-booking-reference{font-size:13px}.ob-result-top{min-height:115px}.ob-principles{grid-template-columns:1fr;gap:27px;margin-top:30px}.ob-principles h3 br{display:none}.ob-principles article>span{margin-bottom:12px}.ob-principles p{margin-top:13px}.ob-faq summary{font-size:13px}.ob-carried-through{padding:16px}.ob-example,.ob-collection,.ob-integration{padding-block:48px}}
@media(max-width:360px){.ob-hero h1{font-size:37px}.ob-actions .button{font-size:12px;padding-inline:17px}.ob-panel-label{font-size:9px}.ob-extras label{font-size:11px}.ob-choice .ob-choice-name{font-size:13px}.ob-vehicles{gap:10px}.ob-record>div{grid-template-columns:82px 1fr;gap:10px}.ob-outcome{min-height:5.4em}.ob-result-top{gap:10px}}
@media(prefers-reduced-motion:reduce){.online-booking-page *{scroll-behavior:auto!important;transition:none!important}}
