.th-self-drive {clear:both; overflow-wrap:anywhere}
.th-self-drive .th-self-drive-hero {border-top:4px solid #0f5f78; background:linear-gradient(120deg,#f5eee2,#fff 75%)}
.th-self-drive h1 {font-size:clamp(28px,4vw,44px);line-height:1.2;margin:14px 0 20px;max-width:780px}
.th-self-drive-lead {font-size:18px;max-width:850px}
.th-self-drive .button {white-space:normal;line-height:1.5;box-sizing:border-box;max-width:100%;text-align:center}
.th-self-drive-route {margin-top:22px;font-weight:600}
.th-self-drive-faq details {border-bottom:1px solid #dfe6ea;padding:15px 0}
.th-self-drive-faq summary {cursor:pointer;font-weight:700;color:#0f5f78;line-height:1.5}
.th-self-drive-faq details p {margin:12px 0 0}
.th-self-drive :focus-visible {outline:3px solid #0f5f78;outline-offset:4px}
#self-drive-enquiry {scroll-margin-top:24px}
.th-self-drive .th-self-drive-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}
.th-self-drive-fields label {display:block;font-weight:600}
.th-self-drive-fields input,.th-self-drive-fields textarea {box-sizing:border-box;width:100%;max-width:100%;font:inherit}
.th-self-drive-fields textarea {min-height:100px}
@media(max-width:767px){.th-self-drive .th-self-drive-fields{grid-template-columns:1fr}.th-self-drive .th-human-section{padding:20px 16px}.th-self-drive .button{width:100%}.th-self-drive-lead{font-size:16px}}
