@charset "UTF-8";
/* Themify Ultra 8.0.6 framework 8.1.8 */

/*/css/base.min.css*/
:where(.tf_loader){width:1em;height:1em;overflow:hidden;display:inline-block;vertical-align:middle;position:relative}.tf_loader:before{content:'';width:100%;height:100%;position:absolute;top:0;left:0;text-indent:-9999em;border-radius:50%;box-sizing:border-box;border:.15em solid rgba(149,149,149,.2);border-left-color:rgba(149,149,149,.6);animation:tf_loader 1.1s infinite linear}@keyframes tf_loader{0{transform:rotate(0)}100%{transform:rotate(360deg)}}.tf_clear{clear:both}.tf_left{float:left}.tf_right{float:right}.tf_textl{text-align:left}.tf_textr{text-align:right}.tf_textc{text-align:center}.tf_textj{text-align:justify}.tf_text_dec{text-decoration:none}.tf_hide{display:none}.tf_hidden{visibility:hidden}.tf_block{display:block}.tf_inline_b{display:inline-block}.tf_vmiddle{vertical-align:middle}.tf_mw{max-width:100%}.tf_w{width:100%}.tf_h{height:100%}:where(.tf_overflow){overflow:hidden}.tf_box{box-sizing:border-box}:where(.tf_abs){position:absolute;inset:0}:where(.tf_abs_t){position:absolute;top:0;left:0}:where(.tf_abs_b){position:absolute;bottom:0;left:0}:where(.tf_abs_c){position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tf_rel{position:relative}:where(.tf_opacity){opacity:0}.tf_clearfix:after{content:"";display:table;clear:both}.loops-wrapper>.post,.woocommerce ul.loops-wrapper.products>li.product{float:left;box-sizing:border-box;margin-left:3.2%;margin-right:0;margin-bottom:2.5em;clear:none}.woocommerce .loops-wrapper.no-gutter.products>.product,body .loops-wrapper.no-gutter>.post{margin:0}.woocommerce .loops-wrapper.products.list-post>.product{margin-left:0}.tf_scrollbar{scroll-behavior:smooth;--tf_scroll_color:rgba(137,137,137,.2);--tf_scroll_color_hover:rgba(137,137,137,.4);scrollbar-color:var(--tf_scroll_color) transparent;scrollbar-width:thin}.tf_scrollbar::-webkit-scrollbar{width:var(--tf_scroll_w,10px);height:var(--tf_scroll_h,10px)}.tf_scrollbar::-webkit-scrollbar-thumb{background-color:var(--tf_scroll_color);background-clip:padding-box;border:2px solid transparent;border-radius:5px}.tf_scrollbar:hover{scrollbar-color:var(--tf_scroll_color_hover) transparent}.tf_scrollbar:hover::-webkit-scrollbar-thumb{background-color:var(--tf_scroll_color_hover)}.tf_close{position:relative;transition:transform .3s linear;cursor:pointer}.tf_close:after,.tf_close:before{content:'';height:100%;width:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(45deg);background-color:currentColor;transition:transform .25s}.tf_close:after{transform:translate(-50%,-50%) rotate(-45deg)}.tf_close:hover:after{transform:translate(-50%,-50%) rotate(45deg)}.tf_close:hover:before{transform:translate(-50%,-50%) rotate(135deg)}.tf_vd_lazy:fullscreen video{height:100%;object-fit:contain}

/*/css/themify-common.css*/
iframe{border:0}a{cursor:pointer}:is(button,a,input,select,textarea,.button):focus{outline:1px dotted hsla(0,0%,59%,.2)}.tf_focus_heavy :is(button,a,input,select,textarea,.button):focus{outline:2px solid rgba(0,176,255,.8)}.tf_focus_none a,.tf_focus_none:is(button,a,input,select,textarea,.button):focus{outline:0}.tf_large_font{font-size:1.1em}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;color:#21759b;display:block;font-size:.875rem;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}.skip-to-content:focus{clip-path:none}.post-image .themify_lightbox{display:block;max-width:100%;position:relative}.post-image .themify_lightbox .zoom{background:rgba(0,0,0,.3);border-radius:100%;height:35px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:35px}.post-image .themify_lightbox .zoom .tf_fa{color:#fff;vertical-align:middle;stroke-width:1px;left:50%;line-height:100%;position:absolute;top:50%;transform:translate(-50%,-50%)}.post-image .themify_lightbox:hover .zoom{background:rgba(0,0,0,.6)}.pswp:not(.pswp--open){display:none}:is(.ptb_map,.themify_map) button{border-radius:0;max-width:inherit}
/*/wp-content/themes/themify-ultra/styles/modules/sidebars/sidebar1.css*/
.sidebar-left #layout{flex-direction:row-reverse}.sidebar-left #sidebar{margin-left:unset;margin-right:auto}
/*/wp-content/themes/themify-ultra/styles/modules/single.css*/
.single .post-content .post-date-wrap:not(.post-date-inline){border-radius:100%;height:110px;margin-inline:auto;margin-bottom:1em;width:110px}.single .has-post-thumbnail .post-date-wrap{margin-top:-75px;position:relative}.single .post-date span{display:block}.single .post-content .post-date{background-color:var(--theme_accent_semi);border-radius:100%;color:#fff;display:block;height:110px;margin:0;text-align:center;width:110px}.single .post-content .post-date-wrap:not(.post-date-inline) .post-date{align-items:center;display:flex;flex-flow:column wrap;justify-content:center}.single .post-date .day{font-size:36px;letter-spacing:-.05em;line-height:100%;margin:4px 0}.single .post-date .month{text-transform:uppercase}.single .post-date .month,.single .post-date .year{font-size:14px;line-height:100%;margin:0}.single .post .post-date-inline{border-radius:0;height:auto;margin:0 auto 1em;width:auto}.single .has-post-thumbnail .post-date-inline{margin-bottom:0;margin-top:0;position:static}.single .post-content .post-date-inline .post-date{background:0;border-radius:0;color:inherit;height:auto;margin:0 0 .4em;width:auto}.single .post-date-inline .post-date span{display:inline}.single .post-date-inline .post-date :is(.year,.month,.day){display:inline;font-family:inherit;font-size:inherit;line-height:inherit;text-transform:inherit}.single .post-meta{margin:0 0 1em}.single .post-author{font-size:.9em;font-weight:400;letter-spacing:.05em;text-transform:uppercase}.single :is(.post-image,.post-meta,.post-title){text-align:center}.single :is(.post-meta,.post-author):empty{display:none}.single .entry-content :is(.post-date,.post-title,.post-meta){text-align:inherit}@media(max-width:680px){.single .post-meta{font-size:.9em}.single .post-content .post-date-wrap:not(.post-date-inline),.single .post-content .post-date-wrap:not(.post-date-inline) .post-date{height:80px;width:80px}.single .post-date .year{font-size:10px}.single .post-date .month{font-size:13px}.single .post-date .day{font-size:23px}.single .has-post-thumbnail .post-date-wrap.post-date-inline{margin-top:auto}.single-post .post-content .post-date-wrap.post-date-inline{height:auto;width:auto}.single .has-post-thumbnail .post-date-wrap,.single.single-fullwidth-layout .featured-area .post-image+.post-content .post-date-wrap{margin-top:-65px}}
/*/wp-includes/css/dist/block-library/common.min.css*/
:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}
/*/wp-content/themes/themify-ultra/styles/modules/comments.css*/
.commentwrap{clear:both;margin:2em 0 1.25em;position:relative}.comment-reply-title,.comment-title{font-size:1.5em;margin:0 0 .8em;padding:0}.commentwrap .pagenav{border:0;box-shadow:none;margin:10px 0}.commentwrap .pagenav.top{margin:0;position:absolute;right:0;top:0}.commentwrap .pagenav a:empty{display:none}.commentwrap .pagenav :is(a,span){background-color:var(--theme_accent);border-radius:100%;box-sizing:content-box;color:#fff;display:inline-block;line-height:1;min-height:auto;min-width:24px;padding:6px 2px;text-align:center;text-decoration:none;vertical-align:middle}.commentwrap .pagenav :is(a:hover,.current){background-color:#000;color:#fff}.commentlist{border:0;margin:2em 0 .5em;padding:0}.commentlist li{list-style:none;margin:0;padding:0 0 .5em;position:relative}.commentlist .comment-author{margin:.2em 0 1em;padding:0}.commentlist .avatar{border-radius:100%;display:inline-block;margin:0 15px 0 0;vertical-align:middle}.commentlist cite{font-size:1.2em;font-style:normal;vertical-align:middle}.commentlist cite a{text-decoration:none}.commentlist cite .tf_fa{margin-right:10px}.commentlist cite:after{border-left:1px solid;content:"";display:inline-block;height:1.4em;margin:0 .3em 0 .5em;opacity:.15;transform:skewX(-15deg);vertical-align:middle;white-space:nowrap;width:3px}.commentlist .comment-author cite svg{display:none}.commentlist .bypostauthor>.comment-author cite svg{display:inline-block;font-style:normal;margin-right:12px;text-decoration:none;vertical-align:middle}.commentlist br{display:none}.commentlist .comment-time{font-size:.8em;vertical-align:middle}.commentlist .commententry{min-height:3em;overflow:hidden;padding-bottom:.7em;position:relative;word-wrap:break-word}.commentlist :is(ul,ol){margin:0 0 0 6%;padding:0}.commentlist .reply{position:absolute;right:0;top:1.2em}.commentlist .comment-reply-link{border:1px solid;border-radius:var(--theme_btn_rounded);font-size:.8em;padding:.15em .9em .2em;text-decoration:none;text-transform:uppercase}.commentlist .comment-reply-link:hover{background-color:var(--theme_accent);border-color:var(--theme_accent);color:#fff}#respond{clear:both;margin:0;padding:0 0 .5em;position:relative}#respond #cancel-comment-reply-link{display:block;font-size:.8em;font-weight:400;line-height:100%;position:absolute;right:0;text-decoration:none;top:.6em}#respond #cancel-comment-reply-link:after,#respond #cancel-comment-reply-link:before{border-top:1px solid;content:"";display:block;height:20px;left:-34px;position:absolute;top:20%;transform:rotate(45deg);width:20px}#respond #cancel-comment-reply-link:before{left:-20px;transform:rotate(-45deg)}.full_width .commentwrap{margin-inline:auto;max-width:1160px}#commentform p{margin:0}#commentform .comment-form-cookies-consent{margin-top:1em}#commentform .comment-notes{margin:0 0 1em}#commentform label{display:block;font-size:.8em;font-weight:400;letter-spacing:.04em;text-transform:uppercase;transition:transform .3s}#commentform p label{transform:translate(12px,35px)}#commentform .comment-form-cookies-consent label{transform:none}#commentform .comment-form-cookies-consent input[type=checkbox]{margin:0 .5em 0 0}#commentform p:focus-within label,#commentform p:not(:has(:placeholder-shown)) label{display:block;transform:none}#commentform input[type=checkbox]+label{display:inline;font-size:.95em;letter-spacing:0;text-transform:none}#commentform label small{text-transform:none}#commentform textarea{height:140px}#commentform .form-submit{margin-top:1.4em}#commentform p:is(.comment-form-author,.comment-form-email){box-sizing:border-box;float:left;width:50%}#commentform p.comment-form-author{padding-right:2%}#commentform p.comment-form-email{padding-left:2%}#commentform p:is(.form-submit,.comment-form-comment,.comment-form-url,.comment-form-rating){clear:both}#commentform input:is([type=text],[type=email],[type=url]){max-width:none;width:100%}@media(max-width:1260px){.full_width .commentwrap{max-width:96%}}@media(max-width:760px){.full_width .commentwrap{max-width:90%}}@media(max-width:680px){.commentlist .comment-time{display:block}.commentwrap .pagenav.top{position:static}#commentform p:is(.comment-form-author,.comment-form-email){float:none;padding:inherit;width:auto}.commentlist{padding-left:0}.commentlist .reply{font-size:.8em;top:0}.commentlist .commententry{clear:left}.commentlist .avatar{float:left;margin:0 1em 1em 0}}
/*/wp-content/themes/themify-ultra/styles/modules/sidebar.css*/
#sidebar,#sidebar-alt{font-size:.95em;padding:5.75% 0 10%}#sidebar{margin-left:auto;width:24%}.full_width #sidebar{margin:0 auto;width:auto}#sidebar h1{font-size:2em}#sidebar h2{font-size:1.6em}#sidebar h3{font-size:1.4em}
/*/wp-content/themes/themify-ultra/styles/modules/back-top.css*/
.back-top{margin:0 auto .6em;width:200px}.back-top:not(.back-top-float) .arrow-up a{bottom:0;color:inherit;display:inline-block;line-height:1;outline:0;padding:.4em;position:relative;text-decoration:none;transition:bottom .5s;z-index:10}.back-top:not(.back-top-float):hover .arrow-up a{bottom:20px}.footer-block .back-top:not(.back-top-float) .arrow-up :is(a,a:hover){background:0}.back-top a:before{border:2px solid transparent;border-left-color:inherit;border-top-color:inherit;content:"";display:inline-block;height:30px;margin-top:4px;transform:rotate(45deg);width:30px}:is(#footer,#pagewrap) .back-top-float{background-color:var(--theme_accent_semi);border-radius:100%;box-shadow:0 1px 8px rgba(0,0,0,.12);color:#fff;cursor:pointer;font-size:16px;height:44px;inset:auto 20px 20px auto;opacity:1;overflow:hidden;position:fixed;text-align:center;text-decoration:none;transition:opacity .2s ease-in-out .2s,transform .2s ease-in-out,background-color .5s;width:44px;z-index:101}:is(#footer,#pagewrap) .back-top-hide{opacity:0;pointer-events:none}#pagewrap .back-top-float .arrow-up a,.back-top-float .arrow-up a{background:0;color:inherit}#pagewrap .back-top-float .arrow-up,.back-top-float .arrow-up{left:50%;position:absolute;top:5px}#pagewrap .back-top-float:hover,.back-top:not(.back-top-float) .arrow-up a:hover{background-color:var(--theme_accent)}#pagewrap .back-top-float:hover .arrow-up,.back-top-float:hover .arrow-up{animation:back-top-arrow-up .25s linear .2s infinite alternate}#pagewrap .back-top-float a:before,.back-top-float a:before{border-width:1px;height:13px;left:50%;margin-left:-7px;margin-top:0;position:absolute;top:14px;width:13px}:is(.footer-horizontal-left,.footer-horizontal-right,.footer-left-col,.footer-right-col) .back-top{margin:0;position:absolute;top:-89px;width:60px}:is(.footer-horizontal-left,.footer-horizontal-right,.footer-left-col,.footer-right-col) .back-top .arrow-up a{background-color:hsla(0,0%,67%,.78);border-radius:var(--theme_rounded) var(--theme_rounded) 0 0;color:#fff;height:25px;line-height:100%;padding:10px 0 0;text-align:center!important;width:60px}:is(.footer-horizontal-left,.footer-horizontal-right,.footer-left-col,.footer-right-col) .back-top a:before{height:14px;width:14px}:is(.footer-horizontal-left,.footer-horizontal-right,.footer-left-col,.footer-right-col) .back-top:hover .arrow-up a{bottom:0}:is(.footer-horizontal-left,.footer-horizontal-right,.footer-left-col,.footer-right-col) .back-top .arrow-up:hover a{background-color:#000}@keyframes back-top-arrow-up{0%{top:0}to{top:-5px}}@media(max-width:680px){:is(.footer-horizontal-left,.footer-horizontal-right,.footer-left-col,.footer-right-col) .back-top{top:-70px}}
/*/wp-content/themes/themify-ultra/style.css*/
/*!
Theme Name: Themify Ultra
Theme URI:https://themify.me/themes/ultra/
Version:8.0.6
Description:Use Ultra theme to create professional sites quickly and easily (landing pages, portfolio, blog, corporate, ecommerce, and more). It includes a bunch of header/footer layout options and pre-built demos that you can import to your site. Read <a href="https://themify.me/docs/ultra-documentation">Ultra documentation</a> for more information.
Author:Themify
Author URI:https://www.themify.me
License:GNU General Public License v2.0
License URI:http://www.gnu.org/licenses/gpl-2.0.html
Copyright:(c) Themify.
Tags:themify,featured-images,translation-ready,custom-menu,sidebar
Text Domain:themify
Requires PHP:7.2
Changelogs: https://themify.org/changelogs/themify-ultra.txt
---------
DO NOT EDIT THIS FILE.
If you need to override theme styling,please add custom CSS in Appearance>Customize>Custom CSS or a child theme (https://themify.me/docs/child-theme).*/a,abbr,acronym,address,b,bdo,big,blockquote,body,br,button,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,figure,form,h1,h2,h3,h4,h5,h6,html,i,img,ins,kbd,legend,li,map,ol,p,pre,q,samp,small,span,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,tt,ul,var{margin:0;padding:0}a,fieldset,img{border:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}audio,iframe{max-width:100%}:root{--theme_accent:#ed1e24;--theme_accent_semi:rgba(251,9,48,.8);--theme_accent_hover:#000;--theme_rounded:12px;--theme_input_rounded:12px;--theme_btn_rounded:30px}html{scroll-behavior:smooth}body{background-color:#fff;color:#666;font:1em/1.65em Public Sans,Arial,sans-serif;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;-ms-text-size-adjust:100%;-moz-text-size-adjust:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}a{color:var(--theme_accent);text-decoration:none;transition:color .3s ease-in-out}a:hover{color:var(--theme_accent_hover)}p{margin:0 0 1.3em;padding:0}small{font-size:87%}blockquote{border-left:3px solid hsla(0,0%,59%,.3);font-size:1.1em;line-height:1.4em;margin:0 5% 1.2em;padding:.8em 1.4em}ins{text-decoration:none}ol,ul{margin:0 0 1.4em 1.6em}li,ol,ul{padding:0}li{margin:0 0 1em}h1,h2,h3,h4,h5,h6{color:#000;font-weight:600;letter-spacing:-.03em;line-height:1.4em;margin:0 0 .5em;overflow-wrap:normal}h1{font-size:3.1em;font-weight:700;line-height:1.2em}h2{font-size:2.3em;line-height:1.3em}h3{font-size:1.7em}h4{font-size:1.4em}h5{font-size:1.3em}h5,h6{line-height:1.7em}h6{font-size:1.2em}button,input,input[type=search],select,textarea{font-family:inherit;font-size:100%;max-width:100%}input:is([type=radio],[type=checkbox]),input:read-only,input:read-write,select,textarea{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid rgba(0,0,0,.25);border-radius:var(--theme_input_rounded);max-width:100%;padding:.6em}input:read-only,input:read-write{margin:0 1em .6em 0;width:17em}input[type=number]{width:7em}textarea{margin:0 0 .6em;min-height:13.5em;width:100%}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='none' stroke='rgba(40,40,40,.8)' stroke-linecap='round' stroke-width='12'%3E%3Cpath d='m2.7 2.3 46.4 54.9L95.5 2.3'/%3E%3C/svg%3E");background-position:calc(100% - .7em) calc(50% + .15em);background-repeat:no-repeat;background-size:.85em;color:inherit;margin:0 0 .6em;padding-right:2em}input:is([type=radio],[type=checkbox]){-webkit-appearance:none;box-sizing:content-box;clear:none;cursor:pointer;display:inline-block;height:1.3em;line-height:1;margin:0 .5em 0 0;min-height:1.3em;min-width:1.3em;padding:0;text-align:center;vertical-align:middle;width:1.3em}input[type=checkbox]{border-radius:calc(var(--theme_input_rounded) - 4px)}input[type=radio]{align-items:center;border-radius:100%!important;display:inline-flex;justify-content:center}input[type=checkbox]:before{border-bottom:.13em solid transparent;border-left:.13em solid transparent;content:"";display:inline-block;height:.32em;margin-bottom:.1em;margin-left:.1em;transform:rotate(-45deg) skewY(-10deg);width:.7em}input[type=checkbox]:checked:before{border-bottom:.13em solid;border-left:.13em solid}input[type=radio]:checked:before{background-color:#222;border-radius:100%;content:"";display:inline-block;height:.7em;vertical-align:middle;width:.7em}:is(select,textarea):focus,input:read-only:focus,input:read-write:focus{border-color:rgba(0,0,0,.5)}button,input[type=reset],input[type=submit]{-webkit-appearance:none;background-color:var(--theme_accent);border:0;border-radius:var(--theme_btn_rounded);color:#fff;cursor:pointer;display:inline-block;font-weight:600;letter-spacing:.065em;padding:.65em 1.6em;text-transform:uppercase;transition:background .3s,color .3s,transform .3s;width:auto}button:hover,input:is([type=reset],[type=submit]):hover{background-color:var(--theme_accent_hover);box-shadow:0 5px 10px rgba(0,0,0,.1);color:#fff;transform:translateY(-1px)}.gm-style-mtc button{border-radius:0}.mce-toolbar .mce-btn button:hover{background-color:inherit;box-shadow:none;color:inherit;transform:none}#main-nav ul a,.author-box,.post,.post-content,.sidemenu,.widget,img,input,textarea{box-sizing:border-box}.col3-1,.col4-1,.col4-2{float:left;margin-left:3.2%}.col4-1{width:22.6%}.col4-2{width:48.4%}.col3-1{width:31.2%}:is(.col4-1,.col4-2,.col3-1).first{clear:left;margin-left:0}#pagewrap{overflow-x:clip}.mobile-menu-visible #pagewrap,.slide-cart-visible #pagewrap{overflow-x:initial}.pagewidth{margin:0 auto;max-width:100%;width:1160px}#layout{display:flex;flex-wrap:wrap}#content{padding:5.75% 0;width:71%}.sidebar-none #content{width:100%}.sidebar-none #layout{display:block}.sidemenu-active{left:0;position:relative;transition:left .2s ease-in-out}.sidemenu-right{left:-300px}.sidemenu-left,.sidemenu-left #headerwrap{left:300px}.full_width #layout{flex-wrap:wrap;max-width:100%;width:100%}.full_width #content{max-width:100%;padding:0;width:100%}#headerwrap{background-color:var(--tf_fixed_header_bg,#fff);border-bottom:var(--tf_fixed_header_border,1px solid rgba(0,0,0,.05));color:var(--tf_fixed_header_color,#000);inset-block:var(--tf_fixed_header_p,0 auto);left:0;margin-inline:var(--tf_fixed_header_m,0);min-height:55px;position:var(--tf_fixed_header,absolute);transition:.3s ease-in-out;transition-property:background-color,color,box-shadow,min-height,left,padding;width:var(--tf_fixed_header_w,100%);z-index:999}.fixed-header-enabled{--tf_fixed_header:sticky}.no-fixed-header{--tf_fixed_header:relative}.fixed-header-on{--tf_fixed_header_bg:hsla(0,0%,100%,.9)}#headerwrap.fixed-header:before{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);content:"";inset:0;pointer-events:none;position:absolute;z-index:0}#header{overflow:visible;padding:2em 0;position:relative}.fixed-header-enabled #header{transition:padding .3s ease-in-out}.fixed-header #header{padding-block:5px}@supports (-webkit-touch-callout:none){#headerwrap{background-attachment:scroll!important;background-position:50%!important}}.header-widget{font-size:.95em;height:100%}.header-widget .widget{margin:2em 0}.header-widget .widgettitle{color:inherit;font-size:1em;margin:0 0 .5em}.fixed-header-on .tf_sticky_logo~*{display:none!important}.search-button{border-radius:100%;box-sizing:border-box;color:inherit;font-size:19px;line-height:1;margin:0 0 0 3px;padding:10px}.search-button:hover{background:hsla(0,0%,78%,.25)}a.search-button{text-decoration:none}.search-button:focus{outline:0}.tf_darkmode_toggle{border-radius:100%;box-sizing:border-box;color:inherit;font-size:19px;line-height:1;margin:0 0 0 7px;padding:9px 10px}.tf_darkmode .tf_darkmode_toggle,.tf_darkmode_toggle:hover{background:hsla(0,0%,78%,.25)}a.tf_darkmode_toggle{text-decoration:none}.tf_darkmode_toggle:focus{outline:0}#main-nav,#main-nav li{margin:0;padding:0}#main-nav li{display:inline-block;list-style:none;position:relative}#main-nav ul li{background:0;display:block;float:none}#main-nav li>.sub-menu{background:#fff;border-radius:var(--theme_rounded);box-shadow:0 0 0 1px rgba(0,0,0,.1),0 3px 12px rgba(0,0,0,.12);box-sizing:border-box;contain:style layout;left:-.3em;margin:0;opacity:0;padding:calc(var(--tb_rounded_corner) - 2px) 0;position:absolute;top:100%;transform:scaleY(0);transform-origin:top;transition:transform .3s ease-in-out,opacity .3s ease-in-out;width:210px;z-index:100}#main-nav small{display:block}#main-nav li .sub-menu .sub-menu{left:100%;top:-.65em}#main-nav .edge>.sub-menu{left:auto;right:0}#main-nav ul .edge>.sub-menu{left:auto;right:100%}@media (hover:hover){#main-nav li:hover>.sub-menu,#main-nav li>.sub-menu:focus-within,#main-nav li>a:focus+.sub-menu{opacity:1;transform:scale(1)}}.menu-item .child-arrow{border-radius:100%;cursor:pointer;display:none;height:36px;position:absolute;right:0;top:4px;transition:transform .3s;width:36px;z-index:12}.child-arrow:after,.child-arrow:before{background:currentColor;border-radius:10px;content:"";height:1px;left:12px;position:absolute;top:50%;transform:rotate(45deg);transition:transform .3s ease-in-out;width:8px;z-index:9999}.child-arrow:after{left:17px;transform:rotate(-45deg)}.toggle-on>a .child-arrow:after,.toggle-on>a .child-arrow:before{left:10px;width:15px}.toggle-on>a .child-arrow{transform:rotate(180deg)}@media (hover:none){#main-nav .menu-item-has-children>a{padding-right:45px}#footer-nav .menu-item-has-children>a{padding-right:30px}.menu-item .child-arrow{border-radius:100%;display:inline-block;margin-left:7px;margin-top:-17px;padding:0;right:5px;top:50%}#main-nav .toggle-on>a>.child-arrow{background:hsla(0,0%,84%,.4)}#main-nav li>.sub-menu{display:none}#main-nav li.toggle-on>.sub-menu{opacity:1;transform:scale(1)}}#main-nav a{color:inherit;display:block;margin:0;padding:.6em;position:relative;text-decoration:none;transition:color .2s ease-in-out}#main-nav .highlight-link>a{background-color:hsla(0,0%,78%,.25);border:0;border-radius:var(--theme_btn_rounded);margin-left:.6em;margin-right:.6em;padding-left:1.2em;padding-right:1.2em}#main-nav .highlight-link:last-child>a{margin-right:0}#main-nav a>em .tf_fa{margin-right:5px}#main-nav a .tf_lazy{display:none}#main-nav ul a{color:#353535;padding:.4em 1.4em;text-align:left}#main-nav .current-menu-item>a,#main-nav .current_page_item>a,#main-nav a:hover,#main-nav ul a:hover{color:var(--theme_accent)}.header-icons :is(a,a:hover){color:inherit;text-decoration:none}#headerwrap .header-icons>*{vertical-align:middle}.slide-cart .header-icons{min-width:75px;text-align:right}#menu-icon{border-radius:100%;line-height:1em;margin:0 0 0 10px;padding:10px 9px 11px}#menu-icon:hover{background:hsla(0,0%,78%,.25)}.menu-icon-inner{border-bottom:2px solid;box-sizing:border-box;height:18px;position:relative;width:22px}.menu-icon-inner:after,.menu-icon-inner:before{border-top:2px solid;content:"";display:block;left:0;position:absolute;top:0;transition:border .7s ease;transition-property:transform;width:100%}.menu-icon-inner:after{top:50%}#menu-icon-close{transform:rotate(0deg);transition:border .3s ease-in-out,transform .3s ease-in-out}.body-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:hsla(0,0%,81%,.8);display:none;height:100%;position:fixed;top:0;width:100%}.body-overlay-on{display:block;z-index:998}.fixed-header :is(.tf_darkmode_toggle,.header-bar,.search-button,.header-widget),.mobile-menu-visible #headerwrap:before,.slide-cart-visible #headerwrap:before{display:none}.revealing-header :is(#headerwrap,#tbp_header){transition:transform .5s ease-in-out,opacity .5s ease-in-out}.revealing-header :is(#headerwrap,#tbp_header).header_hidden{opacity:0;transform:translateY(-100%)}.fixed-header-enabled #tbp_header,.revealing-header #tbp_header{position:sticky;top:0;z-index:999}.page-title{margin:0 0 1em;padding:0}.author-bio{margin:0 0 2em;overflow:hidden}.author-bio .author-avatar{float:left;margin:0 1.2em 0 0}.author-bio .author-avatar img{border-radius:var(--theme_rounded);width:100px}.author-bio .author-name{font-size:1.6em;margin:0 0 .5em;padding:0}.author-posts-by{border-top:4px solid hsla(0,0%,46%,.1);font-size:1.4em;margin:0 0 1.5em;padding:1em 0 0;text-transform:uppercase}.post{margin-bottom:2em;position:relative}.post-content{min-width:120px}.post-title{font-size:2.4em;letter-spacing:-.04em;line-height:1.4em;margin:0 0 .4em;padding:0;text-transform:none}.post-title a{color:#000;text-decoration:none}.post-title a:hover{color:var(--theme_accent)}.post-image{margin:0 0 1em}.post-image img{border-radius:var(--theme_rounded);vertical-align:bottom}.post-image.left{float:left;margin-right:1em}.post-image.right{float:right;margin-left:1em}.post-meta{font-size:.9em;line-height:1.6em;margin:0 0 .5em;padding:0}.post-meta a{text-decoration:none}.post-meta :is(.post-comment,.post-category,.post-tag):before{border-left:1px solid hsla(0,0%,71%,.6);content:"";display:inline-block;height:1.3em;margin:0 .9em 0 .45em;transform:skewX(-15deg);vertical-align:middle;white-space:nowrap;width:1px}.post-meta .post-category:first-child:before{display:none}.post-meta .post-comment .tf_fa{font-size:.8em;margin-left:8px;opacity:.7;vertical-align:text-top}.more-link,.more-link:after,.more-link:hover{text-decoration:none}.more-link:after{border:1px solid transparent;border-right-color:inherit;border-top-color:inherit;content:"";display:inline-block;margin-left:.5em;min-height:.7em;min-width:.7em;transform:rotate(45deg);vertical-align:middle}.post-date{display:block;font-size:.8em;letter-spacing:.04em;margin:0 0 .4em;text-transform:uppercase}.loops-wrapper .post-image{margin-bottom:1em;position:relative;transition:border .3s ease-in-out,margin .3s ease-in-out,width .3s ease-in-out,transform .3s ease-in-out}.author-box{border:0;margin:5.5em 0}.author-box .author-avatar{float:left;margin:0 2em .3em 0}.author-box .author-name{margin:0 0 .3em}.post-pagination{margin:.5em 0 2em;text-align:right}.post-pagination strong{margin-right:3px}.post-pagination a{margin-left:3px;margin-right:3px}.tf_load_more{padding:2em 0}a.load-more-button{background:hsla(0,0%,72%,.16);border-radius:var(--theme_btn_rounded);box-sizing:border-box;display:none;padding:.7em 1.8em;text-decoration:none;width:auto}.post-video{height:0;margin-bottom:15px;overflow:hidden;padding-bottom:56.25%;position:relative}.post-video iframe{height:100%;left:0;position:absolute;top:0;width:100%}.featured-area img{width:100%}.loops-wrapper.no-gutter .post-image{margin:0}.loops-wrapper.no-gutter .post,.loops-wrapper.no-gutter .post-image img,ul.products.no-gutter li.product .post-image{border-radius:0}.widget{margin:0 0 2.4em}.widgettitle{font-size:1em;font-weight:600;letter-spacing:.09em;line-height:1.3em;margin:0 0 1em;padding:0;text-transform:uppercase}.widget ul{margin:0;padding:0}.widget li{clear:both;list-style:none;margin:0;padding:.4em 0}.widget ul ul{margin:.6em 0 -.6em;padding:0}.widget ul ul li{margin:0;padding-left:1em}iframe[src*=facebook]{background-color:#fff}#content .twitter-tweet-rendered,#content .twt-border{max-width:100%!important}#content .twt-border{min-width:180px!important}.module-title{font-size:1.2em;font-weight:600;margin:0 0 .8em}:is(.col4-3,.col4-2,.col4-1,.col3-2,.col3-1,.col2-1) .loops-wrapper.list-post .post-title{font-size:1.4em;margin:0 0 .5em}.shortcode.themify-icon .themify-icon-icon{font-size:1.3em}a.shortcode.button{border-radius:var(--theme_btn_rounded);padding:.65em 1em}.tb_optin_horizontal form>div[class*=tb_optin_]{width:auto}img:is(.alignleft,.aligncenter,.alignright,.alignnone){margin-bottom:1em}.alignleft{float:left;margin-right:1em}.alignright{float:right;margin-left:1em}.aligncenter{display:block;margin-left:auto;margin-right:auto;text-align:center}.wp-caption{margin-bottom:1em;max-width:100%;text-align:center}.wp-caption-text{margin:.5em 0}body.attachment{position:static}.single .attachment.post,body.attachment{float:none;width:auto}.menu:after,.widget li:after{clear:both;content:"";display:table}.module-feature-image,.post-image,.post-img,.slide-image{transition:.3s ease-in-out;transition-property:border,padding,width}.mobile-menu-visible{overflow-y:hidden}@media(max-width:1260px){h1{font-size:2.4em}h2{font-size:2em}.pagewidth{max-width:94%}#pagewrap,.default_width #layout .row_inner{max-width:100%}}@media(max-width:1024px){.header-widget .col4-1{width:48.4%}.header-widget .col4-1:nth-child(odd){clear:left;margin-left:0}}@media(max-width:760px){body .pagewidth{max-width:90%}#layout{flex-wrap:wrap}#content,#sidebar{clear:both;max-width:100%;padding-top:10%;width:100%}}@media(max-width:680px){h1{font-size:1.9em}.post-title,h2{font-size:1.6em}h3{font-size:1.35em}.col4-1{font-size:.95em}.col3-1,.col4-2{margin-left:0;max-width:100%;width:100%}.fixed-header #site-logo img:not(.tf_sticky_logo){max-height:40px;width:auto}#headerwrap .header-icons{right:5%}.loops-wrapper:is(.list-post,.grid4,.grid3,.grid2,.list-large-image) .post-image{float:none;max-width:none;overflow:visible;width:auto}}
/*/wp-content/uploads/themify-customizer-8.1.8-8.0.6.css*/
/* Themify Customize Styling */
#headerwrap {	background: none;
	background-color: #000000; 
}
body #site-logo a {	display: none; 
}

/* Themify Custom CSS */
/* ============================================================================
   QTAXI GLOBAL v1.7
   Scope: .qtaxi

   Purpose:
   - Site-wide, generic foundation for all taxi pages
   - Themify-safe shield remains intact
   - Existing class names are preserved for backwards compatibility
   - Duplicated base rules are consolidated into one ordered system

   Load order:
   1. global-v1.3.css
   2. components.css
   3. page-specific CSS, only where truly needed

   Chapters:
   01. Design tokens
   02. Reset + Themify shield
   03. Typography base
   04. Containers
   05. Spacing system
   06. Section system
   07. Color schemes
   08. Flex layout system
   09. Grid layout system
   10. Helpers / utilities
   11. Accessibility helpers
   12. Responsive helpers
   13. Generic media / prose / forms
   14. Backward-compatible generic UI layer
   15. Page foundation patterns
   16. Print helpers
============================================================================ */

/* ============================================================================
   01. DESIGN TOKENS
   Site-wide design variables. Keep all tokens scoped to .qtaxi.
============================================================================ */
.qtaxi{
  /* Core brand */
  --bg:#0b1020;
  --panel:#111b36;
  --card:#ffffff;
  --text:#0f172a;
  --muted:#6b7280;
  --on-dark:#eef2ff;
  --line:rgba(15,23,42,.12);
  --line-strong:rgba(15,23,42,.20);
  --accent:#f4c542;
  --accent2:#22c55e;

  /* Aliases */
  --white:#ffffff;
  --black:#000000;
  --surface:rgba(255,255,255,.88);
  --surface-strong:#ffffff;
  --surface-soft:rgba(255,255,255,.72);
  --surface-dark:rgba(255,255,255,.08);
  --muted-soft:#98a2b3;

  /* Semantic */
  --success:#157f3d;
  --warning:#b54708;
  --danger:#b42318;
  --info:#2563eb;

  /* Shadows */
  --shadow:0 14px 40px rgba(0,0,0,.18);
  --shadow-xs:0 1px 2px rgba(15,23,42,.05);
  --shadow-sm:0 6px 18px rgba(15,23,42,.06);
  --shadow-md:0 12px 30px rgba(15,23,42,.10);
  --shadow-lg:0 18px 60px rgba(15,23,42,.14);
  --shadow-xl:0 24px 80px rgba(15,23,42,.18);

  /* Radius */
  --radius:16px;
  --radius-xs:.5rem;
  --radius-sm:.75rem;
  --radius-md:1rem;
  --radius-lg:1.25rem;
  --radius-xl:1.5rem;
  --radius-2xl:2rem;
  --radius-pill:999px;

  /* Spacing */
  --space-0:0;
  --space-1:.25rem;
  --space-2:.5rem;
  --space-3:.75rem;
  --space-4:1rem;
  --space-5:1.25rem;
  --space-6:1.5rem;
  --space-7:1.75rem;
  --space-8:2rem;
  --space-10:2.5rem;
  --space-12:3rem;
  --space-14:3.5rem;
  --space-16:4rem;
  --space-20:5rem;
  --space-24:6rem;

  /* Typography */
  --font-base:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  --font-heading:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  --font-size-xs:.75rem;
  --font-size-sm:.875rem;
  --font-size-base:1rem;
  --font-size-md:1.0625rem;
  --font-size-lg:1.125rem;
  --font-size-xl:1.25rem;
  --font-size-2xl:clamp(1.5rem, 3vw, 2rem);
  --font-size-3xl:clamp(2rem, 4vw, 3rem);
  --font-size-4xl:clamp(2.5rem, 5vw, 4.25rem);
  --line-height-tight:1.1;
  --line-height-heading:1.2;
  --line-height-body:1.6;
  --font-weight-regular:400;
  --font-weight-medium:500;
  --font-weight-semibold:600;
  --font-weight-bold:700;
  --font-weight-black:900;

  /* Containers */
  --container:1120px;
  --container-narrow:42rem;
  --container-normal:72rem;
  --container-wide:84rem;

  /* Sections */
  --section-padding-top-sm:1.5rem;
  --section-padding-bottom-sm:1.5rem;
  --section-padding-top-md:2rem;
  --section-padding-bottom-md:2rem;
  --section-padding-top-lg:2.5rem;
  --section-padding-bottom-lg:2.5rem;
  --section-padding-top-xl:3rem;
  --section-padding-bottom-xl:3rem;

  /* Motion / layers */
  --transition-fast:180ms ease;
  --transition-base:240ms ease;
  --transition-slow:360ms ease;
  --header-height:5rem;
  --z-base:1;
  --z-dropdown:40;
  --z-sticky:50;
  --z-fixed:60;
  --z-modal:100;

  /* Page tokens */
  --page-accent:var(--accent);
  --page-bg:#f6f7fb;
  --page-surface:var(--card);
  --page-text:var(--text);
  --page-muted:var(--muted);
  --page-radius:var(--radius-xl);
  --page-shadow:var(--shadow-md);

  --edge-xs:10px;
  --edge-sm:16px;
  --edge-md:24px;
  --edge-lg:32px;
  --edge-xl:40px;

  --container-sm:42rem;
  --container-md:72rem;
  --container-lg:84rem;
  --container-xl:96rem;

  --container-edge:var(--edge-sm);
  --container-size:var(--container-md);

  --grid-gap-mobile:1rem;
  --grid-gap-tablet:1.25rem;
  --grid-gap-desktop:1.5rem;
  --grid-gap:var(--grid-gap-mobile);

  font-family:var(--font-base);
  font-size:var(--font-size-base);
  line-height:var(--line-height-body);
  color:var(--text);
  background:#f6f7fb;
  text-rendering:optimizeLegibility;
}

/* ==========================================================================
   QTAXI BRAND TOKENS — Taxi Aalter Premium
   Plaats in global.css bij: 01. DESIGN TOKENS
========================================================================== */

.qtaxi{
  /* Brand darks */
  --bg:#070317;
  --panel:#10182f;
  --panel-2:#18213d;
  --panel-3:#25304f;

  /* Surfaces */
  --page-bg:#f4f5f8;
  --card:#ffffff;
  --surface:#ffffff;
  --surface-soft:#f8fafc;
  --surface-muted:#eef1f6;

  /* Text */
  --text:#111827;
  --muted:#6b7280;
  --muted-strong:#475569;
  --on-dark:#f4f7ff;
  --on-dark-muted:rgba(244,247,255,.76);

  /* Brand accents */
  --accent:#f0c542;
  --accent-hover:#d9ae2f;
  --accent-strong:#c99a18;
  --accent-soft:rgba(240,197,66,.16);
  --accent-line:rgba(240,197,66,.34);

  /* Semantic */
  --success:#22c55e;
  --success-soft:rgba(34,197,94,.12);
  --warning:#f59e0b;
  --danger:#ef4444;
  --info:#38bdf8;

  /* Lines */
  --line:rgba(17,24,39,.12);
  --line-strong:rgba(17,24,39,.22);
  --line-dark:rgba(244,247,255,.14);

  /* Premium gradients */
  --gradient-dark:linear-gradient(135deg,#10182f,#070317);
  --gradient-dark-soft:linear-gradient(135deg,#18213d,#10182f);
  --gradient-gold:linear-gradient(135deg,#f0c542,#d9ae2f);
  --gradient-page:linear-gradient(180deg,#f7f8fb,#eef1f6);

  /* Shadows */
  --shadow-xs:0 1px 2px rgba(15,23,42,.05);
  --shadow-sm:0 8px 20px rgba(15,23,42,.07);
  --shadow-md:0 14px 34px rgba(15,23,42,.10);
  --shadow-lg:0 22px 60px rgba(15,23,42,.14);
  --shadow-xl:0 30px 90px rgba(15,23,42,.18);
  --shadow-dark:0 22px 60px rgba(0,0,0,.28);
  --shadow-gold:0 14px 30px rgba(240,197,66,.28);

  /* Focus */
  --focus-ring:0 0 0 4px rgba(240,197,66,.24);
}

@media (min-width:48rem){
  .qtaxi{
    --section-padding-top-sm:2rem;
    --section-padding-bottom-sm:2rem;
    --section-padding-top-md:2.75rem;
    --section-padding-bottom-md:2.75rem;
    --section-padding-top-lg:3.5rem;
    --section-padding-bottom-lg:3.5rem;
    --section-padding-top-xl:4.25rem;
    --section-padding-bottom-xl:4.25rem;
  }
}

@media (min-width:64rem){
  .qtaxi{
    --section-padding-top-sm:2.5rem;
    --section-padding-bottom-sm:2.5rem;
    --section-padding-top-md:3.5rem;
    --section-padding-bottom-md:3.5rem;
    --section-padding-top-lg:4.75rem;
    --section-padding-bottom-lg:4.75rem;
    --section-padding-top-xl:6rem;
    --section-padding-bottom-xl:6rem;
  }
}

/* Page token aliases */
.qtaxi.page-home,
.qtaxi.page-over-ons,
.qtaxi.page-tarieven,
.qtaxi.page-contact,
.qtaxi.page-reserveren,
.qtaxi.page-blog,
.qtaxi.page-locaties,
.qtaxi.page-diensten,
.qtaxi.page-locatie,
.qtaxi.page-dienst{
  background:var(--page-bg);
  color:var(--page-text);
}
.qtaxi.page-contact,
.qtaxi.page-reserveren{ --page-accent:var(--accent2); }
.qtaxi.page-tarieven{ --page-accent:var(--accent); }
.qtaxi.page-locaties,
.qtaxi.page-locatie{ --page-accent:#38bdf8; }
.qtaxi.page-diensten,
.qtaxi.page-dienst{ --page-accent:var(--accent); }

/* ============================================================================
   02. RESET + THEMIFY SHIELD
   Scoped reset. No global :root/body reset, so Themify and WordPress stay safe.
============================================================================ */
html, body{
  margin:0;
  padding:0;
  width:100%;
  overflow-x:hidden;
}

.qtaxi{
  width:100%;
}


.qtaxi,
.qtaxi *,
.qtaxi *::before,
.qtaxi *::after{ box-sizing:border-box; }

.qtaxi :is(h1,h2,h3,h4,h5,h6,p,li,small,blockquote,figcaption,span){ color:inherit; }
.qtaxi a{ color:inherit; text-decoration:none; }
.qtaxi a:hover{ color:inherit; }

.qtaxi img,
.qtaxi picture,
.qtaxi svg,
.qtaxi video,
.qtaxi canvas{ display:block; max-width:100%; }
.qtaxi img{ height:auto; }
.qtaxi button,
.qtaxi input,
.qtaxi select,
.qtaxi textarea{ font:inherit; }
.qtaxi button{ cursor:pointer; }
.qtaxi p,
.qtaxi ul,
.qtaxi ol,
.qtaxi dl{ margin-top:0; }
.qtaxi table{ width:100%; border-collapse:collapse; }

/* Themify foundation shield */
.qtaxi .themify_builder_content,
.qtaxi .themify_builder,
.qtaxi .themify_builder_content *,
.qtaxi .module_row,
.qtaxi .module_subrow,
.qtaxi .row_inner,
.qtaxi .module_column,
.qtaxi .sub_column,
.qtaxi .module,
.qtaxi .tb_text_wrap{ max-width:none; }

.qtaxi .themify_builder_content,
.qtaxi .themify_builder,
.qtaxi .module_row,
.qtaxi .module_subrow,
.qtaxi .row_inner,
.qtaxi .module_column,
.qtaxi .sub_column,
.qtaxi .module{
  margin:0;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
}

.qtaxi .module_row,
.qtaxi .module_subrow,
.qtaxi .row_inner,
.qtaxi .module_column,
.qtaxi .sub_column{
  width:100%;
  min-width:0;
  float:none !important;
}

.qtaxi .tf_clear::before,
.qtaxi .tf_clear::after{ content:none !important; display:none !important; }
.qtaxi .tf_clear{ clear:none !important; }
.qtaxi .tf_rel{ position:relative; }
.qtaxi .tb_text_wrap > *:last-child{ margin-bottom:0; }

/* ============================================================================
   03. TYPOGRAPHY BASE
============================================================================ */
.qtaxi h1,
.qtaxi h2,
.qtaxi h3,
.qtaxi h4,
.qtaxi h5,
.qtaxi h6{
  margin-top:0;
  color:var(--text);
  font-family:var(--font-heading);
  line-height:var(--line-height-heading);
  letter-spacing:-.02em;
}
.qtaxi h1{ font-size:var(--font-size-4xl); margin-bottom:.6rem; }
.qtaxi h2,
.qtaxi .h2{ font-size:var(--font-size-3xl); margin:0 0 .4rem; }
.qtaxi h3{ font-size:var(--font-size-xl); margin-bottom:.3rem; }
.qtaxi h4{ font-size:var(--font-size-lg); }
.qtaxi p{ color:var(--muted); }
.qtaxi strong,
.qtaxi b{ font-weight:var(--font-weight-bold); }
.qtaxi small,
.qtaxi .text-small{ font-size:var(--font-size-sm); }
.qtaxi .lead,
.qtaxi .text-lead{ color:rgba(15,23,42,.8); font-size:var(--font-size-lg); max-width:65ch; }
.qtaxi .sub{ margin:0; color:var(--muted); max-width:68ch; }
.qtaxi .head{ margin:0 0 var(--space-5); }
.qtaxi .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  color:var(--accent);
  font-size:var(--font-size-xs);
  font-weight:var(--font-weight-semibold);
  letter-spacing:.16em;
  text-transform:uppercase;
}
.qtaxi .text-balance{ text-wrap:balance; }
.qtaxi .text-pretty{ text-wrap:pretty; }

/* ==========================================================================
   THEMIFY NEUTRALIZER — ONLY STRUCTURE
========================================================================== */

.qtaxi :is(
  .module_row,
  .row_inner,
  .module_column,
  .module_subrow,
  .sub_column,
  .module,
  .tb_text_wrap,
  .image-wrap
){
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;

  width:100% !important;
  max-width:none !important;
  min-width:0 !important;

  float:none !important;
  clear:none !important;

  font:inherit !important;
  color:inherit !important;
  text-transform:none !important;
  letter-spacing:normal !important;
  box-sizing:border-box !important;
}

/* ============================================================================
   04. CONTAINERS — ENTERPRISE SAFE SYSTEM
============================================================================ */
.qtaxi .wrap,
.qtaxi .container,
.qtaxi .l-container{
  width:100%;
  max-width:var(--container-size);
  margin-inline:auto;
  padding-inline:var(--container-edge);
  box-sizing:border-box;
}

.qtaxi .wrap--narrow,
.qtaxi .container.narrow,
.qtaxi .container-narrow,
.qtaxi .l-container-narrow{
  width:100%;
  max-width:var(--container-sm);
  margin-inline:auto;
  padding-inline:var(--container-edge);
  box-sizing:border-box;
}

.qtaxi .wrap--wide,
.qtaxi .container.wide,
.qtaxi .container-wide,
.qtaxi .l-container-wide{
  width:100%;
  max-width:var(--container-lg);
  margin-inline:auto;
  padding-inline:var(--container-edge);
  box-sizing:border-box;
}

.qtaxi .container-full,
.qtaxi .l-container-full{
  width:100%;
  max-width:none;
  margin-inline:auto;
  padding-inline:var(--container-edge);
  box-sizing:border-box;
}


.qtaxi .wrap--narrow,
.qtaxi .container.narrow,
.qtaxi .container-narrow,
.qtaxi .l-container-narrow{ width:min(100% - 2rem, var(--container-narrow)); margin-inline:auto; }
.qtaxi .wrap--wide,
.qtaxi .container.wide,
.qtaxi .container-wide,
.qtaxi .l-container-wide{ width:min(100% - 2rem, var(--container-wide)); margin-inline:auto; }
.qtaxi .container-full,
.qtaxi .l-container-full{ width:100%; margin-inline:auto; }
.qtaxi .content-readable,
.qtaxi .max-readable{ max-width:68ch; }
.qtaxi .content-narrow,
.qtaxi .max-narrow{ max-width:52ch; }
.qtaxi .content-wide,
.qtaxi .max-wide{ max-width:90ch; }
.qtaxi .content-full{ max-width:none; }
.qtaxi .content-center,
.qtaxi .mx-auto{ margin-inline:auto; }

/* ============================================================================
   05. SPACING SYSTEM
============================================================================ */
.qtaxi .p-0{ padding:0 !important; }
.qtaxi .p-2{ padding:var(--space-2) !important; }
.qtaxi .p-3{ padding:var(--space-3) !important; }
.qtaxi .p-4{ padding:var(--space-4) !important; }
.qtaxi .p-5{ padding:var(--space-5) !important; }
.qtaxi .p-6{ padding:var(--space-6) !important; }
.qtaxi .p-8{ padding:var(--space-8) !important; }
.qtaxi .pad{ padding:var(--space-5); }

.qtaxi .py-0{ padding-block:0 !important; }
.qtaxi .py-2{ padding-block:var(--space-2) !important; }
.qtaxi .py-4{ padding-block:var(--space-4) !important; }
.qtaxi .py-6{ padding-block:var(--space-6) !important; }
.qtaxi .py-8{ padding-block:var(--space-8) !important; }
.qtaxi .py-12{ padding-block:var(--space-12) !important; }
.qtaxi .px-0{ padding-inline:0 !important; }
.qtaxi .px-2{ padding-inline:var(--space-2) !important; }
.qtaxi .px-4{ padding-inline:var(--space-4) !important; }
.qtaxi .px-6{ padding-inline:var(--space-6) !important; }
.qtaxi .px-8{ padding-inline:var(--space-8) !important; }

.qtaxi .m-0{ margin:0 !important; }
.qtaxi .mt-0{ margin-top:0 !important; }
.qtaxi .mt-2{ margin-top:var(--space-2) !important; }
.qtaxi .mt-4{ margin-top:var(--space-4) !important; }
.qtaxi .mt-6{ margin-top:var(--space-6) !important; }
.qtaxi .mt-8{ margin-top:var(--space-8) !important; }
.qtaxi .mb-0{ margin-bottom:0 !important; }
.qtaxi .mb-2{ margin-bottom:var(--space-2) !important; }
.qtaxi .mb-4{ margin-bottom:var(--space-4) !important; }
.qtaxi .mb-6{ margin-bottom:var(--space-6) !important; }
.qtaxi .mb-8{ margin-bottom:var(--space-8) !important; }

.qtaxi .gap-0{ gap:0 !important; }
.qtaxi .gap-1{ gap:var(--space-1) !important; }
.qtaxi .gap-2{ gap:var(--space-2) !important; }
.qtaxi .gap-3{ gap:var(--space-3) !important; }
.qtaxi .gap-4{ gap:var(--space-4) !important; }
.qtaxi .gap-5{ gap:var(--space-5) !important; }
.qtaxi .gap-6{ gap:var(--space-6) !important; }
.qtaxi .gap-8{ gap:var(--space-8) !important; }
.qtaxi .gap-10{ gap:var(--space-10) !important; }
.qtaxi .gap-12{ gap:var(--space-12) !important; }

.qtaxi .stack,
.qtaxi .l-stack{ display:grid; gap:var(--space-4); }
.qtaxi .stack-xs{ gap:var(--space-2); }
.qtaxi .stack-sm{ gap:var(--space-3); }
.qtaxi .stack-md{ gap:var(--space-5); }
.qtaxi .stack-lg{ gap:var(--space-8); }
.qtaxi .stack-xl{ gap:var(--space-12); }
.qtaxi .stack-xs > * + *{ margin-top:var(--space-2); }
.qtaxi .stack-sm > * + *{ margin-top:var(--space-4); }
.qtaxi .stack-md > * + *{ margin-top:var(--space-6); }
.qtaxi .stack-lg > * + *{ margin-top:var(--space-8); }
.qtaxi .stack-xl > * + *{ margin-top:var(--space-12); }

.qtaxi .flow > * + *{ margin-top:var(--flow-space, var(--space-4)); }
.qtaxi .flow-sm{ --flow-space:var(--space-2); }
.qtaxi .flow-md{ --flow-space:var(--space-4); }
.qtaxi .flow-lg{ --flow-space:var(--space-8); }

/* ============================================================================
   06. SECTION SYSTEM
============================================================================ */
.qtaxi .section,
.qtaxi .page-section{
  position:relative;
  padding-top:var(--page-section-pt, var(--section-padding-top-md));
  padding-bottom:var(--page-section-pb, var(--section-padding-bottom-md));
  background:transparent !important;
  color:var(--text) !important;
}
.qtaxi .section :is(h1,h2,h3),
.qtaxi .page-section :is(h1,h2,h3){ color:var(--text) !important; }
.qtaxi .section .sub,
.qtaxi .page-section .sub{ color:var(--muted) !important; }

.qtaxi .section-padding-sm,
.qtaxi .page-section--sm{ --page-section-pt:var(--section-padding-top-sm); --page-section-pb:var(--section-padding-bottom-sm); }
.qtaxi .section-padding-md{ --page-section-pt:var(--section-padding-top-md); --page-section-pb:var(--section-padding-bottom-md); }
.qtaxi .section-padding-lg,
.qtaxi .page-section--lg{ --page-section-pt:var(--section-padding-top-lg); --page-section-pb:var(--section-padding-bottom-lg); }
.qtaxi .section-padding-xl,
.qtaxi .page-section--xl{ --page-section-pt:var(--section-padding-top-xl); --page-section-pb:var(--section-padding-bottom-xl); }
.qtaxi .section-padding-tight{ --page-section-pt:var(--section-padding-top-sm); --page-section-pb:var(--section-padding-bottom-sm); }
.qtaxi .section-padding-loose{ --page-section-pt:var(--section-padding-top-lg); --page-section-pb:var(--section-padding-bottom-lg); }

.qtaxi.module_row.section-padding-sm,
.qtaxi.module_row.section-padding-md,
.qtaxi.module_row.section-padding-lg,
.qtaxi.module_row.section-padding-xl,
.qtaxi .module_row.section-padding-sm,
.qtaxi .module_row.section-padding-md,
.qtaxi .module_row.section-padding-lg,
.qtaxi .module_row.section-padding-xl{
  padding-left:0 !important;
  padding-right:0 !important;
  padding-top:var(--page-section-pt) !important;
  padding-bottom:var(--page-section-pb) !important;
}

.qtaxi .section-soft{ background:rgba(15,23,42,.04) !important; }
.qtaxi .section-white{ background:var(--card) !important; }
.qtaxi .section-dark{ background:var(--bg) !important; color:var(--on-dark) !important; }
.qtaxi .section-dark :is(h1,h2,h3,h4,p,li,span,strong,a){ color:inherit !important; }
.qtaxi .section-accent{ background:rgba(244,197,66,.12) !important; }
.qtaxi .section-bordered{ border-block:1px solid var(--line); }

/* ============================================================================
   07. COLOR SCHEMES
   Apply to .qtaxi or to an inner section.
============================================================================ */
.qtaxi.scheme-classic-taxi,
.qtaxi .scheme-classic-taxi{ --bg:#0b1020; --panel:#111827; --text:#0f172a; --accent:#f4c542; --accent2:#22c55e; }
.qtaxi.scheme-executive-black,
.qtaxi .scheme-executive-black{ --bg:#050505; --panel:#111111; --text:#111827; --accent:#d4af37; --accent2:#9ca3af; }
.qtaxi.scheme-premium-navy,
.qtaxi .scheme-premium-navy{ --bg:#07111f; --panel:#0f1f35; --text:#0f172a; --accent:#f6c453; --accent2:#38bdf8; }
.qtaxi.scheme-gent-urban,
.qtaxi .scheme-gent-urban{ --bg:#10231d; --panel:#18382f; --text:#10231d; --accent:#d7b56d; --accent2:#2f9e75; }
.qtaxi.scheme-airport-premium,
.qtaxi .scheme-airport-premium{ --bg:#08111f; --panel:#12213a; --text:#0f172a; --accent:#ffcc33; --accent2:#60a5fa; }
.qtaxi.scheme-luxury-gold,
.qtaxi .scheme-luxury-gold{ --bg:#120f0a; --panel:#211a10; --text:#1c1917; --accent:#c9a227; --accent2:#b45309; }
.qtaxi.scheme-business-steel,
.qtaxi .scheme-business-steel{ --bg:#111827; --panel:#1f2937; --text:#111827; --accent:#e5b84b; --accent2:#64748b; }
.qtaxi.scheme-clean-professional,
.qtaxi .scheme-clean-professional{ --bg:#0f172a; --panel:#1e293b; --text:#0f172a; --accent:#facc15; --accent2:#10b981; }
.qtaxi.scheme-night-driver,
.qtaxi .scheme-night-driver{ --bg:#030712; --panel:#111827; --text:#111827; --accent:#fde047; --accent2:#22d3ee; }
.qtaxi.scheme-champagne,
.qtaxi .scheme-champagne{ --bg:#1c1917; --panel:#292524; --text:#1c1917; --accent:#f5d78e; --accent2:#84cc16; }
.qtaxi.scheme-royal-blue,
.qtaxi .scheme-royal-blue{ --bg:#06153a; --panel:#102a63; --text:#0f172a; --accent:#f7c948; --accent2:#2563eb; }
.qtaxi.scheme-minimal-black-yellow,
.qtaxi .scheme-minimal-black-yellow{ --bg:#000000; --panel:#171717; --text:#171717; --accent:#ffd400; --accent2:#16a34a; }
.qtaxi.scheme-premium-green,
.qtaxi .scheme-premium-green{ --bg:#052e1b; --panel:#064e3b; --text:#0f172a; --accent:#eab308; --accent2:#22c55e; }
.qtaxi.scheme-soft-luxury,
.qtaxi .scheme-soft-luxury{ --bg:#18181b; --panel:#27272a; --text:#18181b; --accent:#e7c873; --accent2:#a3a3a3; }
.qtaxi.scheme-corporate-blue,
.qtaxi .scheme-corporate-blue{ --bg:#0a2540; --panel:#12385f; --text:#0f172a; --accent:#f4c542; --accent2:#3b82f6; }
.qtaxi.scheme-warm-premium,
.qtaxi .scheme-warm-premium{ --bg:#1f1308; --panel:#3b2410; --text:#1f2937; --accent:#f59e0b; --accent2:#16a34a; }
.qtaxi.scheme-silver-cab,
.qtaxi .scheme-silver-cab{ --bg:#111827; --panel:#374151; --text:#111827; --accent:#fcd34d; --accent2:#cbd5e1; }
.qtaxi.scheme-elite-burgundy,
.qtaxi .scheme-elite-burgundy{ --bg:#2a0714; --panel:#450a20; --text:#1f1720; --accent:#d6a84f; --accent2:#f43f5e; }
.qtaxi.scheme-modern-teal,
.qtaxi .scheme-modern-teal{ --bg:#042f2e; --panel:#134e4a; --text:#0f172a; --accent:#facc15; --accent2:#14b8a6; }
.qtaxi.scheme-high-contrast-taxi,
.qtaxi .scheme-high-contrast-taxi{ --bg:#020617; --panel:#0f172a; --text:#020617; --accent:#ffcc00; --accent2:#00c853; }

.qtaxi [class*="scheme-"]{ background:var(--bg); color:var(--on-dark); }
.qtaxi [class*="scheme-"] :is(h1,h2,h3,h4,h5,h6,p,li,span,strong,a){ color:inherit; }

/* ============================================================================
   08. FLEX LAYOUT SYSTEM
============================================================================ */
.qtaxi .flex,
.qtaxi .l-flex{ display:flex; }
.qtaxi .inline-flex{ display:inline-flex; }
.qtaxi .flex-wrap,
.qtaxi .l-flex-wrap{ flex-wrap:wrap; }
.qtaxi .flex-nowrap{ flex-wrap:nowrap; }
.qtaxi .flex-column{ flex-direction:column; }
.qtaxi .flex-row{ flex-direction:row; }
.qtaxi .items-center,
.qtaxi .l-items-center{ align-items:center; }
.qtaxi .items-start,
.qtaxi .l-items-start{ align-items:flex-start; }
.qtaxi .items-end{ align-items:flex-end; }
.qtaxi .justify-center,
.qtaxi .l-justify-center{ justify-content:center; }
.qtaxi .justify-between,
.qtaxi .l-justify-between{ justify-content:space-between; }
.qtaxi .justify-start{ justify-content:flex-start; }
.qtaxi .justify-end{ justify-content:flex-end; }

.qtaxi .cluster,
.qtaxi .l-cluster,
.qtaxi .cluster-xs,
.qtaxi .cluster-sm,
.qtaxi .cluster-md,
.qtaxi .cluster-lg{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
}
.qtaxi .cluster,
.qtaxi .l-cluster{ gap:var(--space-3); }
.qtaxi .cluster-xs{ gap:var(--space-2); }
.qtaxi .cluster-sm{ gap:var(--space-3); }
.qtaxi .cluster-md{ gap:var(--space-4); }
.qtaxi .cluster-lg{ gap:var(--space-6); }
.qtaxi .cluster-center{ justify-content:center; }
.qtaxi .cluster-between{ justify-content:space-between; }

.qtaxi .flex-1col,
.qtaxi .flex-2col,
.qtaxi .flex-3col,
.qtaxi .flex-4col{ display:flex; flex-wrap:wrap; gap:var(--space-4); }
.qtaxi .flex-1col > *,
.qtaxi .flex-2col > *,
.qtaxi .flex-3col > *,
.qtaxi .flex-4col > *{ flex:1 1 100%; }

@media (min-width:48rem){
  .qtaxi .flex-2col > *,
  .qtaxi .flex-3col > *,
  .qtaxi .flex-4col > *{ flex-basis:calc(50% - var(--space-4)); }
}
@media (min-width:64rem){
  .qtaxi .flex-3col > *{ flex-basis:calc(33.333% - var(--space-4)); }
  .qtaxi .flex-4col > *{ flex-basis:calc(25% - var(--space-4)); }
}

/* ============================================================================
   09. GRID LAYOUT SYSTEM
============================================================================ */
.qtaxi .grid,
.qtaxi .l-grid,
.qtaxi .grid-1,
.qtaxi .grid-2,
.qtaxi .grid-3,
.qtaxi .grid-4,
.qtaxi .grid-5,
.qtaxi .grid-6,
.qtaxi .l-grid-2,
.qtaxi .l-grid-3,
.qtaxi .l-grid-4,
.qtaxi .cards-grid,
.qtaxi .metrics-grid,
.qtaxi .pricing-grid,
.qtaxi .review-grid,
.qtaxi .footer-grid,
.qtaxi .steps-grid,
.qtaxi .trust-grid,
.qtaxi .feature-row,
.qtaxi .icon-row,
.qtaxi .inline-feature-list,
.qtaxi .form-grid{ display:grid; gap:var(--space-4); grid-template-columns:1fr; }

.qtaxi .grid-auto-fit,
.qtaxi .l-grid-auto{ display:grid; gap:var(--space-4); grid-template-columns:repeat(auto-fit, minmax(min(100%, 240px), 1fr)); }
.qtaxi .grid-auto-fill{ display:grid; gap:var(--space-4); grid-template-columns:repeat(auto-fill, minmax(min(100%, 240px), 1fr)); }

/* ==========================================================================
   GRID SYSTEM — CONSISTENT GAP
========================================================================== */

.qtaxi :is(
  .grid,
  .l-grid,
  .grid-1,
  .grid-2,
  .grid-3,
  .grid-4,
  .grid-5,
  .grid-6,
  .cards-grid,
  .metrics-grid,
  .pricing-grid,
  .review-grid,
  .footer-grid,
  .steps-grid,
  .trust-grid,
  .feature-row,
  .icon-row,
  .inline-feature-list,
  .form-grid
){
  gap:var(--grid-gap);
}

@media (min-width:48rem){
  .qtaxi .grid--2,
  .qtaxi .grid-2,
  .qtaxi .grid-3,
  .qtaxi .grid-4,
  .qtaxi .grid-5,
  .qtaxi .grid-6,
  .qtaxi .l-grid-2,
  .qtaxi .cards-grid,
  .qtaxi .pricing-grid,
  .qtaxi .review-grid,
  .qtaxi .form-grid,
  .qtaxi .feature-row,
  .qtaxi .icon-row{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .qtaxi .metrics-grid{ grid-template-columns:repeat(4, minmax(0,1fr)); }
  .qtaxi .footer-grid{ grid-template-columns:1.2fr .8fr .8fr; }
  .qtaxi .steps-grid,
  .qtaxi .trust-grid{ grid-template-columns:repeat(3, minmax(0,1fr)); }
}

@media (min-width:64rem){
  .qtaxi .grid--3,
  .qtaxi .grid-3,
  .qtaxi .l-grid-3{ grid-template-columns:repeat(3, minmax(0,1fr)); }
  .qtaxi .grid-4,
  .qtaxi .l-grid-4,
  .qtaxi .cards-grid.services-grid,
  .qtaxi .icon-row{ grid-template-columns:repeat(4, minmax(0,1fr)); }
  .qtaxi .grid-5{ grid-template-columns:repeat(5, minmax(0,1fr)); }
  .qtaxi .grid-6{ grid-template-columns:repeat(6, minmax(0,1fr)); }
  .qtaxi .pricing-grid,
  .qtaxi .review-grid{ grid-template-columns:repeat(3, minmax(0,1fr)); }
}

.qtaxi .grid-span-1{ grid-column:span 1; }
.qtaxi .grid-span-2{ grid-column:span 1; }
.qtaxi .grid-span-3{ grid-column:span 1; }
.qtaxi .grid-span-full{ grid-column:1 / -1; }
@media (min-width:64rem){
  .qtaxi .grid-span-2{ grid-column:span 2; }
  .qtaxi .grid-span-3{ grid-column:span 3; }
}

/* ============================================================================
   10. HELPERS / UTILITIES
============================================================================ */
.qtaxi .block{ display:block; }
.qtaxi .inline-block{ display:inline-block; }
.qtaxi .hidden,
.qtaxi .u-hidden,
.qtaxi .state-hidden,
.qtaxi .is-hidden{ display:none !important; }
.qtaxi .visible{ visibility:visible; }
.qtaxi .invisible{ visibility:hidden; }
.qtaxi .u-visible,
.qtaxi .state-visible,
.qtaxi .is-visible{ display:block !important; }

.qtaxi .relative{ position:relative; }
.qtaxi .absolute{ position:absolute; }
.qtaxi .fixed{ position:fixed; }
.qtaxi .sticky{ position:sticky; }
.qtaxi .sticky-top{ position:sticky; top:0; }
.qtaxi .top-0{ top:0; }
.qtaxi .bottom-0{ bottom:0; }
.qtaxi .left-0{ left:0; }
.qtaxi .right-0{ right:0; }
.qtaxi .inset-0{ inset:0; }

.qtaxi .w-full,
.qtaxi .w-100,
.qtaxi .full-width{ width:100%; }
.qtaxi .w-auto{ width:auto; }
.qtaxi .h-full,
.qtaxi .h-100{ height:100%; }
.qtaxi .min-h-screen{ min-height:100vh; }

.qtaxi .text-left{ text-align:left; }
.qtaxi .text-center,
.qtaxi .u-text-center{ text-align:center; }
.qtaxi .text-right{ text-align:right; }
.qtaxi .text-xs{ font-size:var(--font-size-xs); }
.qtaxi .text-sm{ font-size:var(--font-size-sm); }
.qtaxi .text-base{ font-size:var(--font-size-base); }
.qtaxi .text-lg{ font-size:var(--font-size-lg); }
.qtaxi .text-xl{ font-size:var(--font-size-xl); }
.qtaxi .text-2xl{ font-size:var(--font-size-2xl); }
.qtaxi .text-3xl{ font-size:var(--font-size-3xl); }
.qtaxi .text-muted,
.qtaxi .muted,
.qtaxi .u-text-muted{ color:var(--muted) !important; }
.qtaxi .text-soft{ color:var(--muted-soft) !important; }
.qtaxi .text-white{ color:var(--white) !important; }
.qtaxi .text-accent,
.qtaxi .u-text-accent{ color:var(--page-accent, var(--accent)) !important; }
.qtaxi .text-success{ color:var(--success) !important; }
.qtaxi .text-danger{ color:var(--danger) !important; }
.qtaxi .font-normal{ font-weight:var(--font-weight-regular); }
.qtaxi .font-medium{ font-weight:var(--font-weight-medium); }
.qtaxi .font-semibold{ font-weight:var(--font-weight-semibold); }
.qtaxi .font-bold{ font-weight:var(--font-weight-bold); }
.qtaxi .font-black{ font-weight:var(--font-weight-black); }
.qtaxi .uppercase{ text-transform:uppercase; }
.qtaxi .no-wrap{ white-space:nowrap; }

.qtaxi .bg-page{ background:#f6f7fb; }
.qtaxi .bg-surface,
.qtaxi .surface,
.qtaxi .u-bg-surface{ background:var(--card); }
.qtaxi .bg-soft,
.qtaxi .u-bg-soft{ background:rgba(15,23,42,.04); }
.qtaxi .bg-dark,
.qtaxi .surface-dark{ background:var(--bg); color:var(--on-dark); }
.qtaxi .bg-accent{ background:var(--accent); color:var(--text); }
.qtaxi .bg-success-soft{ background:rgba(21,127,61,.1); }
.qtaxi .bg-warning-soft{ background:rgba(181,71,8,.1); }
.qtaxi .bg-danger-soft{ background:rgba(180,35,24,.1); }

.qtaxi .border{ border:1px solid var(--line); }
.qtaxi .border-strong{ border:1px solid var(--line-strong); }
.qtaxi .border-none{ border:0 !important; }
.qtaxi .rounded-xs{ border-radius:var(--radius-xs); }
.qtaxi .rounded-sm{ border-radius:var(--radius-sm); }
.qtaxi .rounded-md{ border-radius:var(--radius-md); }
.qtaxi .rounded,
.qtaxi .u-rounded{ border-radius:var(--radius); }
.qtaxi .rounded-lg,
.qtaxi .u-rounded-lg{ border-radius:var(--radius-lg); }
.qtaxi .rounded-xl{ border-radius:var(--radius-xl); }
.qtaxi .rounded-2xl{ border-radius:var(--radius-2xl); }
.qtaxi .rounded-full{ border-radius:var(--radius-pill); }

.qtaxi .shadow-none{ box-shadow:none !important; }
.qtaxi .shadow-xs{ box-shadow:var(--shadow-xs); }
.qtaxi .shadow-sm,
.qtaxi .u-shadow-soft{ box-shadow:var(--shadow-sm); }
.qtaxi .shadow,
.qtaxi .u-shadow{ box-shadow:var(--shadow); }
.qtaxi .shadow-md{ box-shadow:var(--shadow-md); }
.qtaxi .shadow-lg{ box-shadow:var(--shadow-lg); }
.qtaxi .shadow-xl{ box-shadow:var(--shadow-xl); }

.qtaxi .overflow-hidden{ overflow:hidden; }
.qtaxi .overflow-auto{ overflow:auto; }
.qtaxi .overflow-x-auto{ overflow-x:auto; }
.qtaxi .object-cover{ object-fit:cover; }
.qtaxi .object-contain{ object-fit:contain; }
.qtaxi .transition{ transition:var(--transition-base); }
.qtaxi .hover-lift{ transition:var(--transition-base); }
.qtaxi .hover-lift:hover{ transform:translateY(-4px); }
.qtaxi .cursor-pointer{ cursor:pointer; }
.qtaxi .pointer-events-none{ pointer-events:none; }
.qtaxi .opacity-0{ opacity:0; }
.qtaxi .opacity-50{ opacity:.5; }
.qtaxi .opacity-75{ opacity:.75; }
.qtaxi .opacity-100{ opacity:1; }
.qtaxi .z-0{ z-index:0; }
.qtaxi .z-10{ z-index:10; }
.qtaxi .z-20{ z-index:20; }
.qtaxi .z-30{ z-index:30; }
.qtaxi .z-dropdown{ z-index:var(--z-dropdown); }
.qtaxi .z-sticky{ z-index:var(--z-sticky); }
.qtaxi .z-fixed{ z-index:var(--z-fixed); }
.qtaxi .z-modal{ z-index:var(--z-modal); }

.qtaxi .state-active,
.qtaxi .is-active{ opacity:1; }
.qtaxi .state-featured,
.qtaxi .is-featured{ border-color:var(--page-accent, var(--accent)) !important; box-shadow:var(--shadow-lg) !important; }
.qtaxi .state-disabled,
.qtaxi .is-disabled{ pointer-events:none; opacity:.55; }
.qtaxi .is-loading{ position:relative; overflow:hidden; }
.qtaxi .is-loading::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent);
  animation:qtaxiShimmer 1.2s infinite;
}
@keyframes qtaxiShimmer{ from{ transform:translateX(-100%); } to{ transform:translateX(100%); } }

/* ============================================================================
   11. ACCESSIBILITY HELPERS
============================================================================ */
.qtaxi ::selection{ background:rgba(244,197,66,.22); }
.qtaxi :focus-visible{ outline:3px solid rgba(244,197,66,.42); outline-offset:3px; }
.qtaxi .skip-link{
  position:absolute;
  left:var(--space-4);
  top:-100%;
  z-index:9999;
  background:var(--text);
  color:var(--white);
  padding:var(--space-3) var(--space-4);
  border-radius:var(--radius-pill);
  transition:top var(--transition-fast);
}
.qtaxi .skip-link:focus{ top:var(--space-4); }
.qtaxi .sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
@media (prefers-reduced-motion:reduce){
  .qtaxi *,
  .qtaxi *::before,
  .qtaxi *::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
  }
}

/* ============================================================================
   12. RESPONSIVE HELPERS
   Simple, valid class names using dash notation to avoid escaped CSS in HTML.
============================================================================ */
.qtaxi .show-mobile{ display:block; }
.qtaxi .show-tablet-up,
.qtaxi .show-desktop,
.qtaxi .tablet-up,
.qtaxi .desktop-up{ display:none; }
.qtaxi .hide-mobile{ display:none !important; }

@media (min-width:48rem){
  .qtaxi .show-mobile{ display:none !important; }
  .qtaxi .show-tablet-up,
  .qtaxi .tablet-up{ display:block !important; }
  .qtaxi .hide-tablet-up{ display:none !important; }
  .qtaxi .hide-mobile{ display:initial !important; }
  .qtaxi .md-block{ display:block !important; }
  .qtaxi .md-flex{ display:flex !important; }
  .qtaxi .md-grid{ display:grid !important; }
  .qtaxi .md-hidden{ display:none !important; }
  .qtaxi .md-grid-2{ display:grid !important; grid-template-columns:repeat(2, minmax(0,1fr)); }
  .qtaxi .md-grid-3{ display:grid !important; grid-template-columns:repeat(3, minmax(0,1fr)); }
}

@media (min-width:64rem){
  .qtaxi .show-desktop,
  .qtaxi .desktop-up{ display:block !important; }
  .qtaxi .hide-desktop{ display:none !important; }
  .qtaxi .lg-block{ display:block !important; }
  .qtaxi .lg-flex{ display:flex !important; }
  .qtaxi .lg-grid{ display:grid !important; }
  .qtaxi .lg-hidden{ display:none !important; }
  .qtaxi .lg-grid-2{ display:grid !important; grid-template-columns:repeat(2, minmax(0,1fr)); }
  .qtaxi .lg-grid-3{ display:grid !important; grid-template-columns:repeat(3, minmax(0,1fr)); }
  .qtaxi .lg-grid-4{ display:grid !important; grid-template-columns:repeat(4, minmax(0,1fr)); }
}

/* ============================================================================
   13. GENERIC MEDIA / PROSE / FORMS
============================================================================ */
.qtaxi .media-frame{
  overflow:hidden;
  border-radius:var(--radius-xl);
  background:var(--card);
  border:1px solid var(--line);
  box-shadow:var(--shadow-sm);
}
.qtaxi .media-frame-premium{ overflow:hidden; border-radius:var(--radius-2xl); box-shadow:var(--shadow-lg); }
.qtaxi .img-cover{ width:100%; height:100%; object-fit:cover; }
.qtaxi .img-contain{ width:100%; height:100%; object-fit:contain; }
.qtaxi .img-rounded{ border-radius:var(--radius-lg); }
.qtaxi .img-circle{ border-radius:50%; }
.qtaxi .img-shadow{ box-shadow:var(--shadow-sm); }
.qtaxi .aspect-square{ aspect-ratio:1 / 1; }
.qtaxi .aspect-video{ aspect-ratio:16 / 9; }
.qtaxi .aspect-photo{ aspect-ratio:4 / 3; }

.qtaxi input,
.qtaxi select,
.qtaxi textarea{
  width:100%;
  min-height:3.125rem;
  padding:.9rem 1rem;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:rgba(255,255,255,.96);
  color:var(--text);
  transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast);
}
.qtaxi input::placeholder,
.qtaxi textarea::placeholder
.qtaxi input, .qtaxi textarea, .qtaxi select {
    color:#ffffff;
    -webkit-text-fill-color:#ffffff;
    caret-color:#ffffff;
}
.qtaxi input:focus,
.qtaxi select:focus,

.qtaxi textarea:focus{outline:none;border-color:rgba(244,197,66,.65);box-shadow:0 0 0 4px rgba(244,197,66,.12);background:255,255,.12;
color:#ffffff;-webkit-text-fill-color:#ffffff;caret-color:#ffffff;}

.qtaxi textarea{ resize:vertical; }
.qtaxi .form,
.qtaxi .booking-form,
.qtaxi .form-stack{ display:grid; gap:var(--space-4); }
.qtaxi .form-field,
.qtaxi .form-group{ display:grid; gap:var(--space-2); }
.qtaxi .form-field label,
.qtaxi .form-group label{ font-size:var(--font-size-sm); font-weight:var(--font-weight-medium); color:var(--text); }
.qtaxi .form-help{ color:var(--muted); font-size:var(--font-size-sm); }
.qtaxi .form-error{ color:var(--danger); font-size:var(--font-size-sm); font-weight:var(--font-weight-semibold); }

.qtaxi .prose,
.qtaxi .blog-content,
.qtaxi .article-content{ max-width:72ch; color:var(--text); }
.qtaxi .prose > * + *,
.qtaxi .blog-content > * + *,
.qtaxi .article-content > * + *{ margin-top:var(--space-5); }
.qtaxi .prose h2,
.qtaxi .blog-content h2,
.qtaxi .article-content h2{ margin-top:var(--space-10); }
.qtaxi .prose h3,
.qtaxi .blog-content h3,
.qtaxi .article-content h3{ margin-top:var(--space-8); }
.qtaxi .prose p,
.qtaxi .blog-content p,
.qtaxi .article-content p{ color:var(--text); }
.qtaxi .prose a,
.qtaxi .blog-content a,
.qtaxi .article-content a{ color:var(--accent); font-weight:var(--font-weight-semibold); text-decoration:underline; text-underline-offset:3px; }
.qtaxi .prose ul,
.qtaxi .prose ol,
.qtaxi .blog-content ul,
.qtaxi .blog-content ol,
.qtaxi .article-content ul,
.qtaxi .article-content ol{ padding-left:var(--space-5); }
.qtaxi .prose li + li,
.qtaxi .blog-content li + li,
.qtaxi .article-content li + li{ margin-top:var(--space-2); }
.qtaxi .prose blockquote,
.qtaxi .blog-content blockquote,
.qtaxi .article-content blockquote{ border-left:6px solid var(--accent); background:rgba(15,23,42,.04); padding:var(--space-5); border-radius:var(--radius); color:var(--muted); font-weight:var(--font-weight-semibold); }
.qtaxi .prose img,
.qtaxi .blog-content img,
.qtaxi .article-content img{ border-radius:var(--radius-lg); box-shadow:var(--shadow-sm); }

/* ============================================================================
   14. BACKWARD-COMPATIBLE GENERIC UI LAYER
   Kept in global until components.css is created. Do not remove yet.
============================================================================ */
.qtaxi .card,
.qtaxi .price,
.qtaxi .review,
.qtaxi .contactbox,
.qtaxi .area .card,
.qtaxi .split .card{
  background:var(--card) !important;
  color:var(--text) !important;
  border:1px solid var(--line) !important;
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
}
.qtaxi .card :is(h1,h2,h3,h4,h5,h6,p,li,small,strong,em,span,blockquote,figcaption,div),
.qtaxi .price :is(h1,h2,h3,h4,h5,h6,p,li,small,strong,em,span,div),
.qtaxi .review :is(p,blockquote,figcaption,span),
.qtaxi .contactbox :is(h1,h2,h3,p,li,span,strong,a){ color:var(--text) !important; }
.qtaxi .card .muted,
.qtaxi .card .sub,
.qtaxi .card__text,
.qtaxi .price__text,
.qtaxi .price__tag,
.qtaxi .review figcaption{ color:var(--muted) !important; }
.qtaxi .card a,
.qtaxi .price a,
.qtaxi .review a{ color:var(--text) !important; text-decoration:none; }
.qtaxi .card a:hover,
.qtaxi .price a:hover{ text-decoration:underline; }
.qtaxi .card__title{ margin:0 0 .35rem; font-size:1.1rem; color:var(--text); }
.qtaxi .panel{ background:var(--panel); color:var(--white); border-radius:var(--radius); }

.qtaxi :where(a, button).btn,
.qtaxi :where(a, button).btn2,
.qtaxi :where(a, button).btnPill{
  -webkit-appearance:none !important;
  appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.55rem !important;
  padding:.85rem 1.1rem !important;
  border-radius:var(--radius-pill) !important;
  border:1px solid transparent !important;
  font-weight:var(--font-weight-medium) !important;
  line-height:1 !important;
  text-decoration:none !important;
  cursor:pointer !important;
  user-select:none;
  white-space:nowrap !important;
  color:var(--text) !important;
  background:transparent !important;
  transition:background .15s ease, border-color .15s ease, color .15s ease, transform .08s ease, box-shadow .15s ease !important;
}
.qtaxi :where(a, button).btn:active,
.qtaxi :where(a, button).btn2:active,
.qtaxi :where(a, button).btnPill:active{ transform:translateY(1px); }
.qtaxi :where(a, button).btn:focus-visible,
.qtaxi :where(a, button).btn2:focus-visible,
.qtaxi :where(a, button).btnPill:focus-visible{ outline:none !important; box-shadow:0 0 0 4px rgba(244,197,66,.35) !important; }
.qtaxi .btn:hover,
.qtaxi .btn2:hover{ color:inherit; }
.qtaxi .btn--primary,
.qtaxi .btn2--cta,
.qtaxi .btnPill--primary{ background:var(--accent) !important; border-color:rgba(15,23,42,.10) !important; color:var(--text) !important; box-shadow:0 10px 26px rgba(0,0,0,.14) !important; }
.qtaxi .btn--primary:hover,
.qtaxi .btn2--cta:hover,
.qtaxi .btnPill--primary:hover{ filter:brightness(.98); color:var(--text) !important; }
.qtaxi .btn--grey,
.qtaxi .btn2--ghost,
.qtaxi .btnPill--grey,
.qtaxi .btn--ghost{ background:#eef0f4 !important; border-color:rgba(15,23,42,.12) !important; color:var(--text) !important; }
.qtaxi .btn--grey:hover,
.qtaxi .btn2--ghost:hover,
.qtaxi .btnPill--grey:hover{ background:#e6e9ef !important; color:var(--text) !important; }
.qtaxi .btn--outline,
.qtaxi .btnPill--outline{ background:transparent !important; border-color:rgba(15,23,42,.25) !important; color:var(--text) !important; }
.qtaxi .btn--outline:hover,
.qtaxi .btnPill--outline:hover{ background:rgba(15,23,42,.04) !important; }
.qtaxi .btn--secondary{ background:transparent !important; border-color:rgba(238,242,255,.55) !important; color:var(--on-dark) !important; }
.qtaxi .btn--block,
.qtaxi .btn2--block,
.qtaxi .btnPill--block{ width:100%; }
.qtaxi .btn .ico,
.qtaxi .btn2 .ico,
.qtaxi .btnPill .ico{ display:inline-flex; width:1.15rem; height:1.15rem; align-items:center; justify-content:center; }

.qtaxi .list{ list-style:none; padding:0; margin:0 0 1rem; }
.qtaxi .list li{ position:relative; padding-left:1.55rem; margin:0 0 .45rem; }
.qtaxi .list li::before{ content:"✓"; position:absolute; left:0; top:.05rem; color:var(--accent2); font-weight:var(--font-weight-black); }
.qtaxi .chips,
.qtaxi .chip-row,
.qtaxi .pill-group,
.qtaxi .tag-list,
.qtaxi .action-group,
.qtaxi .route-meta,
.qtaxi .fare-meta,
.qtaxi .review-meta{ display:flex; flex-wrap:wrap; gap:var(--space-3); }
.qtaxi .chip,
.qtaxi .pill,
.qtaxi .status-pill,
.qtaxi .service-pill,
.qtaxi .info-pill,
.qtaxi .tag,
.qtaxi .tag-gold,
.qtaxi .tag-dark{ display:inline-flex; align-items:center; justify-content:center; gap:var(--space-2); min-height:2.25rem; padding:.55rem .9rem; border-radius:var(--radius-pill); font-size:var(--font-size-sm); font-weight:var(--font-weight-medium); line-height:1; white-space:nowrap; }
.qtaxi .chip,
.qtaxi .pill,
.qtaxi .tag{ background:rgba(15,23,42,.05); border:1px solid rgba(15,23,42,.08); color:var(--text) !important; }
.qtaxi .pill-primary{ background:rgba(244,197,66,.14); border:1px solid rgba(244,197,66,.24); color:var(--text); }
.qtaxi .pill-dark,
.qtaxi .tag-dark{ background:rgba(15,23,42,.92); color:var(--white) !important; border:1px solid rgba(255,255,255,.08); }
.qtaxi .pill-outline{ background:transparent; border:1px solid rgba(15,23,42,.18); color:var(--text); }
.qtaxi .service-pill,
.qtaxi .tag-gold{ background:rgba(244,197,66,.12); border:1px solid rgba(244,197,66,.2); color:#7a5a00 !important; }
.qtaxi .status-pill{ background:rgba(21,127,61,.1); color:var(--success) !important; border:1px solid rgba(21,127,61,.16); }
.qtaxi .status-pill-warning{ background:rgba(181,71,8,.1); color:var(--warning) !important; border:1px solid rgba(181,71,8,.16); }
.qtaxi .status-pill-danger{ background:rgba(180,35,24,.1); color:var(--danger) !important; border:1px solid rgba(180,35,24,.16); }

.qtaxi .metric-card,
.qtaxi .feature-card,
.qtaxi .benefit-item,
.qtaxi .pricing-card,
.qtaxi .review-card,
.qtaxi .cta-card,
.qtaxi .hero-panel,
.qtaxi .faq-item,
.qtaxi .contact-card,
.qtaxi .step-card,
.qtaxi .route-card,
.qtaxi .fare-card,
.qtaxi .availability-box,
.qtaxi .response-box,
.qtaxi .action-panel,
.qtaxi .trust-item{
  background:rgba(255,255,255,.88);
  color:var(--text);
  border:1px solid rgba(15,23,42,.08);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-md);
}
.qtaxi .feature-card,
.qtaxi .benefit-item,
.qtaxi .pricing-card,
.qtaxi .review-card,
.qtaxi .cta-card,
.qtaxi .hero-panel,
.qtaxi .faq-item,
.qtaxi .contact-card,
.qtaxi .step-card,
.qtaxi .route-card,
.qtaxi .fare-card,
.qtaxi .availability-box,
.qtaxi .response-box,
.qtaxi .action-panel,
.qtaxi .trust-item{ padding:var(--space-6); }
.qtaxi .metric-card{ padding:var(--space-5); text-align:center; }
.qtaxi .metric-card strong{ display:block; color:var(--text); font-size:var(--font-size-xl); }
.qtaxi .metric-card span{ color:var(--muted); font-size:var(--font-size-sm); }
.qtaxi .mini-stats{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:var(--space-4); }
.qtaxi .mini-stat{ padding:var(--space-4); border-radius:var(--radius-lg); background:rgba(255,255,255,.82); border:1px solid rgba(15,23,42,.08); text-align:center; }
.qtaxi .fare-price{ display:inline-flex; align-items:center; min-height:2.4rem; padding:.55rem .85rem; border-radius:var(--radius-pill); background:rgba(244,197,66,.12); color:var(--text) !important; font-weight:var(--font-weight-bold); }

.qtaxi .trust-strip-bar,
.qtaxi .contact-strip,
.qtaxi .notice-strip,
.qtaxi .cta-strip,
.qtaxi .urgency-strip,
.qtaxi .info-strip,
.qtaxi .highlight-bar,
.qtaxi .value-bar,
.qtaxi .route-bar{ border-radius:var(--radius-xl); padding:var(--space-5); }
.qtaxi .info-strip{ background:linear-gradient(135deg, rgba(255,255,255,.82), rgba(255,255,255,.68)); border:1px solid rgba(15,23,42,.08); box-shadow:var(--shadow-sm); }
.qtaxi .trust-strip-bar{ display:grid; gap:var(--space-4); background:rgba(15,23,42,.95); color:var(--white); border:1px solid rgba(255,255,255,.08); }
.qtaxi .contact-strip,
.qtaxi .action-panel{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--space-4); }
.qtaxi .contact-strip{ background:linear-gradient(135deg, rgba(244,197,66,.14), rgba(244,197,66,.08)); border:1px solid rgba(244,197,66,.22); }
.qtaxi .notice-strip{ background:rgba(15,23,42,.04); border-left:4px solid var(--accent); }
.qtaxi .cta-strip{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--space-4); background:linear-gradient(135deg, var(--bg), #16233a); color:var(--white); }
.qtaxi .cta-strip :is(h2,h3,p,a){ color:var(--white) !important; }
.qtaxi .urgency-strip{ display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-3); background:rgba(180,35,24,.08); border:1px solid rgba(180,35,24,.12); color:var(--danger); }
.qtaxi .highlight-bar{ background:rgba(244,197,66,.10); border:1px solid rgba(244,197,66,.18); }
.qtaxi .value-bar{ background:rgba(15,23,42,.04); border:1px solid rgba(15,23,42,.06); }
.qtaxi .route-bar{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--space-4); background:rgba(255,255,255,.84); border:1px solid rgba(15,23,42,.08); box-shadow:var(--shadow-sm); }
.qtaxi .route-arrow{ font-weight:var(--font-weight-bold); color:var(--accent); }
.qtaxi .review-stars{ display:inline-flex; align-items:center; gap:.2rem; color:var(--accent); font-size:1rem; line-height:1; margin-bottom:var(--space-3); }
.qtaxi .review-meta{ font-size:var(--font-size-sm); color:var(--muted) !important; }
.qtaxi .response-time{ display:inline-flex; align-items:center; gap:var(--space-2); font-size:var(--font-size-sm); font-weight:var(--font-weight-semibold); color:var(--success); }
.qtaxi .availability-box{ background:linear-gradient(135deg, rgba(244,197,66,.1), rgba(255,255,255,.9)); }

.qtaxi .table-shell,
.qtaxi .table-wrapper{ overflow:hidden; border-radius:var(--radius-xl); }
.qtaxi .table-scroll{ overflow-x:auto; }
.qtaxi .sales-table,
.qtaxi .table{ width:100%; border-collapse:collapse; min-width:44rem; background:rgba(255,255,255,.88); }
.qtaxi .sales-table th,
.qtaxi .sales-table td,
.qtaxi .table th,
.qtaxi .table td{ padding:1rem; text-align:left; vertical-align:top; border-bottom:1px solid rgba(15,23,42,.08); }
.qtaxi .sales-table th,
.qtaxi .table th{ color:var(--text); font-size:var(--font-size-sm); font-weight:var(--font-weight-semibold); background:rgba(15,23,42,.03); }
.qtaxi .sales-table td,
.qtaxi .table td{ color:var(--muted); font-size:var(--font-size-sm); }

.qtaxi .faq-list{ display:grid; gap:var(--space-4); }
.qtaxi .faq-item summary{ cursor:pointer; list-style:none; color:var(--text); font-weight:var(--font-weight-semibold); padding-right:var(--space-8); position:relative; }
.qtaxi .faq-item summary::-webkit-details-marker{ display:none; }
.qtaxi .faq-item summary::after{ content:"+"; position:absolute; right:0; top:0; color:var(--accent); font-size:1.25rem; line-height:1; }
.qtaxi .faq-item[open] summary::after{ content:"−"; }
.qtaxi .faq-item p{ margin-top:var(--space-4); margin-bottom:0; }

.qtaxi .site-footer{ padding-block:var(--space-12) calc(var(--space-20) + 4.5rem); background:var(--bg); color:rgba(255,255,255,.9); }
.qtaxi .site-footer :is(h3,strong,a,small,span,p){ color:rgba(255,255,255,.88); }
.qtaxi .mobile-sticky-cta{ position:fixed; left:0; right:0; bottom:0; z-index:1100; display:grid; grid-template-columns:1fr 1fr; gap:var(--space-3); padding:var(--space-3); background:rgba(255,255,255,.9); border-top:1px solid rgba(15,23,42,.08); box-shadow:0 -12px 30px rgba(15,23,42,.08); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); }
.qtaxi .mobile-sticky-cta a{ display:inline-flex; justify-content:center; align-items:center; min-height:3.125rem; border-radius:var(--radius-pill); font-weight:var(--font-weight-semibold); }
.qtaxi .mobile-sticky-cta a:first-child{ background:var(--text); color:var(--white) !important; }
.qtaxi .mobile-sticky-cta a:last-child{ background:var(--accent); color:var(--text) !important; }
@media (min-width:64rem){ .qtaxi .mobile-sticky-cta{ display:none; } }

/* Themify contact module compatibility */
.qtaxi .contact-section{ position:relative; }
.qtaxi .contact-section .contact-card{ padding:var(--space-8); border-radius:var(--radius-2xl); background:rgba(255,255,255,.92); box-shadow:var(--shadow-lg); }
.qtaxi .contact-card{ position:relative; overflow:hidden; }
.qtaxi .contact-card::before{ content:""; position:absolute; inset:0 0 auto 0; height:.3rem; background:linear-gradient(90deg, var(--accent), #ffd86a); }
.qtaxi .contact-header{ position:relative; z-index:1; margin-bottom:var(--space-6); }
.qtaxi .contact-header h2{ margin-bottom:var(--space-2); }
.qtaxi .contact-header p{ margin-bottom:0; }
.qtaxi .taxi-form{ position:relative; z-index:1; }
.qtaxi .module.module-contact,
.qtaxi .module.module-contact.contact-style1,
.qtaxi .taxi-form .module.module-contact{ margin:0 !important; padding:0 !important; background:transparent !important; border:0 !important; box-shadow:none !important; width:100% !important; max-width:none !important; }
.qtaxi .module.module-contact .builder-contact,
.qtaxi .taxi-form .builder-contact,
.qtaxi .module.module-contact .builder-contact-fields{ display:grid !important; gap:var(--space-4) !important; margin:0 !important; padding:0 !important; width:100% !important; }
.qtaxi .module.module-contact .builder-contact-field{ display:flex !important; flex-direction:column !important; gap:var(--space-2) !important; width:100% !important; margin:0 !important; padding:0 !important; float:none !important; }
.qtaxi .module.module-contact .builder-contact-field label,
.qtaxi .module.module-contact .control-label{ display:inline-block !important; margin:0 !important; font-size:var(--font-size-sm) !important; font-weight:var(--font-weight-medium) !important; color:var(--text) !important; }
.qtaxi .module.module-contact .control-input{ width:100% !important; margin:0 !important; padding:0 !important; }
.qtaxi .module.module-contact .form-control,
.qtaxi .module.module-contact input[type="text"],
.qtaxi .module.module-contact input[type="email"],
.qtaxi .module.module-contact input[type="tel"],
.qtaxi .module.module-contact input[type="url"],
.qtaxi .module.module-contact textarea,
.qtaxi .module.module-contact select{ width:100% !important; min-height:3.125rem !important; padding:.9rem 1rem !important; border:1px solid var(--line) !important; border-radius:var(--radius-md) !important; background:rgba(255,255,255,.96) !important; color:var(--text) !important; box-shadow:none !important; outline:none !important; margin:0 !important; transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast) !important; }
.qtaxi .module.module-contact textarea{ min-height:9rem !important; resize:vertical !important; }
.qtaxi .module.module-contact .form-control::placeholder,
.qtaxi .module.module-contact input::placeholder,
.qtaxi .module.module-contact textarea::placeholder{ color:var(--muted-soft) !important; }
.qtaxi .module.module-contact .form-control:focus,
.qtaxi .module.module-contact input:focus,
.qtaxi .module.module-contact textarea:focus,
.qtaxi .module.module-contact select:focus{ border-color:rgba(244,197,66,.65) !important; box-shadow:0 0 0 4px rgba(244,197,66,.12) !important; background:var(--white) !important; }
.qtaxi .module.module-contact .required{ color:var(--danger) !important; }
.qtaxi .module.module-contact .builder-contact-field-send{ margin-top:var(--space-2) !important; }
.qtaxi .module.module-contact button.btn,
.qtaxi .module.module-contact .btn,
.qtaxi .module.module-contact .btn.btn-primary,
.qtaxi .module.module-contact button[type="submit"]{ display:inline-flex !important; justify-content:center !important; align-items:center !important; gap:var(--space-2) !important; width:100% !important; min-height:3.25rem !important; padding:1rem 1.25rem !important; border:1px solid transparent !important; border-radius:var(--radius-pill) !important; background:var(--accent) !important; color:var(--text) !important; font-weight:var(--font-weight-semibold) !important; text-align:center !important; box-shadow:0 12px 24px rgba(244,197,66,.24) !important; cursor:pointer !important; transition:transform var(--transition-fast), box-shadow var(--transition-fast), opacity var(--transition-fast) !important; }
.qtaxi .module.module-contact button.btn:hover,
.qtaxi .module.module-contact .btn:hover,
.qtaxi .module.module-contact button[type="submit"]:hover{ transform:translateY(-1px) !important; box-shadow:0 16px 32px rgba(244,197,66,.32) !important; }
.qtaxi .module.module-contact .tf_loader,
.qtaxi .module.module-contact .tf_submit_icon{ display:inline-block !important; }
.qtaxi .module.module-contact .contact-message{ margin:0 0 var(--space-4) 0 !important; padding:0 !important; font-size:var(--font-size-sm) !important; }

/* ============================================================================
   15. PAGE FOUNDATION PATTERNS
   Generic page-based structure. Not component-specific.
============================================================================ */
.qtaxi .page-shell{ min-height:100%; background:var(--page-bg, #f6f7fb); color:var(--page-text, var(--text)); }
.qtaxi .page-main{ position:relative; isolation:isolate; }
.qtaxi .page-header{ display:grid; gap:var(--space-4); max-width:var(--page-header-width, 72ch); margin-bottom:var(--space-8); }
.qtaxi .page-header--center{ margin-inline:auto; text-align:center; justify-items:center; }
.qtaxi .page-intro{ display:grid; gap:var(--space-4); max-width:var(--page-intro-width, 68ch); }
.qtaxi .page-body{ display:grid; gap:var(--space-8); }
.qtaxi .page-footer-cta{ position:relative; padding-block:var(--section-padding-top-lg); }

.qtaxi .local-hero,
.qtaxi .local-intro,
.qtaxi .local-content,
.qtaxi .local-sidebar,
.qtaxi .local-cta,
.qtaxi .local-faq,
.qtaxi .local-proof,
.qtaxi .local-footer-cta{ position:relative; }
.qtaxi .local-hero{ padding-block:clamp(3.5rem, 9vw, 7rem); }
.qtaxi .local-intro,
.qtaxi .local-content,
.qtaxi .local-proof,
.qtaxi .local-faq{ padding-block:var(--section-padding-top-lg); }
.qtaxi .local-cta,
.qtaxi .local-footer-cta{ padding-block:var(--section-padding-top-md); }
.qtaxi .local-sidebar{ padding-block:var(--section-padding-top-sm); }

.qtaxi .hero{ position:relative; overflow:hidden; padding-block:var(--hero-padding, clamp(3.5rem, 9vw, 7rem)); background:var(--hero-bg, transparent); color:var(--hero-text, var(--text)); }
.qtaxi .hero > .wrap,
.qtaxi .hero > .container,
.qtaxi .hero > .l-container{ position:relative; z-index:1; }
.qtaxi .hero__inner{ display:grid; gap:var(--space-8); align-items:center; }
.qtaxi .hero__content{ display:grid; gap:var(--space-4); max-width:var(--hero-content-width, 66ch); }
.qtaxi .hero__actions{ display:flex; flex-wrap:wrap; gap:var(--space-3); align-items:center; }
.qtaxi .hero__media{ min-width:0; }
.qtaxi .hero--center .hero__inner,
.qtaxi .hero--center .hero__content{ justify-items:center; text-align:center; margin-inline:auto; }
.qtaxi .hero--split .hero__inner{ grid-template-columns:1fr; }
@media (min-width:64rem){ .qtaxi .hero--split .hero__inner{ grid-template-columns:minmax(0, 1.08fr) minmax(20rem, .92fr); } }
.qtaxi .hero--dark{ --hero-bg:linear-gradient(135deg, var(--bg), var(--panel)); --hero-text:var(--on-dark); color:var(--on-dark); }
.qtaxi .hero--dark :is(h1,h2,h3,p,li,span,strong,a){ color:inherit; }
.qtaxi .hero--soft{ --hero-bg:linear-gradient(135deg, rgba(244,197,66,.12), rgba(255,255,255,.72)); }
.qtaxi .hero--location{ --hero-bg:linear-gradient(135deg, rgba(56,189,248,.13), rgba(244,197,66,.08)); --page-accent:#38bdf8; }
.qtaxi .hero--service{ --hero-bg:linear-gradient(135deg, rgba(244,197,66,.14), rgba(34,197,94,.08)); --page-accent:var(--accent); }

.qtaxi .content-block{ display:grid; gap:var(--space-4); }
.qtaxi .content-block--narrow{ max-width:52ch; }
.qtaxi .content-block--readable{ max-width:68ch; }
.qtaxi .content-block--wide{ max-width:90ch; }
.qtaxi .content-block--center{ margin-inline:auto; text-align:center; justify-items:center; }
.qtaxi .content-block--split{ display:grid; gap:var(--space-8); align-items:start; grid-template-columns:1fr; }
@media (min-width:64rem){ .qtaxi .content-block--split{ grid-template-columns:minmax(0,1fr) minmax(18rem,.72fr); } }
.qtaxi .content-block--dark{ background:var(--bg); color:var(--on-dark); }
.qtaxi .content-block--dark :is(h1,h2,h3,h4,p,li,span,strong,a){ color:inherit; }
.qtaxi .content-flow > * + *{ margin-top:var(--content-flow-space, var(--space-4)); }
.qtaxi .content-flow--sm{ --content-flow-space:var(--space-3); }
.qtaxi .content-flow--lg{ --content-flow-space:var(--space-6); }

.qtaxi .landing-proof,
.qtaxi .landing-routes,
.qtaxi .landing-benefits,
.qtaxi .landing-faq,
.qtaxi .landing-cta{ position:relative; padding-block:var(--section-padding-top-lg); }
.qtaxi .landing-proof__inner,
.qtaxi .landing-routes__inner,
.qtaxi .landing-benefits__inner,
.qtaxi .landing-faq__inner,
.qtaxi .landing-cta__inner{ display:grid; gap:var(--space-6); }
.qtaxi .landing-cta{ background:linear-gradient(135deg, var(--bg), var(--panel)); color:var(--on-dark); }
.qtaxi .landing-cta :is(h1,h2,h3,p,li,span,strong,a){ color:inherit; }

.qtaxi .service-list,
.qtaxi .route-list,
.qtaxi .price-list,
.qtaxi .area-list,
.qtaxi .usp-list,
.qtaxi .trust-row,
.qtaxi .availability-row{ display:grid; gap:var(--space-4); }
@media (min-width:48rem){
  .qtaxi .service-list,
  .qtaxi .route-list,
  .qtaxi .price-list,
  .qtaxi .area-list,
  .qtaxi .usp-list{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .qtaxi .trust-row,
  .qtaxi .availability-row{ grid-template-columns:repeat(3, minmax(0,1fr)); }
}
@media (min-width:64rem){
  .qtaxi .service-list{ grid-template-columns:repeat(3, minmax(0,1fr)); }
  .qtaxi .area-list{ grid-template-columns:repeat(4, minmax(0,1fr)); }
}

.qtaxi .is-dark{ background:var(--bg) !important; color:var(--on-dark) !important; }
.qtaxi .is-dark :is(h1,h2,h3,h4,p,li,span,strong,a){ color:inherit !important; }
.qtaxi .is-light{ background:var(--card) !important; color:var(--text) !important; }
.qtaxi .is-premium{ box-shadow:var(--shadow-lg); border-color:rgba(244,197,66,.28) !important; }
.qtaxi .is-compact{ padding:var(--space-4) !important; }
.qtaxi .is-spacious{ padding:var(--space-8) !important; }
.qtaxi .is-highlighted{ border-color:var(--accent) !important; box-shadow:0 0 0 4px rgba(244,197,66,.14), var(--shadow-md); }

/* ============================================================================
   16. PRINT HELPERS
============================================================================ */
.qtaxi .print-only{ display:none !important; }
@media print{
  .qtaxi{ background:#fff !important; color:#000 !important; }
  .qtaxi *{ box-shadow:none !important; text-shadow:none !important; }
  .qtaxi a{ color:#000 !important; text-decoration:underline; }
  .qtaxi .no-print,
  .qtaxi .mobile-sticky-cta,
  .qtaxi .hide-print,
  .qtaxi .site-footer{ display:none !important; }
  .qtaxi .print-only{ display:block !important; }
  .qtaxi .wrap,
  .qtaxi .container,
  .qtaxi .l-container,
  .qtaxi .l-container-narrow,
  .qtaxi .l-container-wide{ width:100% !important; max-width:none !important; padding-inline:0 !important; }
  .qtaxi .section,
  .qtaxi .page-section,
  .qtaxi .local-content,
  .qtaxi .local-intro{ padding-block:1rem !important; }
}

/* ==========================================================================
   GENERIC LAYOUT ALIASES
   Safe additions for reusable page layouts
========================================================================== */

/* Split layout: 1 kolom mobiel / 2 kolommen desktop */
.qtaxi .split{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem;
  align-items:start;
}

@media (min-width:768px){
  .qtaxi .split{
    grid-template-columns:1.2fr .8fr;
    gap:1.25rem;
  }
}

/* Media visibility helper */
.qtaxi .mediaOnly{
  display:none;
}

@media (min-width:768px){
  .qtaxi .mediaOnly{
    display:block;
  }
}

@media (min-width:48rem){
  .qtaxi{
    --container-edge:var(--edge-md);
    --grid-gap:var(--grid-gap-tablet);
  }
}

@media (min-width:64rem){
  .qtaxi{
    --container-edge:var(--edge-lg);
    --grid-gap:var(--grid-gap-desktop);
  }
}

/* Generic responsive image inside photo wrapper */
.qtaxi .photo img{
  width:100%;
  height:auto;
  display:block;
  object-fit:cover;
  border-radius:var(--radius,16px);
  box-shadow:var(--shadow,0 14px 40px rgba(0,0,0,.18));
}

/* ==========================================================================
   QTAXI — THEMIFY HARD LOCK
   Extra bescherming tegen Themify row/column/module spacing
========================================================================== */

.qtaxi :is(
  .themify_builder_content,
  .themify_builder,
  .module_row,
  .module_subrow,
  .row_inner,
  .module_column,
  .sub_column,
  .module,
  .tb_text_wrap,
  .tb_module_front,
  .module-widget,
  .module-text,
  .module-image,
  .image-wrap
){
  max-width:none !important;
  box-sizing:border-box !important;
}

.qtaxi :is(
  .themify_builder,
  .module_row,
  .module_subrow,
  .row_inner,
  .module_column,
  .sub_column,
  .module,
  .tb_module_front
){
  margin:0 !important;
  padding:0 !important;
  float:none !important;
  clear:none !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.qtaxi :is(
  .module_row,
  .module_subrow,
  .row_inner,
  .module_column,
  .sub_column,
  .module,
  .tb_text_wrap
){
  width:100% !important;
  min-width:0 !important;
}

.qtaxi :is(
  .module-image,
  .image-wrap,
  .module-image figure,
  .module-image a
){
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* ============================================================================
   QTAXI COMPONENTS v1.0
   Scope: .qtaxi

   Purpose:
   - Reusable UI components for taxi companies
   - Built to load after global-v1.3.css
   - Safe for Themify: no body/html/:root resets, no unscoped selectors
   - Uses only existing global-v1.3 tokens or local component fallbacks

   Load order:
   1. global-v1.3.css
   2. components-v1.0.css
   3. page-specific CSS only when needed

   Chapters:
   01. Component tokens
   02. Header / navigation
   03. CTA / button patterns
   04. Badges / chips / labels
   05. Cards / panels
   06. Service components
   07. Route / location components
   08. Pricing / rate components
   09. Booking / contact forms
   10. Contact / opening hours / support
   11. Reviews / trust / stats
   12. FAQ / accordion / tabs
   13. Tables / comparison
   14. SEO landing components
   15. Sticky / floating conversion UI
   16. Micro components
   17. Responsive component helpers
============================================================================ */

/* ============================================================================
   01. COMPONENT TOKENS
   Local component aliases. Scoped and safe; does not change global foundation.
============================================================================ */
.qtaxi{
  --c-accent-strong:#eab308;
  --c-accent-soft:rgba(244,197,66,.14);
  --c-accent-line:rgba(244,197,66,.28);
  --c-success-soft:rgba(21,127,61,.10);
  --c-success-line:rgba(21,127,61,.18);
  --c-danger-soft:rgba(180,35,24,.10);
  --c-danger-line:rgba(180,35,24,.18);
  --c-info-soft:rgba(37,99,235,.10);
  --c-info-line:rgba(37,99,235,.18);
  --c-card-bg:rgba(255,255,255,.92);
  --c-card-bg-soft:rgba(255,255,255,.82);
  --c-card-line:rgba(15,23,42,.08);
  --c-dark-bg:linear-gradient(135deg, var(--bg), var(--panel));
  --c-focus:0 0 0 4px rgba(244,197,66,.22);
  --c-input-height:3.125rem;
}

/* ============================================================================
   02. HEADER / NAVIGATION
   Reusable navigation blocks for all taxi pages.
============================================================================ */
.qtaxi .site-header,
.qtaxi .taxi-header{
  position:sticky;
  top:0;
  z-index:var(--z-sticky, 50);
  background:rgba(255,255,255,.92);
  border-bottom:1px solid var(--line);
  box-shadow:var(--shadow-sm);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.qtaxi .site-header--dark,
.qtaxi .taxi-header--dark{
  background:rgba(11,16,32,.94);
  color:var(--on-dark);
  border-bottom-color:rgba(238,242,255,.12);
}

.qtaxi .header-inner,
.qtaxi .taxi-header__inner{
  min-height:var(--header-height, 5rem);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
}

.qtaxi .brand,
.qtaxi .taxi-brand{
  display:flex;
  align-items:center;
  gap:var(--space-3);
  min-width:0;
  color:inherit;
  text-decoration:none;
}

.qtaxi .brand-badge,
.qtaxi .logo-mark,
.qtaxi .taxi-brand__mark{
  width:3rem;
  height:3rem;
  min-width:3rem;
  display:grid;
  place-items:center;
  border-radius:var(--radius-lg);
  background:linear-gradient(135deg, var(--accent), var(--c-accent-strong));
  color:var(--text) !important;
  font-weight:var(--font-weight-black);
  box-shadow:0 10px 24px rgba(244,197,66,.22);
}

.qtaxi .brand-title,
.qtaxi .taxi-brand__title{
  display:block;
  color:inherit;
  font-weight:var(--font-weight-bold);
  line-height:1.1;
}

.qtaxi .brand-subtitle,
.qtaxi .taxi-brand__subtitle{
  display:block;
  color:var(--muted);
  font-size:var(--font-size-sm);
  line-height:1.25;
}

.qtaxi .site-header--dark .brand-subtitle,
.qtaxi .taxi-header--dark .taxi-brand__subtitle{
  color:rgba(238,242,255,.72);
}

.qtaxi .main-nav,
.qtaxi .taxi-nav{
  display:flex;
  align-items:center;
  gap:var(--space-5);
}

.qtaxi .main-nav a,
.qtaxi .nav-link,
.qtaxi .taxi-nav__link{
  position:relative;
  color:inherit;
  text-decoration:none;
  font-weight:var(--font-weight-semibold);
  transition:color var(--transition-fast);
}

.qtaxi .main-nav a:hover,
.qtaxi .nav-link:hover,
.qtaxi .nav-link.is-active,
.qtaxi .taxi-nav__link:hover,
.qtaxi .taxi-nav__link.is-active,
.qtaxi .main-nav a[aria-current="page"]{
  color:var(--page-accent, var(--accent));
}

.qtaxi .nav-link.is-active::after,
.qtaxi .taxi-nav__link.is-active::after,
.qtaxi .main-nav a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-.45rem;
  height:2px;
  border-radius:var(--radius-pill);
  background:currentColor;
}

.qtaxi .header-cta,
.qtaxi .taxi-header__actions{
  display:flex;
  align-items:center;
  gap:var(--space-3);
}

.qtaxi .menu-toggle,
.qtaxi .taxi-menu-toggle{
  display:none;
  width:2.75rem;
  height:2.75rem;
  place-items:center;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:var(--card);
  color:var(--text);
}

.qtaxi .taxi-menu-toggle__bar,
.qtaxi .menu-toggle span{
  display:block;
  width:1.35rem;
  height:2px;
  margin:.18rem 0;
  border-radius:var(--radius-pill);
  background:currentColor;
}

.qtaxi .topbar,
.qtaxi .taxi-topbar{
  background:rgba(15,23,42,.04);
  border-bottom:1px solid var(--line);
  font-size:var(--font-size-sm);
}

.qtaxi .topbar-inner,
.qtaxi .taxi-topbar__inner{
  min-height:2.625rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
}

.qtaxi .topbar-list,
.qtaxi .taxi-topbar__list{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-4);
  color:var(--muted);
}

.qtaxi .secondary-nav{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3);
  padding-block:var(--space-3);
  border-bottom:1px solid var(--line);
}

.qtaxi .secondary-nav a{
  color:var(--muted);
  font-weight:var(--font-weight-semibold);
  text-decoration:none;
}

.qtaxi .secondary-nav a:hover,
.qtaxi .secondary-nav a.is-active{
  color:var(--page-accent, var(--accent));
}

.qtaxi .mega-menu{
  position:absolute;
  top:calc(100% + .75rem);
  left:0;
  z-index:var(--z-dropdown, 40);
  width:min(68rem, calc(100vw - 2rem));
  display:none;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:var(--space-5);
  padding:var(--space-6);
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  background:var(--card);
  color:var(--text);
  box-shadow:var(--shadow-xl);
}

.qtaxi .has-mega:hover .mega-menu,
.qtaxi .has-mega:focus-within .mega-menu,
.qtaxi .mega-menu.is-open{ display:grid; }

.qtaxi .mega-column{ display:grid; gap:var(--space-3); }
.qtaxi .mega-title{ color:var(--page-accent, var(--accent)); font-size:var(--font-size-sm); font-weight:var(--font-weight-bold); text-transform:uppercase; letter-spacing:.08em; }
.qtaxi .mega-link{ color:var(--muted); text-decoration:none; font-weight:var(--font-weight-medium); }
.qtaxi .mega-link:hover{ color:var(--page-accent, var(--accent)); }

/* ============================================================================
   03. CTA / BUTTON PATTERNS
   Variants that extend global button foundation without replacing it.
============================================================================ */
.qtaxi .btn-row,
.qtaxi .btn-group,
.qtaxi .cta-row,
.qtaxi .action-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-3);
}

.qtaxi .btn-row--center,
.qtaxi .cta-row--center{ justify-content:center; }
.qtaxi .btn-row--between,
.qtaxi .cta-row--between{ justify-content:space-between; }

.qtaxi .cta-stack{
  display:grid;
  gap:var(--space-3);
}

.qtaxi .btn--call,
.qtaxi .btnPill--call{
  background:var(--text) !important;
  color:var(--white) !important;
  border-color:rgba(15,23,42,.10) !important;
}

.qtaxi .btn--whatsapp,
.qtaxi .btnPill--whatsapp{
  background:#25d366 !important;
  color:#052e16 !important;
  border-color:rgba(5,46,22,.12) !important;
}

.qtaxi .btn--booking,
.qtaxi .btnPill--booking{
  background:linear-gradient(135deg, var(--accent), var(--c-accent-strong)) !important;
  color:var(--text) !important;
  border-color:rgba(15,23,42,.10) !important;
  box-shadow:0 12px 28px rgba(244,197,66,.24) !important;
}

.qtaxi .btn--dark,
.qtaxi .btnPill--dark{
  background:var(--bg) !important;
  color:var(--on-dark) !important;
  border-color:rgba(238,242,255,.12) !important;
}

.qtaxi .cta-inline-note{
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  color:var(--muted);
  font-size:var(--font-size-sm);
}

.qtaxi .cta-panel,
.qtaxi .final-cta-box,
.qtaxi .conversion-strip,
.qtaxi .conversion-bar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  padding:var(--space-6);
  border:1px solid var(--c-accent-line);
  border-radius:var(--radius-xl);
  background:linear-gradient(135deg, var(--c-accent-soft), rgba(255,255,255,.92));
  box-shadow:var(--shadow-md);
}

.qtaxi .cta-panel--dark,
.qtaxi .final-cta-box--dark{
  background:var(--c-dark-bg);
  color:var(--on-dark);
  border-color:rgba(238,242,255,.12);
}

.qtaxi .cta-panel--dark :is(h1,h2,h3,h4,p,span,strong,a),
.qtaxi .final-cta-box--dark :is(h1,h2,h3,h4,p,span,strong,a){ color:inherit; }

/* ============================================================================
   04. BADGES / CHIPS / LABELS
============================================================================ */
.qtaxi .badge,
.qtaxi .label,
.qtaxi .mini-label,
.qtaxi .trust-mini-badge,
.qtaxi .popular-label,
.qtaxi .eta-badge,
.qtaxi .urgency-badge,
.qtaxi .guarantee-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--space-2);
  width:fit-content;
  min-height:2rem;
  padding:.45rem .75rem;
  border-radius:var(--radius-pill);
  border:1px solid var(--line);
  background:rgba(255,255,255,.82);
  color:var(--text);
  font-size:var(--font-size-sm);
  font-weight:var(--font-weight-semibold);
  line-height:1;
  white-space:nowrap;
}

.qtaxi .badge--accent,
.qtaxi .popular-label{
  background:var(--c-accent-soft);
  border-color:var(--c-accent-line);
  color:#7a5a00 !important;
}

.qtaxi .badge--success,
.qtaxi .trust-mini-badge,
.qtaxi .guarantee-badge{
  background:var(--c-success-soft);
  border-color:var(--c-success-line);
  color:var(--success) !important;
}

.qtaxi .badge--danger,
.qtaxi .urgency-badge{
  background:var(--c-danger-soft);
  border-color:var(--c-danger-line);
  color:var(--danger) !important;
}

.qtaxi .badge--info,
.qtaxi .eta-badge{
  background:var(--c-info-soft);
  border-color:var(--c-info-line);
  color:var(--info) !important;
}

.qtaxi .badge-row,
.qtaxi .label-row,
.qtaxi .chip-row,
.qtaxi .pill-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-2);
}

.qtaxi .chip.is-active,
.qtaxi .pill.is-active,
.qtaxi .tag.is-active{
  background:var(--page-accent, var(--accent));
  color:var(--text) !important;
  border-color:rgba(15,23,42,.10);
}

/* ==========================================================================
   BRAND COMPONENT STATES
   Plaats in components.css bij buttons/cards
========================================================================== */

.qtaxi .btn--primary,
.qtaxi .btnPill--primary{
  background:var(--gradient-gold) !important;
  color:#111827 !important;
  border-color:rgba(17,24,39,.10) !important;
  box-shadow:var(--shadow-gold) !important;
}

.qtaxi .btn--primary:hover,
.qtaxi .btnPill--primary:hover,
.qtaxi .btn--primary:focus-visible,
.qtaxi .btnPill--primary:focus-visible{
  background:var(--accent-hover) !important;
  color:#111827 !important;
  box-shadow:0 18px 38px rgba(240,197,66,.34) !important;
}

.qtaxi .btn--secondary,
.qtaxi .btnPill--grey{
  background:#eef1f6 !important;
  color:var(--text) !important;
  border:1px solid var(--line) !important;
}

.qtaxi .btn--secondary:hover,
.qtaxi .btnPill--grey:hover{
  background:#e5e9f1 !important;
  color:var(--text) !important;
}

.qtaxi .card,
.qtaxi .mini,
.qtaxi .price,
.qtaxi .step,
.qtaxi .service{
  background:var(--card) !important;
  border-color:var(--line) !important;
  box-shadow:var(--shadow-md);
}

/* ============================================================================
   05. CARDS / PANELS
   Shared visuals for reusable component cards.
============================================================================ */
.qtaxi .glass-card,
.qtaxi .info-card,
.qtaxi .service-card,
.qtaxi .route-card,
.qtaxi .location-card,
.qtaxi .pricing-card,
.qtaxi .review-card,
.qtaxi .testimonial-card,
.qtaxi .stat-card,
.qtaxi .benefit-card,
.qtaxi .team-card,
.qtaxi .value-card,
.qtaxi .sidebar-card,
.qtaxi .hero-card,
.qtaxi .faq-card,
.qtaxi .score-box,
.qtaxi .availability-box,
.qtaxi .response-box{
  position:relative;
  overflow:hidden;
  background:var(--c-card-bg);
  color:var(--text);
  border:1px solid var(--c-card-line);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-md);
}

.qtaxi .glass-card > *,
.qtaxi .info-card > *,
.qtaxi .service-card > *,
.qtaxi .route-card > *,
.qtaxi .location-card > *,
.qtaxi .pricing-card > *,
.qtaxi .review-card > *,
.qtaxi .testimonial-card > *,
.qtaxi .stat-card > *,
.qtaxi .benefit-card > *,
.qtaxi .team-card > *,
.qtaxi .value-card > *,
.qtaxi .sidebar-card > *,
.qtaxi .hero-card > *,
.qtaxi .faq-card > *,
.qtaxi .score-box > *,
.qtaxi .availability-box > *,
.qtaxi .response-box > *{
  position:relative;
  z-index:1;
}

.qtaxi .glass-card::before,
.qtaxi .hero-card::before,
.qtaxi .pricing-card::before,
.qtaxi .contact-card::before,
.qtaxi .service-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:.3rem;
  background:linear-gradient(90deg, var(--page-accent, var(--accent)), var(--accent));
  opacity:.9;
}

.qtaxi .card-body,
.qtaxi .card-content,
.qtaxi .card-inner,
.qtaxi .glass-card,
.qtaxi .info-card,
.qtaxi .service-card,
.qtaxi .route-card,
.qtaxi .location-card,
.qtaxi .pricing-card,
.qtaxi .review-card,
.qtaxi .testimonial-card,
.qtaxi .stat-card,
.qtaxi .benefit-card,
.qtaxi .team-card,
.qtaxi .value-card,
.qtaxi .sidebar-card,
.qtaxi .hero-card,
.qtaxi .faq-card,
.qtaxi .score-box{
  padding:var(--space-6);
}

.qtaxi .card-compact,
.qtaxi .card-compact .card-body{ padding:var(--space-4); }
.qtaxi .card-spacious,
.qtaxi .card-spacious .card-body{ padding:var(--space-8); }

.qtaxi .card-hover,
.qtaxi .service-card,
.qtaxi .route-card,
.qtaxi .location-card,
.qtaxi .pricing-card,
.qtaxi .review-card,
.qtaxi .benefit-card{
  transition:transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}

.qtaxi .card-hover:hover,
.qtaxi .service-card:hover,
.qtaxi .route-card:hover,
.qtaxi .location-card:hover,
.qtaxi .pricing-card:hover,
.qtaxi .review-card:hover,
.qtaxi .benefit-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-lg);
  border-color:rgba(244,197,66,.28);
}

.qtaxi .card-title{
  margin:0 0 var(--space-2);
  color:var(--text);
  font-weight:var(--font-weight-bold);
}

.qtaxi .card-text,
.qtaxi .card-meta{
  color:var(--muted);
  font-size:var(--font-size-sm);
}

/* ============================================================================
   06. SERVICE COMPONENTS
============================================================================ */
.qtaxi .service-card{
  display:grid;
  gap:var(--space-4);
}

.qtaxi .service-card__icon,
.qtaxi .feature-icon,
.qtaxi .info-icon,
.qtaxi .usp-icon{
  width:3.25rem;
  height:3.25rem;
  display:grid;
  place-items:center;
  border-radius:var(--radius-lg);
  background:var(--c-accent-soft);
  border:1px solid var(--c-accent-line);
  color:var(--page-accent, var(--accent));
  font-weight:var(--font-weight-bold);
}

.qtaxi .service-card__title{ margin:0; color:var(--text); }
.qtaxi .service-card__text{ margin:0; color:var(--muted); }

.qtaxi .service-card__meta,
.qtaxi .service-meta{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-2);
}

.qtaxi .service-highlight,
.qtaxi .service-card.is-featured{
  border-color:var(--c-accent-line);
  box-shadow:var(--shadow-lg);
}

.qtaxi .vehicle-card{
  display:grid;
  gap:var(--space-4);
  padding:var(--space-6);
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  background:var(--card);
  box-shadow:var(--shadow-sm);
}

.qtaxi .vehicle-card__media{
  overflow:hidden;
  border-radius:var(--radius-lg);
  aspect-ratio:16/9;
  background:rgba(15,23,42,.04);
}

.qtaxi .vehicle-card__media img{ width:100%; height:100%; object-fit:cover; }

.qtaxi .vehicle-specs{
  display:grid;
  gap:var(--space-2);
  color:var(--muted);
  font-size:var(--font-size-sm);
}

/* ============================================================================
   07. ROUTE / LOCATION COMPONENTS
============================================================================ */
.qtaxi .route-card,
.qtaxi .city-route-block,
.qtaxi .same-route-item{
  display:grid;
  gap:var(--space-4);
}

.qtaxi .route-path,
.qtaxi .city-route-path,
.qtaxi .same-route-path{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-2);
  color:var(--text);
  font-weight:var(--font-weight-bold);
}

.qtaxi .route-arrow,
.qtaxi .city-route-arrow{
  color:var(--page-accent, var(--accent));
  font-weight:var(--font-weight-black);
}

.qtaxi .route-meta,
.qtaxi .city-route-meta,
.qtaxi .same-route-meta{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-2);
  color:var(--muted);
  font-size:var(--font-size-sm);
}

.qtaxi .route-actions,
.qtaxi .same-route-actions{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3);
}

.qtaxi .location-card{
  display:grid;
  gap:var(--space-4);
}

.qtaxi .location-card__title,
.qtaxi .area-card__title{ margin:0; }

.qtaxi .location-card__meta,
.qtaxi .area-card__meta{
  color:var(--muted);
  font-size:var(--font-size-sm);
}

.qtaxi .airport-transfer-card{
  display:grid;
  gap:var(--space-4);
  padding:var(--space-6);
  border:1px solid var(--c-info-line);
  border-radius:var(--radius-xl);
  background:linear-gradient(135deg, var(--c-info-soft), rgba(255,255,255,.9));
  box-shadow:var(--shadow-md);
}

/* ============================================================================
   08. PRICING / RATE COMPONENTS
============================================================================ */
.qtaxi .pricing-card,
.qtaxi .fare-card,
.qtaxi .rate-card{
  display:grid;
  gap:var(--space-4);
}

.qtaxi .pricing-card.is-featured,
.qtaxi .pricing-highlight{
  border-color:var(--c-accent-line);
  box-shadow:var(--shadow-xl);
}

.qtaxi .pricing-price,
.qtaxi .rate-price,
.qtaxi .fare-card__price{
  display:block;
  color:var(--text);
  font-size:clamp(1.7rem, 3vw, 2.4rem);
  font-weight:var(--font-weight-black);
  line-height:1.05;
}

.qtaxi .pricing-note,
.qtaxi .rate-note,
.qtaxi .fare-card__note{
  color:var(--muted);
  font-size:var(--font-size-sm);
}

.qtaxi .pricing-list,
.qtaxi .rate-list{
  display:grid;
  gap:var(--space-3);
  margin:0;
  padding:0;
  list-style:none;
}

.qtaxi .pricing-list li,
.qtaxi .rate-list li{
  display:flex;
  align-items:flex-start;
  gap:var(--space-2);
  color:var(--muted);
}

.qtaxi .pricing-list li::before,
.qtaxi .rate-list li::before{
  content:"✓";
  color:var(--accent2);
  font-weight:var(--font-weight-black);
}

.qtaxi .price-row,
.qtaxi .rate-row,
.qtaxi .fare-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  padding-block:var(--space-3);
  border-bottom:1px solid var(--line);
}

.qtaxi .price-row:last-child,
.qtaxi .rate-row:last-child,
.qtaxi .fare-row:last-child{ border-bottom:0; }

.qtaxi .taxi-calculator,
.qtaxi .basic-taxi-calculator,
.qtaxi .advanced-taxi-calculator{
  display:grid;
  gap:var(--space-4);
  padding:var(--space-6);
  border:1px solid var(--c-accent-line);
  border-radius:var(--radius-2xl);
  background:linear-gradient(135deg, var(--c-accent-soft), rgba(255,255,255,.92));
  box-shadow:var(--shadow-lg);
}

.qtaxi .taxi-calculator__grid,
.qtaxi .basic-taxi-calculator-grid,
.qtaxi .advanced-taxi-calculator-grid{
  display:grid;
  gap:var(--space-4);
  grid-template-columns:1fr;
}

.qtaxi .taxi-result,
.qtaxi .basic-taxi-result,
.qtaxi .advanced-taxi-total{
  display:grid;
  gap:var(--space-2);
  padding:var(--space-4);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  background:rgba(255,255,255,.82);
}

.qtaxi .taxi-result strong,
.qtaxi .basic-taxi-result strong,
.qtaxi .advanced-taxi-total strong{
  display:block;
  color:var(--text);
  font-size:clamp(1.5rem, 3vw, 2.2rem);
  line-height:1.05;
}

/* ============================================================================
   09. BOOKING / CONTACT FORMS
   Visual wrappers only; global-v1.3 keeps base input safety.
============================================================================ */
.qtaxi .form-card,
.qtaxi .generic-form,
.qtaxi .contact-form,
.qtaxi .quote-form,
.qtaxi .quick-booking-form,
.qtaxi .short-booking-form,
.qtaxi .basic-reservation-form,
.qtaxi .advanced-reservation-form,
.qtaxi .multi-step-reservation-form,
.qtaxi .basic-contact-form,
.qtaxi .advanced-contact-form,
.qtaxi .lost-items-form,
.qtaxi .complaint-form,
.qtaxi .refund-request-form{
  position:relative;
  display:grid;
  gap:var(--space-4);
  padding:var(--space-6);
  border:1px solid var(--line);
  border-radius:var(--radius-2xl);
  background:var(--c-card-bg);
  box-shadow:var(--shadow-lg);
  overflow:hidden;
}

.qtaxi .form-card::before,
.qtaxi .quick-booking-form::before,
.qtaxi .basic-reservation-form::before,
.qtaxi .advanced-reservation-form::before,
.qtaxi .multi-step-reservation-form::before,
.qtaxi .advanced-contact-form::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:.3rem;
  background:linear-gradient(90deg, var(--page-accent, var(--accent)), var(--accent2));
}

.qtaxi .form-card > *,
.qtaxi .generic-form > *,
.qtaxi .quick-booking-form > *,
.qtaxi .advanced-reservation-form > *,
.qtaxi .multi-step-reservation-form > *,
.qtaxi .advanced-contact-form > *{ position:relative; z-index:1; }

.qtaxi .form-header,
.qtaxi .booking-form-header,
.qtaxi .contact-form-header,
.qtaxi .basic-reservation-form-header,
.qtaxi .advanced-reservation-header,
.qtaxi .multi-step-form-header,
.qtaxi .basic-contact-form-header,
.qtaxi .advanced-contact-header{
  display:grid;
  gap:var(--space-2);
  margin-bottom:var(--space-2);
}

.qtaxi .form-grid,
.qtaxi .quick-booking-grid,
.qtaxi .basic-reservation-grid,
.qtaxi .basic-contact-grid{
  display:grid;
  gap:var(--space-4);
  grid-template-columns:1fr;
}

.qtaxi .form-group,
.qtaxi .form-field{
  display:grid;
  gap:var(--space-2);
  margin:0;
}

.qtaxi .form-label,
.qtaxi .form-group label{
  margin:0;
  color:var(--text);
  font-size:var(--font-size-sm);
  font-weight:var(--font-weight-semibold);
}

.qtaxi .form-control,
.qtaxi .form-group input,
.qtaxi .form-group select,
.qtaxi .form-group textarea{
  width:100%;
  min-height:var(--c-input-height);
  padding:.9rem 1rem;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:rgba(255,255,255,.96);
  color:var(--text);
  outline:none;
  transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast);
}

.qtaxi .form-control:focus,
.qtaxi .form-group input:focus,
.qtaxi .form-group select:focus,
.qtaxi .form-group textarea:focus{
  border-color:rgba(244,197,66,.65);
  box-shadow:var(--c-focus);
  background:var(--white);
}

.qtaxi .form-help,
.qtaxi .form-note,
.qtaxi .field-note,
.qtaxi .form-footer,
.qtaxi .basic-contact-meta{
  color:var(--muted);
  font-size:var(--font-size-sm);
}

.qtaxi .form-error,
.qtaxi .field-error{ color:var(--danger); font-size:var(--font-size-sm); font-weight:var(--font-weight-semibold); }
.qtaxi .form-success{ color:var(--success); font-size:var(--font-size-sm); font-weight:var(--font-weight-semibold); }

.qtaxi .form-actions,
.qtaxi .advanced-contact-actions,
.qtaxi .multi-step-form-actions{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3);
  margin-top:var(--space-2);
}

.qtaxi .full-span{ grid-column:1 / -1; }

.qtaxi .input-inline{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3);
}

.qtaxi .multi-step-form-progress{
  display:grid;
  gap:var(--space-3);
}

.qtaxi .multi-step-form-progress-track{
  width:100%;
  height:.65rem;
  border-radius:var(--radius-pill);
  background:rgba(15,23,42,.08);
  overflow:hidden;
}

.qtaxi .multi-step-form-progress-fill{
  width:var(--progress, 0%);
  height:100%;
  border-radius:var(--radius-pill);
  background:linear-gradient(90deg, var(--accent), var(--accent2));
}

.qtaxi .multi-step-form-progress-steps,
.qtaxi .progress-nav{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(7.5rem, 1fr));
  gap:var(--space-3);
}

.qtaxi .multi-step-form-step,
.qtaxi .progress-step{
  padding:var(--space-3);
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:rgba(15,23,42,.03);
  color:var(--muted);
  text-align:center;
  font-size:var(--font-size-sm);
}

.qtaxi .multi-step-form-step.is-active,
.qtaxi .multi-step-form-step.is-done,
.qtaxi .progress-step.is-active,
.qtaxi .progress-step.is-done{
  border-color:var(--c-accent-line);
  background:var(--c-accent-soft);
  color:var(--text);
}

.qtaxi .multi-step-form-panel{ display:none; gap:var(--space-4); }
.qtaxi .multi-step-form-panel.is-active{ display:grid; }

/* ============================================================================
   10. CONTACT / OPENING HOURS / SUPPORT
============================================================================ */
.qtaxi .contact-cards-grid{
  display:grid;
  gap:var(--space-4);
  grid-template-columns:1fr;
}

.qtaxi .contact-card{
  display:grid;
  gap:var(--space-4);
  padding:var(--space-6);
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  background:var(--c-card-bg);
  box-shadow:var(--shadow-md);
}

.qtaxi .contact-card-icon,
.qtaxi .whatsapp-direct-icon{
  width:3.25rem;
  height:3.25rem;
  display:grid;
  place-items:center;
  border-radius:var(--radius-lg);
  background:var(--c-accent-soft);
  border:1px solid var(--c-accent-line);
  color:var(--page-accent, var(--accent));
}

.qtaxi .contact-card-title{ margin:0; color:var(--text); font-weight:var(--font-weight-bold); }
.qtaxi .contact-card-meta{ display:grid; gap:var(--space-2); color:var(--muted); font-size:var(--font-size-sm); }
.qtaxi .contact-card-actions{ display:flex; flex-wrap:wrap; gap:var(--space-3); }

.qtaxi .opening-hours,
.qtaxi .call-now-block,
.qtaxi .whatsapp-direct,
.qtaxi .emergency-ride-cta,
.qtaxi .faq-quick-help{
  display:grid;
  gap:var(--space-4);
  padding:var(--space-6);
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  background:var(--c-card-bg);
  box-shadow:var(--shadow-md);
}

.qtaxi .call-now-block{
  border-color:var(--c-accent-line);
  background:linear-gradient(135deg, var(--c-accent-soft), rgba(255,255,255,.92));
}

.qtaxi .whatsapp-direct{
  border-color:rgba(37,211,102,.24);
  background:rgba(37,211,102,.08);
}

.qtaxi .emergency-ride-cta{
  border-color:var(--c-danger-line);
  background:var(--c-danger-soft);
}

.qtaxi .opening-hours-list,
.qtaxi .faq-quick-help-list{
  display:grid;
  gap:var(--space-3);
}

.qtaxi .opening-hours-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  padding-bottom:var(--space-3);
  border-bottom:1px solid var(--line);
}

.qtaxi .opening-hours-item:last-child{ padding-bottom:0; border-bottom:0; }
.qtaxi .opening-hours-day{ color:var(--muted); font-weight:var(--font-weight-medium); }
.qtaxi .opening-hours-time{ color:var(--text); font-weight:var(--font-weight-semibold); text-align:right; }

.qtaxi .opening-status{
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  width:fit-content;
  padding:.45rem .8rem;
  border-radius:var(--radius-pill);
  background:var(--c-success-soft);
  border:1px solid var(--c-success-line);
  color:var(--success);
  font-size:var(--font-size-sm);
  font-weight:var(--font-weight-semibold);
}

.qtaxi .opening-status-dot{
  width:.65rem;
  height:.65rem;
  border-radius:50%;
  background:currentColor;
}

.qtaxi .call-now-number{
  display:block;
  color:var(--text);
  font-size:clamp(1.6rem, 3vw, 2.25rem);
  font-weight:var(--font-weight-black);
  line-height:1.05;
  text-decoration:none;
}

.qtaxi .call-now-meta,
.qtaxi .whatsapp-direct-note{ color:var(--muted); }

.qtaxi .call-now-actions,
.qtaxi .emergency-actions{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3);
}

.qtaxi .department-selector,
.qtaxi .department-options{
  display:grid;
  gap:var(--space-3);
}

.qtaxi .department-option,
.qtaxi .faq-quick-help-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  padding:var(--space-4);
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:rgba(255,255,255,.72);
  color:var(--text);
}

.qtaxi .department-option:hover,
.qtaxi .department-option.is-selected,
.qtaxi .faq-quick-help-item:hover{
  border-color:var(--c-accent-line);
  background:var(--c-accent-soft);
}

/* ============================================================================
   11. REVIEWS / TRUST / STATS
============================================================================ */
.qtaxi .review-card,
.qtaxi .testimonial-card{
  display:grid;
  gap:var(--space-4);
}

.qtaxi .review-card blockquote,
.qtaxi .testimonial-card blockquote,
.qtaxi .mini-testimonial{
  margin:0;
  color:var(--text);
  font-size:var(--font-size-md);
}

.qtaxi .review-author,
.qtaxi .testimonial-author{
  display:grid;
  gap:var(--space-1);
  color:var(--muted);
  font-size:var(--font-size-sm);
}

.qtaxi .review-author strong,
.qtaxi .testimonial-author strong{ color:var(--text); }

.qtaxi .rating,
.qtaxi .stars,
.qtaxi .review-stars{
  display:inline-flex;
  gap:.2rem;
  color:var(--accent);
  line-height:1;
}

.qtaxi .review-summary{
  display:grid;
  gap:var(--space-4);
}

.qtaxi .stat-card,
.qtaxi .metric-card,
.qtaxi .score-box{
  text-align:center;
}

.qtaxi .stat-card strong,
.qtaxi .score-box strong,
.qtaxi .counter-value,
.qtaxi .metric-value{
  display:block;
  color:var(--text);
  font-size:clamp(1.6rem, 3vw, 2.25rem);
  font-weight:var(--font-weight-black);
  line-height:1.1;
}

.qtaxi .stat-label,
.qtaxi .counter-label,
.qtaxi .metric-label{
  color:var(--muted);
  font-size:var(--font-size-sm);
}

.qtaxi .stats-inline,
.qtaxi .trust-inline,
.qtaxi .social-proof-inline{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-4);
  align-items:center;
}

.qtaxi .trust-bar{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3);
  padding:var(--space-4);
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  background:var(--c-card-bg-soft);
}

.qtaxi .trust-card,
.qtaxi .trust-proof{
  padding:var(--space-4);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  background:var(--card);
  box-shadow:var(--shadow-sm);
}

/* ============================================================================
   12. FAQ / ACCORDION / TABS
============================================================================ */
.qtaxi .accordion,
.qtaxi .faq-list{
  display:grid;
  gap:var(--space-4);
}

.qtaxi .accordion-item,
.qtaxi .faq-card{
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  background:var(--card);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}

.qtaxi .accordion-trigger,
.qtaxi .faq-question{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  padding:var(--space-5);
  border:0;
  background:transparent;
  color:var(--text);
  text-align:left;
  font-weight:var(--font-weight-bold);
  cursor:pointer;
}

.qtaxi .accordion-trigger:hover,
.qtaxi .faq-question:hover{ color:var(--page-accent, var(--accent)); }

.qtaxi .accordion-content,
.qtaxi .faq-answer{
  display:none;
  padding:0 var(--space-5) var(--space-5);
  color:var(--muted);
}

.qtaxi .accordion-item.active .accordion-content,
.qtaxi .accordion-item.is-open .accordion-content,
.qtaxi .faq-card.active .faq-answer,
.qtaxi .faq-card.is-open .faq-answer{
  display:block;
}

.qtaxi .tabs,
.qtaxi .pill-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3);
}

.qtaxi .tab,
.qtaxi .pill-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:2.625rem;
  padding:.7rem 1rem;
  border:1px solid var(--line);
  border-radius:var(--radius-pill);
  background:var(--card);
  color:var(--muted);
  font-weight:var(--font-weight-semibold);
  cursor:pointer;
}

.qtaxi .tab.is-active,
.qtaxi .pill-tab.is-active{
  background:var(--page-accent, var(--accent));
  color:var(--text);
  border-color:rgba(15,23,42,.10);
}

/* ============================================================================
   13. TABLES / COMPARISON
============================================================================ */
.qtaxi .table-wrap,
.qtaxi .table-shell{
  overflow-x:auto;
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  background:var(--card);
  box-shadow:var(--shadow-sm);
}

.qtaxi .table{
  width:100%;
  min-width:42rem;
  border-collapse:collapse;
}

.qtaxi .table th,
.qtaxi .table td{
  padding:1rem;
  text-align:left;
  vertical-align:top;
  border-bottom:1px solid var(--line);
}

.qtaxi .table th{
  background:rgba(15,23,42,.03);
  color:var(--text);
  font-weight:var(--font-weight-bold);
}

.qtaxi .table td{ color:var(--muted); }
.qtaxi .table tr:last-child td{ border-bottom:0; }

.qtaxi .comparison-grid{
  display:grid;
  gap:var(--space-4);
  grid-template-columns:1fr;
}

.qtaxi .compare-card{
  padding:var(--space-5);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  background:var(--card);
  box-shadow:var(--shadow-sm);
}

.qtaxi .compare-card.is-featured{
  border-color:var(--c-accent-line);
  box-shadow:var(--shadow-lg);
}

/* ============================================================================
   14. SEO LANDING COMPONENTS
============================================================================ */
.qtaxi .landing-card,
.qtaxi .city-route-block,
.qtaxi .airport-route-block,
.qtaxi .local-area-card{
  display:grid;
  gap:var(--space-4);
  padding:var(--space-6);
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  background:var(--c-card-bg);
  box-shadow:var(--shadow-md);
}

.qtaxi .landing-proof-strip{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
  padding:var(--space-5);
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  background:rgba(15,23,42,.04);
}

.qtaxi .route-suggestion-list,
.qtaxi .same-route-history,
.qtaxi .local-area-options{
  display:grid;
  gap:var(--space-4);
  grid-template-columns:1fr;
}

/* ============================================================================
   15. STICKY / FLOATING CONVERSION UI
============================================================================ */
.qtaxi .mobile-cta-bar,
.qtaxi .sticky-mobile-cta{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:var(--z-fixed, 60);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-3);
  padding:var(--space-3);
  background:rgba(255,255,255,.94);
  border-top:1px solid var(--line);
  box-shadow:0 -12px 30px rgba(15,23,42,.10);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.qtaxi .mobile-cta-bar .btn,
.qtaxi .sticky-mobile-cta .btn,
.qtaxi .mobile-cta-bar a,
.qtaxi .sticky-mobile-cta a{
  width:100%;
}

.qtaxi .floating-call-btn,
.qtaxi .whatsapp-sticky{
  position:fixed;
  z-index:var(--z-fixed, 60);
  bottom:5.5rem;
  width:3.75rem;
  height:3.75rem;
  display:grid;
  place-items:center;
  border-radius:50%;
  text-decoration:none;
  box-shadow:var(--shadow-lg);
}

.qtaxi .floating-call-btn{
  right:1rem;
  background:linear-gradient(135deg, var(--accent), var(--c-accent-strong));
  color:var(--text) !important;
}

.qtaxi .whatsapp-sticky{
  left:1rem;
  background:#25d366;
  color:#fff !important;
}

.qtaxi .slidein-cta{
  position:fixed;
  right:1rem;
  bottom:1rem;
  z-index:var(--z-fixed, 60);
  width:min(24rem, calc(100% - 2rem));
  padding:var(--space-5);
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  background:var(--card);
  box-shadow:var(--shadow-xl);
  transform:translateY(130%);
  transition:transform var(--transition-slow);
}

.qtaxi .slidein-cta.is-open{ transform:translateY(0); }

.qtaxi .exit-intent-modal{
  position:fixed;
  inset:0;
  z-index:var(--z-modal, 100);
  display:none;
  align-items:center;
  justify-content:center;
  padding:var(--space-4);
  background:rgba(0,0,0,.72);
}

.qtaxi .exit-intent-modal.is-open{ display:flex; }

.qtaxi .exit-box{
  width:min(35rem, 100%);
  padding:var(--space-6);
  border-radius:var(--radius-2xl);
  background:var(--card);
  color:var(--text);
  box-shadow:var(--shadow-xl);
}

/* ============================================================================
   16. MICRO COMPONENTS
============================================================================ */
.qtaxi .divider-icon{
  display:flex;
  align-items:center;
  gap:var(--space-4);
  width:100%;
}

.qtaxi .divider-icon::before,
.qtaxi .divider-icon::after{
  content:"";
  flex:1 1 auto;
  height:1px;
  background:linear-gradient(90deg, transparent, var(--line), transparent);
}

.qtaxi .divider-icon-mark{
  width:2.375rem;
  height:2.375rem;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  background:var(--card);
  color:var(--page-accent, var(--accent));
}

.qtaxi .live-indicator,
.qtaxi .eta-indicator{
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  color:var(--success);
  font-size:var(--font-size-sm);
  font-weight:var(--font-weight-semibold);
}

.qtaxi .live-indicator::before,
.qtaxi .eta-indicator::before{
  content:"";
  width:.6rem;
  height:.6rem;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 0 .25rem rgba(21,127,61,.12);
}

.qtaxi .tooltip{
  position:relative;
  display:inline-flex;
  align-items:center;
  cursor:help;
}

.qtaxi .tooltip::after{
  content:attr(data-tooltip);
  position:absolute;
  left:50%;
  bottom:calc(100% + .5rem);
  width:max-content;
  max-width:16rem;
  transform:translateX(-50%);
  padding:.5rem .7rem;
  border-radius:var(--radius-sm);
  background:var(--text);
  color:var(--white);
  font-size:var(--font-size-xs);
  opacity:0;
  pointer-events:none;
  transition:opacity var(--transition-fast);
}

.qtaxi .tooltip:hover::after,
.qtaxi .tooltip:focus-within::after{ opacity:1; }

/* ============================================================================
   17. RESPONSIVE COMPONENT HELPERS
============================================================================ */
@media (min-width:40rem){
  .qtaxi .form-grid,
  .qtaxi .quick-booking-grid,
  .qtaxi .basic-reservation-grid,
  .qtaxi .basic-contact-grid,
  .qtaxi .taxi-calculator__grid,
  .qtaxi .basic-taxi-calculator-grid,
  .qtaxi .advanced-taxi-calculator-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .qtaxi .contact-cards-grid,
  .qtaxi .department-options,
  .qtaxi .faq-quick-help-list,
  .qtaxi .route-suggestion-list,
  .qtaxi .same-route-history,
  .qtaxi .local-area-options,
  .qtaxi .comparison-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .qtaxi .cta-stack{ grid-auto-flow:column; justify-content:start; }
}

@media (min-width:48rem){
  .qtaxi .review-summary,
  .qtaxi .trust-grid,
  .qtaxi .footer-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .qtaxi .split-section,
  .qtaxi .media-block{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:var(--space-8);
    align-items:center;
  }
}

@media (min-width:64rem){
  .qtaxi .contact-cards-grid,
  .qtaxi .department-options,
  .qtaxi .faq-quick-help-list,
  .qtaxi .comparison-grid,
  .qtaxi .same-route-history{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }

  .qtaxi .review-summary,
  .qtaxi .footer-grid{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
}

@media (min-width:68.75rem){
  .qtaxi .mobile-cta-bar,
  .qtaxi .sticky-mobile-cta,
  .qtaxi .floating-call-btn,
  .qtaxi .whatsapp-sticky{ display:none; }
}

@media (max-width:68.6875rem){
  .qtaxi .main-nav,
  .qtaxi .taxi-nav,
  .qtaxi .header-cta,
  .qtaxi .taxi-header__actions{ display:none; }

  .qtaxi .menu-toggle,
  .qtaxi .taxi-menu-toggle{ display:grid; }

  .qtaxi .main-nav.is-open,
  .qtaxi .taxi-nav.is-open{
    position:absolute;
    top:calc(var(--header-height, 5rem) + .5rem);
    left:1rem;
    right:1rem;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    padding:var(--space-4);
    border:1px solid var(--line);
    border-radius:var(--radius-xl);
    background:var(--card);
    color:var(--text);
    box-shadow:var(--shadow-xl);
  }

  .qtaxi .mega-menu{
    position:static;
    width:100%;
    grid-template-columns:1fr;
    margin-top:var(--space-3);
    box-shadow:var(--shadow-md);
  }

  .qtaxi .btn-group,
  .qtaxi .cta-row,
  .qtaxi .action-row,
  .qtaxi .form-actions,
  .qtaxi .input-inline{
    align-items:stretch;
  }
}

/* ============================================================================
   QTAXI COMPONENTS v1.1 — BACKWARD COMPATIBILITY ALIAS LAYER
   Purpose: add exact legacy/global component names without removing or changing
   existing v1.0 component selectors. Safe to load after global-v1.3.css.
   Scope: .qtaxi only. Themify-safe.
============================================================================ */

/* 01. Button aliases
   Exact names from earlier global/component inventory.
============================================================================ */
.qtaxi :where(a, button).btn--grey,
.qtaxi :where(a, button).btnPill--grey{
  background:#eef0f4 !important;
  border-color:rgba(15,23,42,.12) !important;
  color:var(--text) !important;
}

.qtaxi :where(a, button).btn--grey:hover,
.qtaxi :where(a, button).btnPill--grey:hover{
  background:#e6e9ef !important;
  color:var(--text) !important;
}

.qtaxi :where(a, button).btnPill,
.qtaxi :where(a, button).btnPill--primary,
.qtaxi :where(a, button).btnPill--grey,
.qtaxi :where(a, button).btnPill--outline{
  -webkit-appearance:none;
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  min-height:2.875rem;
  padding:.85rem 1.1rem;
  border-radius:var(--radius-pill, 999px);
  border:1px solid transparent;
  font-weight:var(--font-weight-semibold, 600);
  line-height:1;
  text-decoration:none !important;
  cursor:pointer;
  white-space:nowrap;
  transition:background var(--transition-fast, 180ms ease), border-color var(--transition-fast, 180ms ease), color var(--transition-fast, 180ms ease), transform var(--transition-fast, 180ms ease), box-shadow var(--transition-fast, 180ms ease);
}

.qtaxi :where(a, button).btnPill--primary{
  background:var(--accent) !important;
  border-color:rgba(15,23,42,.10) !important;
  color:var(--text) !important;
  box-shadow:0 10px 26px rgba(0,0,0,.14);
}

.qtaxi :where(a, button).btnPill--primary:hover{
  filter:brightness(.98);
  color:var(--text) !important;
}

.qtaxi :where(a, button).btnPill--outline{
  background:transparent !important;
  border-color:rgba(15,23,42,.25) !important;
  color:var(--text) !important;
}

.qtaxi :where(a, button).btnPill--outline:hover{
  background:rgba(15,23,42,.04) !important;
}

/* 02. Card aliases
   Safe reusable card surfaces for taxi pages.
============================================================================ */
.qtaxi .feature-card,
.qtaxi .benefit-item,
.qtaxi .cta-card,
.qtaxi .hero-panel,
.qtaxi .trust-item,
.qtaxi .metric-card,
.qtaxi .fare-card{
  position:relative;
  overflow:hidden;
  background:var(--card);
  color:var(--text);
  border:1px solid var(--line);
  border-radius:var(--radius-xl, var(--radius));
  box-shadow:var(--shadow-md, 0 12px 30px rgba(15,23,42,.10));
}

.qtaxi .feature-card,
.qtaxi .benefit-item,
.qtaxi .cta-card,
.qtaxi .hero-panel,
.qtaxi .trust-item,
.qtaxi .fare-card{
  padding:var(--space-6, 1.5rem);
}

.qtaxi .metric-card{
  padding:var(--space-5, 1.25rem);
  text-align:center;
}

.qtaxi .metric-card strong,
.qtaxi .metric-card .metric-value{
  display:block;
  color:var(--text);
  font-size:var(--font-size-xl, 1.25rem);
  line-height:1.15;
}

.qtaxi .metric-card span,
.qtaxi .metric-card .metric-label{
  color:var(--muted);
  font-size:var(--font-size-sm, .875rem);
}

.qtaxi .hero-panel{
  background:linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.78));
}

.qtaxi .cta-card{
  background:linear-gradient(135deg, rgba(244,197,66,.14), rgba(255,255,255,.92));
}

/* 03. Form aliases
   Keep generic forms aligned with global-v1.3 and Themify contact module.
============================================================================ */
.qtaxi .form-stack,
.qtaxi .taxi-form,
.qtaxi .booking-form{
  display:grid;
  gap:var(--space-4, 1rem);
}

.qtaxi .form-field{
  display:grid;
  gap:var(--space-2, .5rem);
}

.qtaxi .form-field label{
  color:var(--text);
  font-size:var(--font-size-sm, .875rem);
  font-weight:var(--font-weight-medium, 500);
}

.qtaxi .contact-section{
  position:relative;
}

.qtaxi .module.module-contact,
.qtaxi .module.module-contact.contact-style1,
.qtaxi .taxi-form .module.module-contact{
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  width:100% !important;
  max-width:none !important;
}

.qtaxi .module.module-contact .builder-contact,
.qtaxi .module.module-contact .builder-contact-fields{
  display:grid !important;
  gap:var(--space-4, 1rem) !important;
  margin:0 !important;
  padding:0 !important;
  width:100% !important;
}

.qtaxi .module.module-contact .builder-contact-field{
  display:flex !important;
  flex-direction:column !important;
  gap:var(--space-2, .5rem) !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
}

.qtaxi .module.module-contact .form-control,
.qtaxi .module.module-contact input[type="text"],
.qtaxi .module.module-contact input[type="email"],
.qtaxi .module.module-contact input[type="tel"],
.qtaxi .module.module-contact input[type="url"],
.qtaxi .module.module-contact textarea,
.qtaxi .module.module-contact select{
  width:100% !important;
  min-height:3.125rem !important;
  padding:.9rem 1rem !important;
  border:1px solid var(--line) !important;
  border-radius:var(--radius-md, 1rem) !important;
  background:rgba(255,255,255,.96) !important;
  color:var(--text) !important;
  box-shadow:none !important;
  outline:none !important;
  margin:0 !important;
}

/* 04. Pills / tags aliases
============================================================================ */
.qtaxi .pill-primary,
.qtaxi .service-pill,
.qtaxi .tag-gold,
.qtaxi .fare-price{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--space-2, .5rem);
  min-height:2.25rem;
  padding:.55rem .9rem;
  border-radius:var(--radius-pill, 999px);
  font-size:var(--font-size-sm, .875rem);
  font-weight:var(--font-weight-medium, 500);
  line-height:1;
  white-space:nowrap;
  background:rgba(244,197,66,.12);
  border:1px solid rgba(244,197,66,.2);
  color:#7a5a00 !important;
}

.qtaxi .pill-dark,
.qtaxi .tag-dark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--space-2, .5rem);
  min-height:2.25rem;
  padding:.55rem .9rem;
  border-radius:var(--radius-pill, 999px);
  background:rgba(15,23,42,.92);
  color:var(--white, #fff) !important;
  border:1px solid rgba(255,255,255,.08);
}

.qtaxi .pill-outline{
  background:transparent;
  border:1px solid rgba(15,23,42,.18);
  color:var(--text);
}

.qtaxi .fare-price{
  color:var(--text) !important;
  font-weight:var(--font-weight-bold, 700);
}

/* 05. List and group aliases
============================================================================ */
.qtaxi .chips,
.qtaxi .pill-group,
.qtaxi .tag-list{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3, .75rem);
  align-items:center;
}

.qtaxi .chips{ gap:var(--space-2, .5rem); }

.qtaxi .chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:2.125rem;
  padding:.45rem .8rem;
  border-radius:var(--radius-pill, 999px);
  background:var(--card);
  border:1px solid var(--line);
  color:var(--text);
  font-size:var(--font-size-sm, .875rem);
  font-weight:var(--font-weight-semibold, 600);
}

/* 06. Strips / bars aliases
   Broad reusable horizontal blocks for trust, CTA, route and notice sections.
============================================================================ */
.qtaxi .trust-strip-bar,
.qtaxi .contact-strip,
.qtaxi .notice-strip,
.qtaxi .cta-strip,
.qtaxi .urgency-strip,
.qtaxi .info-strip,
.qtaxi .highlight-bar,
.qtaxi .value-bar,
.qtaxi .route-bar{
  border-radius:var(--radius-xl, var(--radius));
  padding:var(--space-5, 1.25rem);
}

.qtaxi .info-strip{
  background:linear-gradient(135deg, rgba(255,255,255,.88), rgba(255,255,255,.70));
  border:1px solid rgba(15,23,42,.08);
  box-shadow:var(--shadow-sm, 0 6px 18px rgba(15,23,42,.06));
}

.qtaxi .trust-strip-bar{
  display:grid;
  gap:var(--space-4, 1rem);
  background:rgba(15,23,42,.95);
  color:var(--white, #fff);
  border:1px solid rgba(255,255,255,.08);
}

.qtaxi .trust-strip-bar :is(h1,h2,h3,h4,p,li,span,strong,a){
  color:inherit;
}

.qtaxi .contact-strip,
.qtaxi .route-bar,
.qtaxi .cta-strip{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4, 1rem);
}

.qtaxi .contact-strip{
  background:linear-gradient(135deg, rgba(244,197,66,.14), rgba(244,197,66,.08));
  border:1px solid rgba(244,197,66,.22);
}

.qtaxi .notice-strip{
  background:rgba(15,23,42,.04);
  border-left:4px solid var(--accent);
}

.qtaxi .cta-strip{
  background:linear-gradient(135deg, var(--bg), var(--panel));
  color:var(--white, #fff);
}

.qtaxi .cta-strip :is(h1,h2,h3,h4,p,li,span,strong,a){
  color:inherit !important;
}

.qtaxi .urgency-strip{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-3, .75rem);
  background:rgba(180,35,24,.08);
  border:1px solid rgba(180,35,24,.12);
  color:var(--danger, #b42318);
}

.qtaxi .highlight-bar{
  background:rgba(244,197,66,.10);
  border:1px solid rgba(244,197,66,.18);
}

.qtaxi .value-bar{
  background:rgba(15,23,42,.04);
  border:1px solid rgba(15,23,42,.06);
}

.qtaxi .route-bar{
  background:rgba(255,255,255,.86);
  border:1px solid rgba(15,23,42,.08);
  box-shadow:var(--shadow-sm, 0 6px 18px rgba(15,23,42,.06));
}

/* 07. FAQ / reviews aliases
============================================================================ */
.qtaxi .faq-list{
  display:grid;
  gap:var(--space-4, 1rem);
}

.qtaxi .faq-item{
  background:var(--card);
  color:var(--text);
  border:1px solid var(--line);
  border-radius:var(--radius-xl, var(--radius));
  box-shadow:var(--shadow-sm, 0 6px 18px rgba(15,23,42,.06));
  padding:var(--space-5, 1.25rem);
}

.qtaxi .review-stars{
  display:inline-flex;
  align-items:center;
  gap:.2rem;
  color:var(--accent);
  font-size:1rem;
  line-height:1;
  margin-bottom:var(--space-3, .75rem);
}

.qtaxi .review-meta{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3, .75rem);
  color:var(--muted) !important;
  font-size:var(--font-size-sm, .875rem);
}

/* 08. Table aliases
============================================================================ */
.qtaxi .table-shell{
  overflow:hidden;
  border-radius:var(--radius-xl, var(--radius));
  border:1px solid var(--line);
  background:var(--card);
  box-shadow:var(--shadow-sm, 0 6px 18px rgba(15,23,42,.06));
}

.qtaxi .table-scroll{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.qtaxi .sales-table{
  width:100%;
  border-collapse:collapse;
  min-width:44rem;
  background:rgba(255,255,255,.88);
}

.qtaxi .sales-table th,
.qtaxi .sales-table td{
  padding:1rem;
  text-align:left;
  vertical-align:top;
  border-bottom:1px solid rgba(15,23,42,.08);
}

.qtaxi .sales-table th{
  color:var(--text);
  font-size:var(--font-size-sm, .875rem);
  font-weight:var(--font-weight-semibold, 600);
  background:rgba(15,23,42,.03);
}

.qtaxi .sales-table td{
  color:var(--muted);
  font-size:var(--font-size-sm, .875rem);
}

.qtaxi .sales-table tr:last-child td{
  border-bottom:0;
}

/* 09. Footer / sticky CTA aliases
============================================================================ */
.qtaxi .mobile-sticky-cta{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:1100;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-3, .75rem);
  padding:var(--space-3, .75rem);
  background:rgba(255,255,255,.92);
  border-top:1px solid rgba(15,23,42,.08);
  box-shadow:0 -12px 30px rgba(15,23,42,.08);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.qtaxi .mobile-sticky-cta a{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:3.125rem;
  border-radius:var(--radius-pill, 999px);
  font-weight:var(--font-weight-semibold, 600);
  text-decoration:none !important;
}

.qtaxi .mobile-sticky-cta a:first-child{
  background:var(--text);
  color:var(--white, #fff) !important;
}

.qtaxi .mobile-sticky-cta a:last-child{
  background:var(--accent);
  color:var(--text) !important;
}

@media (min-width:64rem){
  .qtaxi .mobile-sticky-cta{ display:none; }
}


/* ============================================================================
   QTAXI COMPONENTS v1.2 — UI COMPONENT EXPANSION LAYER
   Purpose: additive component variants only. No existing v1.1 selectors removed.
   Scope: .qtaxi only, Themify-safe.
============================================================================ */

/* 01. ACCORDION — 5 variants */
.qtaxi .accordion,
.qtaxi .accordion-list{display:grid;gap:var(--space-4,1rem)}
.qtaxi .accordion-item{border:1px solid var(--line,rgba(15,23,42,.12));border-radius:var(--radius-lg,1.25rem);background:var(--card,#fff);overflow:hidden;box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06))}
.qtaxi .accordion-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;background:transparent;border:0;color:var(--text,#0f172a);font-weight:700;text-align:left;cursor:pointer}
.qtaxi .accordion-content{padding:0 1.15rem 1.15rem;color:var(--muted,#6b7280)}
.qtaxi .accordion-item:not(.is-open) .accordion-content{display:none}
.qtaxi .accordion--compact .accordion-trigger{padding:.8rem 1rem}
.qtaxi .accordion--spacious .accordion-trigger{padding:1.25rem 1.5rem}
.qtaxi .accordion--borderless .accordion-item{border-color:transparent;box-shadow:none}
.qtaxi .accordion--dark .accordion-item{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .accordion--dark .accordion-trigger,.qtaxi .accordion--dark .accordion-content{color:inherit}

/* 02. ALERTS — 5 variants */
.qtaxi .alert{display:flex;align-items:flex-start;gap:var(--space-3,.75rem);padding:1rem 1.15rem;border-radius:var(--radius-lg,1.25rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);color:var(--text,#0f172a)}
.qtaxi .alert--success{background:rgba(21,127,61,.10);border-color:rgba(21,127,61,.18);color:var(--success,#157f3d)}
.qtaxi .alert--warning{background:rgba(181,71,8,.10);border-color:rgba(181,71,8,.18);color:var(--warning,#b54708)}
.qtaxi .alert--danger{background:rgba(180,35,24,.10);border-color:rgba(180,35,24,.18);color:var(--danger,#b42318)}
.qtaxi .alert--info{background:rgba(56,189,248,.10);border-color:rgba(56,189,248,.18);color:#0369a1}
.qtaxi .alert--dark{background:var(--bg,#0b1020);border-color:rgba(238,242,255,.14);color:var(--on-dark,#eef2ff)}

/* 03. BOXES — 5 variants */
.qtaxi .box{padding:var(--space-6,1.5rem);border-radius:var(--radius-xl,1.5rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06))}
.qtaxi .box--soft{background:rgba(15,23,42,.04)}
.qtaxi .box--accent{background:rgba(244,197,66,.12);border-color:rgba(244,197,66,.24)}
.qtaxi .box--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .box--outline{background:transparent}
.qtaxi .box--flush{padding:0;overflow:hidden}

/* 04. BUTTONS — 10 extra variants */
.qtaxi .btn--dark{background:var(--bg,#0b1020)!important;color:var(--on-dark,#eef2ff)!important}
.qtaxi .btn--light{background:var(--card,#fff)!important;color:var(--text,#0f172a)!important;border-color:var(--line,rgba(15,23,42,.12))!important}
.qtaxi .btn--success{background:var(--success,#157f3d)!important;color:#fff!important}
.qtaxi .btn--danger{background:var(--danger,#b42318)!important;color:#fff!important}
.qtaxi .btn--whatsapp{background:#25d366!important;color:#08230f!important}
.qtaxi .btn--phone{background:var(--text,#0f172a)!important;color:#fff!important}
.qtaxi .btn--sm{padding:.65rem .9rem!important;font-size:var(--font-size-sm,.875rem)!important}
.qtaxi .btn--lg{padding:1rem 1.45rem!important;font-size:var(--font-size-lg,1.125rem)!important}
.qtaxi .btn--icon{width:3rem;height:3rem;padding:0!important;border-radius:50%!important}
.qtaxi .btn-row{display:flex;flex-wrap:wrap;gap:var(--space-3,.75rem);align-items:center}

/* 05. CALL-OUTS — 5 variants */
.qtaxi .callout{position:relative;padding:var(--space-6,1.5rem);border-radius:var(--radius-xl,1.5rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);box-shadow:var(--shadow-md,0 12px 30px rgba(15,23,42,.10))}
.qtaxi .callout::before{content:"";position:absolute;inset:0 auto 0 0;width:.3rem;background:var(--page-accent,var(--accent,#f4c542));border-radius:inherit}
.qtaxi .callout--accent{background:rgba(244,197,66,.10)}
.qtaxi .callout--success{--page-accent:var(--success,#157f3d)}
.qtaxi .callout--warning{--page-accent:var(--warning,#b54708)}
.qtaxi .callout--danger{--page-accent:var(--danger,#b42318)}
.qtaxi .callout--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}

/* 06. DIVIDERS — 5 variants */
.qtaxi .divider{height:1px;background:var(--line,rgba(15,23,42,.12));border:0;margin-block:var(--space-6,1.5rem)}
.qtaxi .divider--thick{height:3px}
.qtaxi .divider--accent{background:var(--accent,#f4c542)}
.qtaxi .divider--gradient{background:linear-gradient(90deg,transparent,var(--accent,#f4c542),transparent)}
.qtaxi .divider--dashed{height:0;border-top:1px dashed var(--line,rgba(15,23,42,.12))}
.qtaxi .divider--spacious{margin-block:var(--space-12,3rem)}

/* 07. FANCY HEADING — 5 variants */
.qtaxi .fancy-heading{display:grid;gap:var(--space-3,.75rem);max-width:72ch}
.qtaxi .fancy-heading__eyebrow{color:var(--accent,#f4c542);font-size:var(--font-size-xs,.75rem);font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.qtaxi .fancy-heading__title{margin:0}
.qtaxi .fancy-heading__text{margin:0;color:var(--muted,#6b7280)}
.qtaxi .fancy-heading--center{text-align:center;justify-items:center;margin-inline:auto}
.qtaxi .fancy-heading--line::after{content:"";width:4rem;height:.2rem;border-radius:999px;background:var(--accent,#f4c542)}
.qtaxi .fancy-heading--dark{color:var(--on-dark,#eef2ff)}
.qtaxi .fancy-heading--dark :is(h1,h2,h3,p){color:inherit}

/* 08. FEATURE BOX — 5 variants */
.qtaxi .feature-box{display:grid;gap:var(--space-3,.75rem);padding:var(--space-6,1.5rem);border:1px solid var(--line,rgba(15,23,42,.12));border-radius:var(--radius-xl,1.5rem);background:var(--card,#fff);box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06))}
.qtaxi .feature-box__icon{width:3rem;height:3rem;display:grid;place-items:center;border-radius:var(--radius-lg,1.25rem);background:rgba(244,197,66,.14);color:var(--accent,#f4c542)}
.qtaxi .feature-box--horizontal{grid-template-columns:auto 1fr;align-items:start}
.qtaxi .feature-box--center{text-align:center;justify-items:center}
.qtaxi .feature-box--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .feature-box--accent{border-color:rgba(244,197,66,.28);background:rgba(244,197,66,.08)}
.qtaxi .feature-box--minimal{box-shadow:none;background:transparent}

/* 09. GALLERY — 5 variants */
.qtaxi .gallery{display:grid;gap:var(--space-4,1rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))}
.qtaxi .gallery-item{overflow:hidden;border-radius:var(--radius-xl,1.5rem);background:var(--card,#fff);box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06))}
.qtaxi .gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base,240ms ease)}
.qtaxi .gallery-item:hover img{transform:scale(1.04)}
.qtaxi .gallery--compact{gap:var(--space-2,.5rem)}
.qtaxi .gallery--wide{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}
.qtaxi .gallery--square .gallery-item{aspect-ratio:1}
.qtaxi .gallery--video .gallery-item{aspect-ratio:16/9}
.qtaxi .gallery--rounded .gallery-item{border-radius:var(--radius-2xl,2rem)}

/* 10. ICON BOX + ICONS — 10 variants */
.qtaxi .icon-box{display:flex;gap:var(--space-3,.75rem);align-items:flex-start}
.qtaxi .icon{width:2.5rem;height:2.5rem;display:inline-grid;place-items:center;flex:0 0 auto;border-radius:var(--radius-lg,1.25rem);background:rgba(244,197,66,.14);color:var(--accent,#f4c542)}
.qtaxi .icon--sm{width:2rem;height:2rem}
.qtaxi .icon--lg{width:3.25rem;height:3.25rem}
.qtaxi .icon--xl{width:4rem;height:4rem}
.qtaxi .icon--circle{border-radius:50%}
.qtaxi .icon--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .icon--success{background:rgba(21,127,61,.10);color:var(--success,#157f3d)}
.qtaxi .icon--danger{background:rgba(180,35,24,.10);color:var(--danger,#b42318)}
.qtaxi .icon--outline{background:transparent;border:1px solid currentColor}
.qtaxi .icon-box--center{display:grid;justify-items:center;text-align:center}

/* 11. IMAGE BOXES / IMAGE PRO — 5 variants */
.qtaxi .image-box,.qtaxi .image-pro{position:relative;overflow:hidden;border-radius:var(--radius-xl,1.5rem);background:var(--card,#fff);box-shadow:var(--shadow-md,0 12px 30px rgba(15,23,42,.10))}
.qtaxi .image-box img,.qtaxi .image-pro img{width:100%;height:100%;object-fit:cover}
.qtaxi .image-box__content,.qtaxi .image-pro__content{padding:var(--space-5,1.25rem)}
.qtaxi .image-box--overlay .image-box__content,.qtaxi .image-pro--overlay .image-pro__content{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78));color:#fff}
.qtaxi .image-box--circle{border-radius:50%;aspect-ratio:1}
.qtaxi .image-pro--zoom img{transition:transform var(--transition-base,240ms ease)}
.qtaxi .image-pro--zoom:hover img{transform:scale(1.05)}
.qtaxi .image-pro--frame{padding:.5rem;border:1px solid var(--line,rgba(15,23,42,.12))}

/* 12. LINK BLOCK — 5 variants */
.qtaxi .link-block{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4,1rem);padding:1rem 1.1rem;border-radius:var(--radius-lg,1.25rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);color:var(--text,#0f172a);text-decoration:none;box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06))}
.qtaxi .link-block:hover{border-color:var(--accent,#f4c542)}
.qtaxi .link-block--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .link-block--accent{background:rgba(244,197,66,.12)}
.qtaxi .link-block--compact{padding:.75rem .9rem}
.qtaxi .link-block--stack{display:grid;justify-content:stretch}

/* 13. LOGIN / SIGN-UP BOXES — 5 variants */
.qtaxi .login-box,.qtaxi .signup-box,.qtaxi .sign-up-form{display:grid;gap:var(--space-4,1rem);padding:var(--space-6,1.5rem);border-radius:var(--radius-xl,1.5rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);box-shadow:var(--shadow-md,0 12px 30px rgba(15,23,42,.10))}
.qtaxi .login-box--compact,.qtaxi .signup-box--compact{padding:var(--space-4,1rem)}
.qtaxi .login-box--dark,.qtaxi .signup-box--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .signup-box--accent{background:linear-gradient(135deg,rgba(244,197,66,.16),rgba(255,255,255,.90))}
.qtaxi .login-box--center,.qtaxi .signup-box--center{text-align:center;justify-items:center}

/* 14. GOOGLE MAP BOX / MAPS PRO — 5 variants */
.qtaxi .map-box,.qtaxi .google-map-box,.qtaxi .maps-pro-box{position:relative;overflow:hidden;min-height:18rem;border-radius:var(--radius-xl,1.5rem);border:1px solid var(--line,rgba(15,23,42,.12));background:rgba(15,23,42,.04);box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06))}
.qtaxi .map-box iframe,.qtaxi .google-map-box iframe,.qtaxi .maps-pro-box iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.qtaxi .map-box--sm{min-height:14rem}
.qtaxi .map-box--lg{min-height:28rem}
.qtaxi .map-box--flat{box-shadow:none}
.qtaxi .map-box--square{aspect-ratio:1;min-height:0}
.qtaxi .maps-pro-box__overlay{position:absolute;left:1rem;right:1rem;bottom:1rem;padding:1rem;border-radius:var(--radius-lg,1.25rem);background:rgba(255,255,255,.92);box-shadow:var(--shadow-md,0 12px 30px rgba(15,23,42,.10))}

/* 15. OPT-IN FORM — 5 variants */
.qtaxi .optin-form{display:grid;gap:var(--space-4,1rem);padding:var(--space-6,1.5rem);border-radius:var(--radius-xl,1.5rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);box-shadow:var(--shadow-md,0 12px 30px rgba(15,23,42,.10))}
.qtaxi .optin-form--inline{grid-template-columns:1fr;align-items:end}
.qtaxi .optin-form--accent{background:rgba(244,197,66,.10);border-color:rgba(244,197,66,.24)}
.qtaxi .optin-form--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .optin-form--compact{padding:var(--space-4,1rem)}
.qtaxi .optin-form__note{font-size:var(--font-size-sm,.875rem);color:var(--muted,#6b7280)}
@media(min-width:48rem){.qtaxi .optin-form--inline{grid-template-columns:1fr auto}}

/* 16. OVERLAY CONTENT — 5 variants */
.qtaxi .overlay-content{position:relative;overflow:hidden;border-radius:var(--radius-xl,1.5rem)}
.qtaxi .overlay-content__media{position:absolute;inset:0}
.qtaxi .overlay-content__media img{width:100%;height:100%;object-fit:cover}
.qtaxi .overlay-content__body{position:relative;z-index:1;padding:var(--space-8,2rem);background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.16));color:#fff}
.qtaxi .overlay-content--center .overlay-content__body{text-align:center}
.qtaxi .overlay-content--bottom .overlay-content__body{display:flex;align-items:flex-end;min-height:22rem}
.qtaxi .overlay-content--light .overlay-content__body{background:linear-gradient(90deg,rgba(255,255,255,.92),rgba(255,255,255,.36));color:var(--text,#0f172a)}
.qtaxi .overlay-content--tall .overlay-content__body{min-height:30rem}

/* 17. POST — 5 variants */
.qtaxi .post-card{display:grid;overflow:hidden;border-radius:var(--radius-xl,1.5rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06))}
.qtaxi .post-card__media{aspect-ratio:16/9;overflow:hidden}
.qtaxi .post-card__media img{width:100%;height:100%;object-fit:cover}
.qtaxi .post-card__body{display:grid;gap:var(--space-3,.75rem);padding:var(--space-5,1.25rem)}
.qtaxi .post-card--horizontal{grid-template-columns:1fr}
.qtaxi .post-card--featured{border-color:rgba(244,197,66,.32);box-shadow:var(--shadow-lg,0 18px 60px rgba(15,23,42,.14))}
.qtaxi .post-card--compact .post-card__body{padding:var(--space-4,1rem)}
@media(min-width:48rem){.qtaxi .post-card--horizontal{grid-template-columns:minmax(12rem,.8fr) 1.2fr}.qtaxi .post-card--horizontal .post-card__media{aspect-ratio:auto}}

/* 18. SERVICE MENU — 5 variants */
.qtaxi .service-menu{display:grid;gap:var(--space-3,.75rem)}
.qtaxi .service-menu__item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4,1rem);padding:1rem;border-radius:var(--radius-lg,1.25rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);color:var(--text,#0f172a)}
.qtaxi .service-menu__item:hover{border-color:var(--accent,#f4c542)}
.qtaxi .service-menu--grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
.qtaxi .service-menu--dark .service-menu__item{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .service-menu--compact .service-menu__item{padding:.75rem}

/* 19. TOPBAR — 5 variants */
.qtaxi .topbar{font-size:var(--font-size-sm,.875rem);background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .topbar__inner{min-height:2.75rem;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4,1rem);flex-wrap:wrap}
.qtaxi .topbar--light{background:var(--card,#fff);color:var(--text,#0f172a);border-bottom:1px solid var(--line,rgba(15,23,42,.12))}
.qtaxi .topbar--accent{background:var(--accent,#f4c542);color:var(--text,#0f172a)}
.qtaxi .topbar--center .topbar__inner{justify-content:center}
.qtaxi .topbar--compact .topbar__inner{min-height:2.25rem}

/* 20. NAV MENUS — 5 variants */
.qtaxi .nav-menu{display:flex;align-items:center;gap:var(--space-4,1rem);flex-wrap:wrap}
.qtaxi .nav-menu a{color:inherit;text-decoration:none;font-weight:600}
.qtaxi .nav-menu a:hover,.qtaxi .nav-menu .is-active{color:var(--accent,#f4c542)}
.qtaxi .nav-menu--vertical{display:grid}
.qtaxi .nav-menu--pills a{padding:.55rem .85rem;border-radius:var(--radius-pill,999px)}
.qtaxi .nav-menu--pills .is-active{background:rgba(244,197,66,.14)}
.qtaxi .nav-menu--boxed a{padding:.75rem 1rem;border:1px solid var(--line,rgba(15,23,42,.12));border-radius:var(--radius-lg,1.25rem)}
.qtaxi .nav-menu--center{justify-content:center}

/* 21. SLIDER / SLIDER PRO — 5 variants */
.qtaxi .slider,.qtaxi .slider-pro{position:relative;overflow:hidden;border-radius:var(--radius-xl,1.5rem)}
.qtaxi .slider-track{display:flex;transition:transform var(--transition-slow,360ms ease)}
.qtaxi .slide{flex:0 0 100%;min-width:0}
.qtaxi .slider-controls{display:flex;gap:var(--space-2,.5rem);position:absolute;right:1rem;bottom:1rem;z-index:2}
.qtaxi .slider-btn{width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--line,rgba(15,23,42,.12));background:rgba(255,255,255,.88)}
.qtaxi .slider-pro--fade .slide{transition:opacity var(--transition-base,240ms ease)}
.qtaxi .slider-pro--cards{box-shadow:var(--shadow-lg,0 18px 60px rgba(15,23,42,.14))}
.qtaxi .slider--full{border-radius:0}
.qtaxi .slider--shadow{box-shadow:var(--shadow-lg,0 18px 60px rgba(15,23,42,.14))}

/* 22. SOCIAL SHARE — 5 variants */
.qtaxi .social-share{display:flex;flex-wrap:wrap;gap:var(--space-2,.5rem);align-items:center}
.qtaxi .social-share a{width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);color:var(--text,#0f172a)}
.qtaxi .social-share a:hover{border-color:var(--accent,#f4c542);color:var(--accent,#f4c542)}
.qtaxi .social-share--labels a{width:auto;padding-inline:.85rem;border-radius:var(--radius-pill,999px)}
.qtaxi .social-share--dark a{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .social-share--compact a{width:2rem;height:2rem}

/* 23. RATING STAR — 5 variants */
.qtaxi .rating-star,.qtaxi .rating-stars{display:inline-flex;gap:.2rem;align-items:center;color:var(--accent,#f4c542);line-height:1}
.qtaxi .rating-stars--sm{font-size:var(--font-size-sm,.875rem)}
.qtaxi .rating-stars--lg{font-size:1.35rem}
.qtaxi .rating-stars--xl{font-size:1.75rem}
.qtaxi .rating-stars--muted{color:var(--muted,#6b7280)}
.qtaxi .rating-score{font-weight:700;color:var(--text,#0f172a);margin-left:.4rem}

/* 24. TABS — 5 variants */
.qtaxi .tabs{display:grid;gap:var(--space-4,1rem)}
.qtaxi .tab-list{display:flex;flex-wrap:wrap;gap:var(--space-2,.5rem)}
.qtaxi .tab{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.7rem 1rem;border-radius:var(--radius-pill,999px);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);color:var(--text,#0f172a);cursor:pointer}
.qtaxi .tab.is-active{background:var(--accent,#f4c542);border-color:transparent}
.qtaxi .tab-panel:not(.is-active){display:none}
.qtaxi .tabs--boxed .tab-list{padding:.35rem;border:1px solid var(--line,rgba(15,23,42,.12));border-radius:var(--radius-pill,999px);background:rgba(15,23,42,.04)}
.qtaxi .tabs--vertical{grid-template-columns:1fr}
@media(min-width:48rem){.qtaxi .tabs--vertical{grid-template-columns:16rem 1fr}.qtaxi .tabs--vertical .tab-list{display:grid}}

/* 25. TESTIMONIALS — 5 variants */
.qtaxi .testimonial{display:grid;gap:var(--space-4,1rem);padding:var(--space-6,1.5rem);border-radius:var(--radius-xl,1.5rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06))}
.qtaxi .testimonial blockquote{margin:0;color:var(--text,#0f172a)}
.qtaxi .testimonial__author{display:flex;align-items:center;gap:var(--space-3,.75rem)}
.qtaxi .testimonial--center{text-align:center;justify-items:center}
.qtaxi .testimonial--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .testimonial--accent{background:rgba(244,197,66,.10);border-color:rgba(244,197,66,.24)}
.qtaxi .testimonial--compact{padding:var(--space-4,1rem)}

/* 26. TEXT BOXES — 5 variants */
.qtaxi .text-box{padding:var(--space-5,1.25rem);border-radius:var(--radius-lg,1.25rem);background:var(--card,#fff);border:1px solid var(--line,rgba(15,23,42,.12))}
.qtaxi .text-box--soft{background:rgba(15,23,42,.04)}
.qtaxi .text-box--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .text-box--accent{background:rgba(244,197,66,.12);border-color:rgba(244,197,66,.24)}
.qtaxi .text-box--quote{border-left:.35rem solid var(--accent,#f4c542)}
.qtaxi .text-box--compact{padding:var(--space-3,.75rem)}

/* 27. VIDEO BOXES — 5 variants */
.qtaxi .video-box{position:relative;overflow:hidden;border-radius:var(--radius-xl,1.5rem);background:#000;box-shadow:var(--shadow-md,0 12px 30px rgba(15,23,42,.10));aspect-ratio:16/9}
.qtaxi .video-box iframe,.qtaxi .video-box video{position:absolute;inset:0;width:100%;height:100%;border:0}
.qtaxi .video-box__play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:4rem;height:4rem;border-radius:50%;display:grid;place-items:center;background:var(--accent,#f4c542);color:var(--text,#0f172a)}
.qtaxi .video-box--portrait{aspect-ratio:9/16}
.qtaxi .video-box--square{aspect-ratio:1}
.qtaxi .video-box--flat{box-shadow:none}
.qtaxi .video-box--rounded{border-radius:var(--radius-2xl,2rem)}

/* 28. COUNTERS — 5 variants */
.qtaxi .counter{display:grid;gap:var(--space-2,.5rem);text-align:center}
.qtaxi .counter__value{font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1;color:var(--text,#0f172a)}
.qtaxi .counter__label{color:var(--muted,#6b7280)}
.qtaxi .counter--card{padding:var(--space-5,1.25rem);border-radius:var(--radius-xl,1.5rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06))}
.qtaxi .counter--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .counter--accent .counter__value{color:var(--accent,#f4c542)}
.qtaxi .counter--inline{display:flex;align-items:baseline;gap:var(--space-2,.5rem);text-align:left}

/* 29. PROGRESS BAR — 5 variants */
.qtaxi .progress-bar{display:grid;gap:var(--space-2,.5rem)}
.qtaxi .progress-bar__track{height:.75rem;border-radius:var(--radius-pill,999px);background:rgba(15,23,42,.10);overflow:hidden}
.qtaxi .progress-bar__fill{height:100%;width:var(--progress,50%);border-radius:inherit;background:var(--accent,#f4c542)}
.qtaxi .progress-bar--success .progress-bar__fill{background:var(--success,#157f3d)}
.qtaxi .progress-bar--danger .progress-bar__fill{background:var(--danger,#b42318)}
.qtaxi .progress-bar--thin .progress-bar__track{height:.35rem}
.qtaxi .progress-bar--thick .progress-bar__track{height:1rem}
.qtaxi .progress-bar--striped .progress-bar__fill{background-image:linear-gradient(45deg,rgba(255,255,255,.25) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.25) 50%,rgba(255,255,255,.25) 75%,transparent 75%,transparent);background-size:1rem 1rem}

/* 30. TIMELINE — 5 variants */
.qtaxi .timeline{display:grid;gap:var(--space-5,1.25rem);position:relative}
.qtaxi .timeline-item{position:relative;padding-left:2rem}
.qtaxi .timeline-item::before{content:"";position:absolute;left:.35rem;top:.3rem;width:.75rem;height:.75rem;border-radius:50%;background:var(--accent,#f4c542)}
.qtaxi .timeline-item::after{content:"";position:absolute;left:.68rem;top:1.2rem;bottom:-1.5rem;width:1px;background:var(--line,rgba(15,23,42,.12))}
.qtaxi .timeline-item:last-child::after{display:none}
.qtaxi .timeline--cards .timeline-item{padding:var(--space-5,1.25rem) var(--space-5,1.25rem) var(--space-5,1.25rem) 3rem;border:1px solid var(--line,rgba(15,23,42,.12));border-radius:var(--radius-xl,1.5rem);background:var(--card,#fff)}
.qtaxi .timeline--horizontal{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}
.qtaxi .timeline--horizontal .timeline-item{padding-left:0;padding-top:2rem}
.qtaxi .timeline--horizontal .timeline-item::after{display:none}

/* 31. TOGGLE — 5 variants */
.qtaxi .toggle{display:inline-flex;align-items:center;gap:var(--space-2,.5rem);cursor:pointer}
.qtaxi .toggle__control{width:3rem;height:1.6rem;border-radius:999px;background:rgba(15,23,42,.18);position:relative;transition:background var(--transition-fast,180ms ease)}
.qtaxi .toggle__control::after{content:"";position:absolute;top:.2rem;left:.2rem;width:1.2rem;height:1.2rem;border-radius:50%;background:#fff;transition:transform var(--transition-fast,180ms ease)}
.qtaxi .toggle.is-active .toggle__control{background:var(--accent,#f4c542)}
.qtaxi .toggle.is-active .toggle__control::after{transform:translateX(1.4rem)}
.qtaxi .toggle--sm .toggle__control{width:2.4rem;height:1.3rem}
.qtaxi .toggle--dark .toggle__control{background:var(--bg,#0b1020)}
.qtaxi .toggle--success.is-active .toggle__control{background:var(--success,#157f3d)}

/* 32. TYPEWRITER — 5 variants */
.qtaxi .typewriter{display:inline-block;white-space:nowrap;overflow:hidden;border-right:.12em solid currentColor;animation:qtaxiTypewriter 3s steps(var(--typewriter-steps,32),end) both,qtaxiCaret .8s step-end infinite}
.qtaxi .typewriter--slow{animation-duration:5s,.8s}
.qtaxi .typewriter--fast{animation-duration:1.8s,.8s}
.qtaxi .typewriter--accent{color:var(--accent,#f4c542)}
.qtaxi .typewriter--no-caret{border-right:0;animation:qtaxiTypewriter 3s steps(var(--typewriter-steps,32),end) both}
@keyframes qtaxiTypewriter{from{width:0}to{width:100%}}
@keyframes qtaxiCaret{50%{border-color:transparent}}

/* 33. CHARTS — 5 variants */
.qtaxi .chart-box{padding:var(--space-5,1.25rem);border-radius:var(--radius-xl,1.5rem);border:1px solid var(--line,rgba(15,23,42,.12));background:var(--card,#fff);box-shadow:var(--shadow-sm,0 6px 18px rgba(15,23,42,.06))}
.qtaxi .chart-title{margin:0 0 var(--space-4,1rem)}
.qtaxi .chart-bars{display:grid;gap:var(--space-3,.75rem)}
.qtaxi .chart-bar{display:grid;gap:.35rem}
.qtaxi .chart-bar__track{height:.8rem;border-radius:var(--radius-pill,999px);background:rgba(15,23,42,.10);overflow:hidden}
.qtaxi .chart-bar__fill{width:var(--value,50%);height:100%;background:var(--accent,#f4c542)}
.qtaxi .chart-box--dark{background:var(--bg,#0b1020);color:var(--on-dark,#eef2ff)}
.qtaxi .chart-box--compact{padding:var(--space-4,1rem)}
.qtaxi .chart-box--accent{border-color:rgba(244,197,66,.24);background:rgba(244,197,66,.08)}

/* 34. RESPONSIVE ADDITIONS FOR NEW COMPONENTS */
@media (min-width:48rem){
  .qtaxi .testimonial-grid,
  .qtaxi .post-grid,
  .qtaxi .feature-box-grid,
  .qtaxi .icon-box-grid{display:grid;gap:var(--space-6,1.5rem);grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:64rem){
  .qtaxi .testimonial-grid,
  .qtaxi .post-grid,
  .qtaxi .feature-box-grid,
  .qtaxi .icon-box-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* ==========================================================================
   QTAXI COMPONENTS v1.3 — 20 TAXI BUSINESS COMPONENTS (ADD ONLY)
   Plaats ONDERAAN components.css
   Veilig: niets verwijderen of overschrijven
   Scope: .qtaxi
========================================================================== */

/* 01. TAXI FARE ESTIMATOR */
.qtaxi .taxi-fare-estimator{
  display:grid;
  gap:var(--space-4,1rem);
  padding:var(--space-6,1.5rem);
  border:1px solid rgba(244,197,66,.22);
  border-radius:var(--radius-xl,1.5rem);
  background:linear-gradient(135deg,rgba(244,197,66,.10),#fff);
  box-shadow:var(--shadow-md,0 12px 30px rgba(15,23,42,.08));
}

/* 02. AIRPORT TRANSFER CARD */
.qtaxi .airport-transfer-card{
  display:grid;
  gap:1rem;
  padding:1.5rem;
  border:1px solid rgba(59,130,246,.18);
  border-radius:1.5rem;
  background:linear-gradient(135deg,rgba(59,130,246,.08),#fff);
}

/* 03. ROUTE PRICE CARD */
.qtaxi .route-price-card{
  display:grid;
  gap:.75rem;
  padding:1.5rem;
  border:1px solid var(--line);
  border-radius:1.5rem;
  background:#fff;
}
.qtaxi .route-price-card .price{
  font-size:1.8rem;
  font-weight:800;
  color:var(--text);
}

/* 04. FLEET CARD / VEHICLE CARD */
.qtaxi .fleet-card,
.qtaxi .vehicle-card{
  display:grid;
  gap:1rem;
  padding:1.5rem;
  border:1px solid var(--line);
  border-radius:1.5rem;
  background:#fff;
}
.qtaxi .fleet-card img,
.qtaxi .vehicle-card img{
  width:100%;
  border-radius:1rem;
  object-fit:cover;
}

/* 05. DRIVER PROFILE CARD */
.qtaxi .driver-profile-card{
  display:grid;
  gap:1rem;
  padding:1.5rem;
  text-align:center;
  border:1px solid var(--line);
  border-radius:1.5rem;
  background:#fff;
}
.qtaxi .driver-profile-card img{
  width:96px;
  height:96px;
  border-radius:50%;
  object-fit:cover;
  margin:auto;
}

/* 06. BOOKING STEPPER */
.qtaxi .booking-stepper{
  display:grid;
  gap:1rem;
}
.qtaxi .booking-step{
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:1rem;
  border:1px solid var(--line);
  border-radius:1rem;
  background:#fff;
}
.qtaxi .booking-step-number{
  width:2rem;
  height:2rem;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--accent);
  font-weight:700;
}

/* 07. PICKUP INSTRUCTION BOX */
.qtaxi .pickup-instruction-box{
  padding:1.25rem;
  border-left:4px solid var(--accent);
  background:rgba(244,197,66,.08);
  border-radius:1rem;
}

/* 08. AVAILABILITY STATUS BOX */
.qtaxi .availability-status-box{
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:1rem 1.25rem;
  border-radius:999px;
  background:rgba(21,127,61,.10);
  color:#157f3d;
  font-weight:700;
}

/* 09. PAYMENT METHODS BLOCK */
.qtaxi .payment-methods-block{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
}
.qtaxi .payment-method{
  padding:.6rem .9rem;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
}

/* 10. SERVICE AREA MAP / LIST */
.qtaxi .service-area-box{
  display:grid;
  gap:1rem;
  padding:1.5rem;
  border:1px solid var(--line);
  border-radius:1.5rem;
  background:#fff;
}
.qtaxi .service-area-list{
  display:grid;
  gap:.5rem;
}

/* 11. LOST & FOUND COMPONENT */
.qtaxi .lost-found-box{
  padding:1.5rem;
  border:1px solid rgba(59,130,246,.16);
  border-radius:1.5rem;
  background:rgba(59,130,246,.06);
}

/* 12. CORPORATE ACCOUNT BOX */
.qtaxi .corporate-account-box{
  padding:1.5rem;
  border:1px solid rgba(15,23,42,.12);
  border-radius:1.5rem;
  background:linear-gradient(135deg,#fff,#f8fafc);
}

/* 13. EVENT TRANSPORT BOX */
.qtaxi .event-transport-box{
  padding:1.5rem;
  border:1px solid rgba(168,85,247,.18);
  border-radius:1.5rem;
  background:rgba(168,85,247,.06);
}

/* 14. NIGHT TAXI / SAFE RIDE */
.qtaxi .night-taxi-box{
  padding:1.5rem;
  color:#fff;
  border-radius:1.5rem;
  background:linear-gradient(135deg,#0f172a,#1e293b);
}

/* 15. TRAIN STATION PICKUP CARD */
.qtaxi .station-pickup-card{
  padding:1.5rem;
  border:1px solid var(--line);
  border-radius:1.5rem;
  background:#fff;
}

/* 16. REVIEW AGGREGATE BOX */
.qtaxi .review-aggregate-box{
  text-align:center;
  padding:1.5rem;
  border:1px solid var(--line);
  border-radius:1.5rem;
  background:#fff;
}
.qtaxi .review-aggregate-score{
  font-size:2rem;
  font-weight:800;
  color:var(--text);
}

/* 17. EMERGENCY CTA STRIP */
.qtaxi .emergency-cta-strip{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:1rem;
  padding:1.25rem 1.5rem;
  border-radius:1.25rem;
  background:#b42318;
  color:#fff;
}

/* 18. FAQ SCHEMA STYLE BLOCK */
.qtaxi .faq-schema-block{
  display:grid;
  gap:1rem;
}
.qtaxi .faq-schema-item{
  padding:1rem 1.25rem;
  border:1px solid var(--line);
  border-radius:1rem;
  background:#fff;
}

/* 19. COMPARISON CARD */
.qtaxi .comparison-card{
  display:grid;
  gap:1rem;
  padding:1.5rem;
  border:1px solid var(--line);
  border-radius:1.5rem;
  background:#fff;
}
.qtaxi .comparison-card.is-featured{
  border-color:rgba(244,197,66,.22);
  box-shadow:0 12px 30px rgba(244,197,66,.10);
}

/* 20. FIXED MOBILE BOOKING BAR */
.qtaxi .fixed-mobile-booking-bar{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:1200;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.75rem;
  padding:.75rem;
  background:rgba(255,255,255,.94);
  border-top:1px solid var(--line);
  box-shadow:0 -10px 30px rgba(15,23,42,.08);
}
@media (min-width:64rem){
  .qtaxi .fixed-mobile-booking-bar{
    display:none;
  }
}

/* ==========================================================================
   QTAXI COMPONENTS v1.4
   Additive layer for global-v1.3.css
   Safe: niets verwijderen / niets breken
   Scope: .qtaxi
========================================================================== */


/* ==========================================================================
   01. HERO COMPONENTS
   Hero layouts voor home, diensten, locaties, reserveren
========================================================================== */

.qtaxi .hero{
  padding:1.25rem 0 2rem;
}

.qtaxi .hero__container{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem;
  align-items:start;
}

@media (min-width:768px){
  .qtaxi .hero__container{
    grid-template-columns:1.15fr .85fr;
    gap:1.5rem;
  }
}

.qtaxi .hero__content{
  padding:1.5rem;
  border-radius:1.5rem;
  background:linear-gradient(135deg,#111b36,#0b1020);
  color:var(--on-dark,#fff);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:var(--shadow-md);
}

.qtaxi .hero__side{
  display:none;
}

@media (min-width:768px){
  .qtaxi .hero__side{
    display:block;
  }
}

.qtaxi .hero__photo{
  border-radius:1.5rem;
  overflow:hidden;
  aspect-ratio:4/3;
  background:#0f172a;
}

.qtaxi .hero__photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}


/* ==========================================================================
   02. BENEFITS / USP COMPONENTS
   Voordelenstrip en mini trust cards
========================================================================== */

.qtaxi .benefits{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem;
}

@media (min-width:768px){
  .qtaxi .benefits{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (min-width:1024px){
  .qtaxi .benefits{
    grid-template-columns:repeat(4,1fr);
  }
}

.qtaxi .mini{
  padding:1rem;
  border-radius:1.25rem;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow-sm);
  transition:transform .18s ease, box-shadow .18s ease;
}

.qtaxi .mini:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-md);
}

.qtaxi .miniIcon{
  width:2.1rem;
  height:2.1rem;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(244,197,66,.18);
  color:#111827;
}


/* ==========================================================================
   03. SERVICES COMPONENTS
   Dienstenkaarten
========================================================================== */

.qtaxi .services{
  display:grid;
  gap:1rem;
}

@media (min-width:768px){
  .qtaxi .services{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (min-width:1200px){
  .qtaxi .services{
    grid-template-columns:repeat(3,1fr);
  }
}

.qtaxi .service{
  overflow:hidden;
  border-radius:1.5rem;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow-sm);
}

.qtaxi .service__media{
  background:#f8fafc;
}

.qtaxi .service__img{
  width:100%;
  height:220px;
  object-fit:cover;
  display:block;
}

.qtaxi .service__body{
  padding:1.25rem;
}


/* ==========================================================================
   04. STEPS COMPONENTS
   Hoe werkt het / procesblokken
========================================================================== */

.qtaxi .steps{
  display:grid;
  gap:1rem;
}

@media (min-width:768px){
  .qtaxi .steps{
    grid-template-columns:repeat(3,1fr);
  }
}

.qtaxi .step{
  display:flex;
  gap:1rem;
  padding:1.25rem;
  background:#fff;
  border:1px solid var(--line);
  border-radius:1.25rem;
  box-shadow:var(--shadow-sm);
}

.qtaxi .stepN{
  width:2.25rem;
  height:2.25rem;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(244,197,66,.18);
  font-weight:800;
}


/* ==========================================================================
   05. PRICING COMPONENTS
   Tarieven / pricing blocks
========================================================================== */

.qtaxi .pricing{
  display:grid;
  gap:1rem;
}

@media (min-width:768px){
  .qtaxi .pricing{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (min-width:1200px){
  .qtaxi .pricing{
    grid-template-columns:repeat(3,1fr);
  }
}

.qtaxi .price{
  display:flex;
  flex-direction:column;
  gap:.75rem;
  padding:1.25rem;
  background:#fff;
  border:1px solid var(--line);
  border-radius:1.5rem;
  box-shadow:var(--shadow-sm);
}

.qtaxi .price--popular{
  border-color:rgba(244,197,66,.45);
  box-shadow:0 14px 32px rgba(244,197,66,.16);
  position:relative;
}

.qtaxi .priceBadge{
  position:absolute;
  top:-10px;
  left:1rem;
  padding:.35rem .75rem;
  border-radius:999px;
  background:var(--accent);
  color:#111827;
  font-size:.8rem;
  font-weight:800;
}

/* New pricing system aliases */
.qtaxi .qtaxi-pricing__grid{
  display:grid;
  gap:1rem;
}

@media (min-width:768px){
  .qtaxi .qtaxi-pricing__grid{
    grid-template-columns:repeat(3,1fr);
  }
}

.qtaxi .qtaxi-pricing__card{
  padding:1.25rem;
  background:#fff;
  border:1px solid var(--line);
  border-radius:1.5rem;
}


/* ==========================================================================
   06. FAQ COMPONENTS
   Accordion / veelgestelde vragen
========================================================================== */

.qtaxi .faq{
  display:grid;
  gap:.75rem;
}

.qtaxi .faqItem{
  border:1px solid var(--line);
  border-radius:1rem;
  overflow:hidden;
  background:#fff;
}

.qtaxi .faqQ{
  width:100%;
  border:0;
  background:none;
  padding:1rem;
  display:flex;
  justify-content:space-between;
  align-items:center;
  cursor:pointer;
  font-weight:700;
}

.qtaxi .faqA{
  padding:0 1rem 1rem;
  color:var(--muted);
}

.qtaxi .chev{
  width:2rem;
  height:2rem;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(244,197,66,.16);
}


/* ==========================================================================
   07. THEMIFY CONTACT COMPONENT
   Contactformulier skin
========================================================================== */

.qtaxi .qtaxi-contact .module-contact,
.qtaxi .qtaxi-contact form{
  padding:1.5rem;
  border-radius:1.5rem;
  background:linear-gradient(135deg,#111b36,#0b1020);
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
}

.qtaxi .qtaxi-contact input,
.qtaxi .qtaxi-contact textarea,
.qtaxi .qtaxi-contact select{
  width:100%;
  padding:.9rem 1rem;
  border-radius:1rem;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:#fff;
}


/* ==========================================================================
   08. RESERVE FORM COMPONENT
   Reservatie formulier premium skin
========================================================================== */

.qtaxi .qtaxi-reserve-form .module-contact{
  padding:1.5rem;
  border-radius:1.5rem;
  background:linear-gradient(135deg,#111b36,#0b1020);
  border:1px solid rgba(255,255,255,.08);
}

.qtaxi .qtaxi-reserve-form .builder-contact-fields{
  display:grid;
  gap:1rem;
}

@media (min-width:768px){
  .qtaxi .qtaxi-reserve-form .builder-contact-fields{
    grid-template-columns:repeat(2,1fr);
  }
}


/* ==========================================================================
   09. FINAL CTA COMPONENT
   Laatste call to action sectie
========================================================================== */

.qtaxi .qtaxi-final-cta .qtaxi-final__panel{
  padding:1.75rem;
  border-radius:1.75rem;
  background:linear-gradient(135deg,#111b36,#0b1020);
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
}

.qtaxi .qtaxi-final-cta .qtaxi-final__cta{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:1rem;
}

.qtaxi .qtaxi-final-cta .qtaxi-final__photo{
  border-radius:1.5rem;
  overflow:hidden;
  aspect-ratio:16/9;
}


/* ==========================================================================
   10. STICKY MOBILE ACTIONS
   Mobiele conversiebar
========================================================================== */

.qtaxi .qtaxi-sticky-actions{
  display:none;
}

@media (max-width:640px){
  .qtaxi .qtaxi-sticky-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:.75rem;
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:999;
    padding:.75rem;
    background:rgba(255,255,255,.96);
    border-top:1px solid var(--line);
    box-shadow:0 -10px 24px rgba(15,23,42,.08);
  }
}

/* ==========================================================================
   AIRPORT GRID TABLE COMPONENTS
   Geen <table>. Alleen CSS grid/flex.
========================================================================== */


/* 01. Basic airport price grid */
.qtaxi .airport-grid{
  display:grid;
  gap:.75rem;
}

.qtaxi .airport-grid__row{
  display:grid;
  grid-template-columns:1fr;
  gap:.5rem;
  padding:1rem;
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  background:var(--card);
}

@media (min-width:768px){
  .qtaxi .airport-grid__row{
    grid-template-columns:1.2fr .8fr .8fr auto;
    align-items:center;
  }
}


/* 02. Premium airport cards table */
.qtaxi .airport-table-cards{
  display:grid;
  gap:1rem;
}

.qtaxi .airport-table-card{
  display:grid;
  gap:.75rem;
  padding:1.25rem;
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  background:var(--card);
  box-shadow:var(--shadow-md);
}

@media (min-width:900px){
  .qtaxi .airport-table-cards{
    grid-template-columns:repeat(2,1fr);
  }
}


/* 03. Benelux route matrix */
.qtaxi .benelux-matrix{
  display:grid;
  gap:.75rem;
}

.qtaxi .benelux-matrix__item{
  display:grid;
  grid-template-columns:1fr;
  gap:.5rem;
  padding:1rem;
  border-radius:var(--radius-lg);
  background:rgba(255,255,255,.92);
  border:1px solid var(--line);
}

@media (min-width:768px){
  .qtaxi .benelux-matrix__item{
    grid-template-columns:1fr 1fr 1fr;
  }
}


/* 04. Compact airport list */
.qtaxi .airport-compact-list{
  display:grid;
  gap:.5rem;
}

.qtaxi .airport-compact-list__row{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:.75rem;
  padding:.9rem 1rem;
  border-bottom:1px solid var(--line);
}


/* 05. Featured airport routes */
.qtaxi .airport-featured-grid{
  display:grid;
  gap:1rem;
}

@media (min-width:768px){
  .qtaxi .airport-featured-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

.qtaxi .airport-featured-card{
  display:flex;
  flex-direction:column;
  gap:.75rem;
  padding:1.25rem;
  border-radius:var(--radius-xl);
  background:var(--card);
  border:1px solid var(--line);
  box-shadow:var(--shadow-md);
}


/* 06. Dark premium airport table */
.qtaxi .airport-dark-table{
  display:grid;
  gap:.75rem;
  padding:1rem;
  border-radius:var(--radius-2xl);
  background:linear-gradient(135deg,var(--bg),var(--panel));
  color:var(--on-dark);
}

.qtaxi .airport-dark-table__row{
  display:grid;
  gap:.5rem;
  padding:1rem;
  border-radius:var(--radius-lg);
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
}

@media (min-width:768px){
  .qtaxi .airport-dark-table__row{
    grid-template-columns:1.2fr .8fr .8fr auto;
    align-items:center;
  }
}


/* 07. Airport comparison columns */
.qtaxi .airport-compare{
  display:grid;
  gap:1rem;
}

@media (min-width:900px){
  .qtaxi .airport-compare{
    grid-template-columns:repeat(3,1fr);
  }
}

.qtaxi .airport-compare__col{
  display:grid;
  gap:.75rem;
  padding:1.25rem;
  border-radius:var(--radius-xl);
  background:var(--card);
  border:1px solid var(--line);
}


/* 08. Route price rows */
.qtaxi .route-price-list{
  display:grid;
  gap:.75rem;
}

.qtaxi .route-price-row{
  display:grid;
  gap:.5rem;
  padding:1rem;
  border-radius:var(--radius-lg);
  background:var(--card);
  border:1px solid var(--line);
}

@media (min-width:768px){
  .qtaxi .route-price-row{
    grid-template-columns:1.4fr .7fr .7fr auto;
    align-items:center;
  }
}


/* 09. Airport country grouped table */
.qtaxi .airport-country-group{
  display:grid;
  gap:1.25rem;
}

.qtaxi .airport-country{
  display:grid;
  gap:.75rem;
}

.qtaxi .airport-country__title{
  font-weight:900;
  color:var(--text);
}

.qtaxi .airport-country__row{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:.75rem;
  padding:1rem;
  border-radius:var(--radius-lg);
  background:var(--card);
  border:1px solid var(--line);
}


/* 10. Mobile-first airport quote grid */
.qtaxi .airport-quote-grid{
  display:grid;
  gap:1rem;
}

.qtaxi .airport-quote-item{
  display:grid;
  gap:.65rem;
  padding:1.2rem;
  border-radius:var(--radius-xl);
  background:linear-gradient(135deg,rgba(244,197,66,.12),rgba(255,255,255,.94));
  border:1px solid rgba(244,197,66,.28);
  box-shadow:var(--shadow-sm);
}

@media (min-width:768px){
  .qtaxi .airport-quote-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (min-width:1100px){
  .qtaxi .airport-quote-grid{
    grid-template-columns:repeat(4,1fr);
  }
}
/* ==========================================================================
   FOOTER SECTION — THEMIFY SAFE
   Scope: .module_row.qtaxi.qtaxi-footer.trx-row-footer
========================================================================== */


/* ==========================================================================
   A) NEUTRALIZER
========================================================================== */

.module_row.qtaxi.qtaxi-footer.trx-row-footer,
.module_row.qtaxi.qtaxi-footer.trx-row-footer *{
  box-sizing:border-box !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  padding:24px 0 20px !important;

  background:
    radial-gradient(780px 420px at 6% 0%, rgba(240,197,66,.13), transparent 58%),
    radial-gradient(760px 460px at 92% 8%, rgba(56,189,248,.09), transparent 62%),
    var(--gradient-dark,linear-gradient(135deg,#10182f,#070317)) !important;

  color:var(--on-dark,#f4f7ff) !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-1 !important;
  background:linear-gradient(180deg,rgba(255,255,255,.045),transparent 46%) !important;
  pointer-events:none !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer :is(
  .row_inner,
  .module_column,
  .module_subrow,
  .sub_column,
  .module,
  .tb_text_wrap
){
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;

  width:100% !important;
  max-width:none !important;
  min-width:0 !important;

  float:none !important;
  clear:none !important;

  color:inherit !important;
  font:inherit !important;
  text-transform:none !important;
  letter-spacing:normal !important;
}


/* ==========================================================================
   B) MOBILE — 1 kolom stacked
========================================================================== */

.module_row.qtaxi.qtaxi-footer.trx-row-footer .row_inner{
  width:100% !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-wrap{
  width:100% !important;
  max-width:502px !important;
  margin:0 auto !important;
  padding:0 20px !important;
}

/* CTA PANEL */

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-cta{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:18px !important;

  width:100% !important;
  padding:30px 20px 24px !important;
  border-radius:22px !important;

  background:linear-gradient(135deg,rgba(255,255,255,.105),rgba(255,255,255,.045)) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:var(--shadow-dark,0 22px 60px rgba(0,0,0,.28)) !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .eyebrow{
  margin:0 0 12px !important;
  color:rgba(255,255,255,.82) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.26em !important;
  text-transform:uppercase !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer h2{
  margin:0 0 10px !important;
  color:#fff !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:30px !important;
  line-height:1.04 !important;
  font-weight:700 !important;
  letter-spacing:-.045em !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-cta p{
  margin:0 !important;
  max-width:620px !important;
  color:rgba(244,247,255,.78) !important;
  font-size:13px !important;
  line-height:1.65 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-cta__actions,
.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-module-footer-cta-actions .tb_text_wrap{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  align-items:center !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .btn,
.module_row.qtaxi.qtaxi-footer.trx-row-footer .btnPill{
  min-height:38px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:11px 18px !important;
  border-radius:999px !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .btnPill--primary{
  background:var(--gradient-gold,linear-gradient(135deg,#f0c542,#d9ae2f)) !important;
  color:#111827 !important;
  border:1px solid rgba(17,24,39,.12) !important;
  box-shadow:0 16px 34px rgba(240,197,66,.26) !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .btn--secondary{
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05) !important;
}

/* FOOTER GRID CARDS */
.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-main-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:14px !important;
  width:100% !important;
  margin-top:14px !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-grid-row-2{
  margin-top:14px !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-main-grid > .sub_column{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  padding:20px 16px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer h3{
  margin:0 0 13px !important;
  color:#fff !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:15px !important;
  line-height:1.15 !important;
  font-weight:700 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer p,
.module_row.qtaxi.qtaxi-footer.trx-row-footer li,
.module_row.qtaxi.qtaxi-footer.trx-row-footer a,
.module_row.qtaxi.qtaxi-footer.trx-row-footer span{
  color:rgba(244,247,255,.76) !important;
  font-size:12px !important;
  line-height:1.7 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer strong{
  display:block !important;
  margin-bottom:3px !important;
  color:#fff !important;
  font-weight:900 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer ul{
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-trust{
  display:grid !important;
  gap:8px !important;
  margin-top:18px !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-trust li{
  position:relative !important;
  padding-left:22px !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-trust li::before{
  content:"✓" !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  color:var(--success,#22c55e) !important;
  font-weight:900 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-contact p{
  margin:0 0 14px !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-contact p:last-child{
  margin-bottom:0 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-nav ul{
  display:grid !important;
  gap:7px !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-chips span{
  min-height:29px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  padding:8px 12px !important;
  border-radius:999px !important;

  background:rgba(255,255,255,.075) !important;
  border:1px solid rgba(255,255,255,.13) !important;

  color:#fff !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:800 !important;
}

/* BOTTOM BAR */

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-bottom{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;

  margin-top:18px !important;
  padding-top:16px !important;
  border-top:1px solid rgba(255,255,255,.11) !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-bottom p,
.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-bottom a{
  color:rgba(244,247,255,.62) !important;
  font-size:11px !important;
  line-height:1.5 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-bottom-legal nav,
.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-module-footer-legal .tb_text_wrap nav{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px 16px !important;
}

/* ==========================================================================
   FOOTER MAP
========================================================================== */
.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-map{
  width:100% !important;
  margin-top:16px !important;
  overflow:hidden !important;
  border-radius:16px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 12px 30px rgba(0,0,0,.18) !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-map iframe{
  display:block !important;
  width:100% !important;
  height:180px !important;
  border:0 !important;
  filter:
    grayscale(.18)
    contrast(1.05)
    saturate(.92)
    brightness(.94) !important;
}

/* ==========================================================================
   C) TABLET — stacked, ruimer
========================================================================== */

@media (min-width:768px) and (max-width:1024px){

  .module_row.qtaxi.qtaxi-footer.trx-row-footer{
    padding:24px 0 22px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-wrap{
    width:100% !important;
    max-width:100% !important;
    padding:0 28px !important;
    margin:0 auto !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-main-grid,
.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-main-grid > .module_column,
.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-main-grid > .sub_column{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
}

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-cta{
    padding:32px 20px 24px !important;
    border-radius:22px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer h2{
    font-size:30px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-cta p{
    font-size:13px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-cta__actions,
  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-module-footer-cta-actions .tb_text_wrap{
    display:flex !important;
    gap:10px !important;
  }

   .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-main-grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-main-grid > .sub_column{
    padding:20px 16px !important;
    min-height:154px !important;
  }

   .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-area{
    min-height:128px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-bottom{
    grid-template-columns:1fr auto !important;
    align-items:center !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-map iframe{
    height:210px !important;
  }

}


/* ==========================================================================
   D) DESKTOP — 2 kolommen premium grid
========================================================================== */

@media (min-width:1025px){

  .module_row.qtaxi.qtaxi-footer.trx-row-footer{
    padding:76px 0 34px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-wrap{
    max-width:1060px !important;
    padding:0 !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-cta{
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:end !important;
    gap:40px !important;

    padding:54px 38px 38px !important;
    border-radius:28px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .eyebrow{
    margin-bottom:20px !important;
    font-size:12px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer h2{
    margin-bottom:13px !important;
    font-size:48px !important;
    line-height:1.02 !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-cta p{
    font-size:15px !important;
    line-height:1.65 !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-cta__actions,
  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-module-footer-cta-actions .tb_text_wrap{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:12px !important;
    justify-content:flex-end !important;
    align-items:center !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .btn,
  .module_row.qtaxi.qtaxi-footer.trx-row-footer .btnPill{
    min-height:44px !important;
    padding:13px 23px !important;
    font-size:14px !important;
  }

   .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-main-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) !important;
    gap:18px !important;
    width:100% !important;
    margin-top:18px !important;
    align-items:stretch !important;
  }

   .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-main-grid > .sub_column{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:30px !important;
    border-radius:22px !important;
  }

   .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-brand{
    min-height:286px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-contact{
    min-height:270px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-nav,
  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-area{
    min-height:232px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer h3{
    margin-bottom:16px !important;
    font-size:16px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer p,
  .module_row.qtaxi.qtaxi-footer.trx-row-footer li,
  .module_row.qtaxi.qtaxi-footer.trx-row-footer a,
  .module_row.qtaxi.qtaxi-footer.trx-row-footer span{
    font-size:14px !important;
    line-height:1.75 !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-trust{
    gap:11px !important;
    margin-top:24px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-contact p{
    margin-bottom:20px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-nav ul{
    gap:10px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-chips{
    gap:8px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-chips span{
    min-height:32px !important;
    padding:8px 14px !important;
    font-size:12px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-bottom{
    grid-template-columns:1fr auto !important;
    align-items:center !important;

    margin-top:22px !important;
    padding-top:18px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-bottom p,
  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-bottom a{
    font-size:12px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-map{
    margin-top:18px !important;
    border-radius:18px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-map iframe{
    height:220px !important;
  }
}

/* ==========================================================================
   FOOTER — TRUST & CONVERSION ELEMENTS
========================================================================== */

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-proof{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-top:18px !important;
  align-items:center !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-review,
.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-badge{
  min-height:32px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  padding:8px 12px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.075) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  color:#fff !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:800 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-stars{
  color:var(--accent,#f0c542) !important;
  letter-spacing:.04em !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-whatsapp{
  background:rgba(34,197,94,.16) !important;
  color:#fff !important;
  border:1px solid rgba(34,197,94,.34) !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-area-note{
  margin:16px 0 0 !important;
  color:rgba(244,247,255,.70) !important;
  font-size:12px !important;
  line-height:1.6 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-socials{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-top:18px !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-socials a{
  width:34px !important;
  height:34px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.075) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  color:#fff !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:900 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-socials a:hover{
  background:rgba(255,255,255,.12) !important;
}

/* Mobile sticky conversion bar */
.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-sticky-mobile{
  display:block !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-mobilebar{
  position:fixed !important;
  left:10px !important;
  right:10px !important;
  bottom:10px !important;
  z-index:9999 !important;

  display:grid !important;
  grid-template-columns:1fr 1fr 1fr !important;
  gap:8px !important;

  padding:8px !important;
  border-radius:999px !important;
  background:rgba(7,3,23,.88) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:0 18px 46px rgba(0,0,0,.36) !important;
  backdrop-filter:blur(14px) !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-mobilebar a{
  min-height:42px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  padding:10px 12px !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:900 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-mobilebar-call{
  background:var(--gradient-gold,linear-gradient(135deg,#f0c542,#d9ae2f)) !important;
  color:#111827 !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-mobilebar-whatsapp{
  background:rgba(34,197,94,.20) !important;
  color:#fff !important;
  border:1px solid rgba(34,197,94,.34) !important;
}

.module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-mobilebar-book{
  background:rgba(255,255,255,.10) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.18) !important;
}

@media (min-width:768px){
  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-mobilebar{
    display:none !important;
  }
}

@media (min-width:1025px){
  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-proof{
    margin-top:20px !important;
  }

  .module_row.qtaxi.qtaxi-footer.trx-row-footer .trx-footer-area-note{
    font-size:13px !important;
  }
}
/* ==========================================================================
   HEADER NAV SECTION — THEMIFY SAFE
   Scope: .module_row.qtaxi.trx-header.trx-row-header
========================================================================== */


/* ==========================================================================
   A) NEUTRALIZER
========================================================================== */

.module_row.qtaxi.trx-header.trx-row-header,
.module_row.qtaxi.trx-header.trx-row-header *{
  box-sizing:border-box !important;
}

.module_row.qtaxi.trx-header.trx-row-header{
  position:sticky !important;
  top:0 !important;
  z-index:998 !important;
  width:100% !important;
  padding:0 !important;
  overflow:visible !important;

  background:var(--gradient-dark,linear-gradient(135deg,#10182f,#070317)) !important;
  color:var(--on-dark,#f4f7ff) !important;
  border-bottom:1px solid var(--line-dark,rgba(244,247,255,.14)) !important;
  box-shadow:0 10px 32px rgba(0,0,0,.18) !important;
}

.module_row.qtaxi.trx-header.trx-row-header :is(
  .row_inner,
  .module_column,
  .module_subrow,
  .sub_column,
  .module,
  .tb_text_wrap,
  .image-wrap
){
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;

  width:100% !important;
  max-width:none !important;
  min-width:0 !important;

  float:none !important;
  clear:none !important;

  color:inherit !important;
  font:inherit !important;
  text-transform:none !important;
  letter-spacing:normal !important;
}

.module_row.qtaxi.trx-header.trx-row-header a{
  color:inherit !important;
  text-decoration:none !important;
}

.module_row.qtaxi.trx-header.trx-row-header button{
  font:inherit !important;
  cursor:pointer !important;
}


/* ==========================================================================
   B) MOBILE — 0px t/m 767px
========================================================================== */

.module_row.qtaxi.trx-header.trx-row-header .row_inner{
  width:100% !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-header-inner{
  width:100% !important;
  max-width:390px !important;
  margin:0 auto !important;
  padding:12px 12px !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-header-grid{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto auto !important;
  align-items:center !important;
  gap:10px !important;
  width:100% !important;
}

/* Brand */
.module_row.qtaxi.trx-header.trx-row-header .trx-header-brand-col{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  width:auto !important;
  min-width:0 !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-module-header-logo{
  flex:0 0 auto !important;
  width:auto !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-module-header-logo .image-wrap{
  width:38px !important;
  height:38px !important;
  overflow:hidden !important;
  border-radius:12px !important;
  background:var(--gradient-gold,linear-gradient(135deg,#f0c542,#d9ae2f)) !important;
  box-shadow:var(--shadow-gold,0 14px 30px rgba(240,197,66,.28)) !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-module-header-logo img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-module-header-brandtext{
  flex:1 1 auto !important;
  min-width:0 !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-header__brandText{
  display:grid !important;
  gap:1px !important;
  line-height:1 !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-header__brandText strong{
  color:#fff !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-header__brandText small{
  color:#fff !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:800 !important;
}

/* Hide desktop blocks on mobile */
.module_row.qtaxi.trx-header.trx-row-header .trx-header-nav-col,
.module_row.qtaxi.trx-header.trx-row-header .trx-header-trust-col,
.module_row.qtaxi.trx-header.trx-row-header .trx-header__nav,
.module_row.qtaxi.trx-header.trx-row-header .trx-header__trust,
.module_row.qtaxi.trx-header.trx-row-header .trx-header__call{
  display:none !important;
}

/* Actions */
.module_row.qtaxi.trx-header.trx-row-header .trx-header-actions-col{
  width:auto !important;
  justify-self:end !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-header__actions,
.module_row.qtaxi.trx-header.trx-row-header .trx-module-header-actions .tb_text_wrap{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:0 !important;
  width:auto !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-header__book{
  min-height:42px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  padding:12px 18px !important;
  border-radius:999px !important;

  background:var(--gradient-gold,linear-gradient(135deg,#f0c542,#d9ae2f)) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:var(--shadow-gold,0 14px 30px rgba(240,197,66,.28)) !important;

  font-size:14px !important;
  line-height:1 !important;
  font-weight:500 !important;
  white-space:nowrap !important;
}

/* Toggle */
.module_row.qtaxi.trx-header.trx-row-header .trx-header-toggle-col{
  width:auto !important;
  justify-self:end !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-header__toggle{
  width:38px !important;
  height:38px !important;
  display:grid !important;
  place-content:center !important;
  gap:4px !important;

  padding:0 !important;
  border-radius:999px !important;

  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.module_row.qtaxi.trx-header.trx-row-header .trx-header__toggle span{
  width:15px !important;
  height:2px !important;
  display:block !important;
  border-radius:999px !important;
  background:#fff !important;
}

/* Mobile panel standaard verborgen */
.module_row.qtaxi.trx-header.trx-row-header .trx-header-mobile-panel{
  display:none !important;
}

/* ==========================================================================
   HEADER NAV — MOBILE HARD FIX
   0px t/m 767px
   Doel: logo links, reserveer midden/rechts, hamburger rechts
========================================================================== */

@media (max-width:767px){

  .module_row.qtaxi.trx-header.trx-row-header{
    padding:0 !important;
    overflow:visible !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .row_inner{
    width:100% !important;
    max-width:none !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-inner{
    width:100% !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:12px 12px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-grid{
    display:grid !important;
    grid-template-columns:minmax(0,5fr) auto auto !important;
    align-items:center !important;
    gap:10px !important;
    width:100% !important;
  }

  /* Forceer Themify 5 kolommen naar 3 zichtbare zones */
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-grid > .sub_column{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    float:none !important;
    clear:none !important;
  }

  /* Brand links */
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-brand-col{
    grid-column:1 !important;
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    width:100% !important;
    min-width:0 !important;
    justify-self:start !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-logo{
    flex:0 0 38px !important;
    width:38px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-logo .image-wrap{
    width:38px !important;
    height:38px !important;
    border-radius:12px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-brandtext{
    flex:1 1 auto !important;
    min-width:0 !important;
    width:auto !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__brandText strong{
    font-size:14px !important;
    line-height:1 !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__brandText small{
    font-size:11px !important;
    line-height:1 !important;
  }

  /* Verberg desktop nav/trust volledig */
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-nav-col,
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-trust-col{
    display:none !important;
  }

  /* Actions rechts naast brand */
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-actions-col{
    grid-column:2 !important;
    display:block !important;
    width:auto !important;
    justify-self:end !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__actions,
  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-actions .tb_text_wrap{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    width:auto !important;
    gap:0 !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__call{
    display:none !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__book{
    min-height:40px !important;
    padding:12px 17px !important;
    border-radius:999px !important;
    font-size:14px !important;
    line-height:1 !important;
    font-weight:500 !important;
    white-space:nowrap !important;
  }

  /* Hamburger helemaal rechts */
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-toggle-col{
    grid-column:3 !important;
    display:block !important;
    width:auto !important;
    justify-self:end !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__toggle{
    width:38px !important;
    height:38px !important;
    display:grid !important;
    place-content:center !important;
    gap:4px !important;
    border-radius:999px !important;
  }

  /* Mobile panel blijft verborgen tot je JS/class toevoegt */
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-mobile-panel{
    display:none !important;
  }
}

/* ==========================================================================
   HEADER NAV — MOBILE FINAL HARD FIX
   Forceert alles op 1 horizontale lijn
========================================================================== */

@media (max-width:767px){

  .module_row.qtaxi.trx-header.trx-row-header{
    min-height:64px !important;
    padding:0 !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-inner{
    width:100% !important;
    max-width:none !important;
    padding:10px 12px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-grid{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    width:100% !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-grid > .sub_column{
    float:none !important;
    clear:none !important;
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    flex:0 0 auto !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-brand-col{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    width:auto !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-nav-col,
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-trust-col{
    display:none !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-actions-col{
    display:block !important;
    flex:0 0 auto !important;
    width:auto !important;
    margin-left:auto !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-toggle-col{
    display:block !important;
    flex:0 0 auto !important;
    width:auto !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__actions,
  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-actions .tb_text_wrap{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__call{
    display:none !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__book{
    min-height:40px !important;
    padding:12px 17px !important;
    font-size:14px !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__toggle{
    width:38px !important;
    height:38px !important;
    display:grid !important;
    place-content:center !important;
  }
}

/* ==========================================================================
   C) TABLET — 768px t/m 1024px
========================================================================== */

@media (min-width:768px) and (max-width:1024px){

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-inner{
    max-width:768px !important;
    padding:13px 32px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-grid{
    grid-template-columns:auto minmax(0,5fr) auto auto !important;
    gap:12px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-logo .image-wrap{
    width:38px !important;
    height:38px !important;
    border-radius:12px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__brandText strong{
    font-size:14px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__brandText small{
    font-size:11px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__call{
    min-height:42px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    padding:12px 18px !important;
    border-radius:999px !important;

    background:rgba(255,255,255,.08) !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.20) !important;

    font-size:14px !important;
    line-height:1 !important;
    font-weight:500 !important;
    white-space:nowrap !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__actions,
  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-actions .tb_text_wrap{
    gap:10px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__book{
    min-height:42px !important;
    padding:12px 19px !important;
    font-size:14px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__toggle{
    width:40px !important;
    height:40px !important;
  }
}


/* ==========================================================================
   D) DESKTOP — 1025px+
========================================================================== */

@media (min-width:1025px){

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-inner{
    max-width:1300px !important;
    padding:16px 0 !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-grid{
    display:grid !important;
    grid-template-columns:210px minmax(0,5fr) auto auto !important;
    align-items:center !important;
    gap:24px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-brand-col{
    gap:12px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-logo .image-wrap{
    width:44px !important;
    height:44px !important;
    border-radius:14px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__brandText strong{
    font-size:16px !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__brandText small{
    font-size:12px !important;
  }

  /* Desktop nav */
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-nav-col{
    display:block !important;
    width:100% !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__nav,
  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-nav .tb_text_wrap{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:28px !important;
    width:100% !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__nav a{
    color:rgba(244,247,255,.86) !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:900 !important;
    white-space:nowrap !important;
  }

  /* Trust */
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-trust-col{
    display:block !important;
    width:none !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__trust,
  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-trust .tb_text_wrap{
    width:auto !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__trust{
    min-height:42px !important;
    gap:7px !important;
    padding:11px 15px !important;
    border-radius:999px !important;

    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.18) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05) !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__stars{
    color:#fff !important;
    font-size:16px !important;
    line-height:1 !important;
    letter-spacing:-.04em !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__trust strong{
    color:#fff !important;
    font-size:12px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }

  /* Actions */
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-actions-col{
    width:auto !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__actions,
  .module_row.qtaxi.trx-header.trx-row-header .trx-module-header-actions .tb_text_wrap{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:10px !important;
    width:auto !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__call,
  .module_row.qtaxi.trx-header.trx-row-header .trx-header__book{
    min-height:44px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    padding:13px 21px !important;
    border-radius:999px !important;

    font-size:15px !important;
    line-height:1 !important;
    font-weight:500 !important;
    white-space:nowrap !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__call{
    background:rgba(255,255,255,.08) !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.20) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05) !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header__book{
    background:var(--gradient-gold,linear-gradient(135deg,#f0c542,#d9ae2f)) !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.10) !important;
    box-shadow:var(--shadow-gold,0 14px 30px rgba(240,197,66,.28)) !important;
  }

  .module_row.qtaxi.trx-header.trx-row-header .trx-header-toggle-col,
  .module_row.qtaxi.trx-header.trx-row-header .trx-header__toggle,
  .module_row.qtaxi.trx-header.trx-row-header .trx-header-mobile-panel{
    display:none !important;
  }
}


/* START MOBILE MENU CSS */
@media screen and (max-width:1100px){
/*/wp-content/themes/themify-ultra/mobile-menu.css*/
#header{height:auto;padding:10px 0 5px}#header,.fixed-header #header{text-align:inherit}#site-description,#site-logo{clear:both;float:none;margin:0 0 .5em;padding:0;position:static}#site-logo{font-size:24px;margin:5px 10px 5px 0}.header-widget{clear:both;float:none;margin:0;position:static;text-align:inherit}.header-widget .widget{margin:0 0 1.8em}.header-widget .widgettitle{margin:0 0 .3em}.header-icons{display:block;position:absolute;right:4%;top:27px;transform:translateY(-50%);z-index:1999}.header-icons a{font-size:1em;text-decoration:none!important}.slide-cart .header-icons{align-items:center;display:flex;flex-direction:row-reverse}:is(.mobile-menu-visible,.slide-cart-visible){z-index:1!important}.sidemenu{background-color:#fff;color:#000;display:none;height:100%;overflow-y:auto;padding:60px 25px 25px;position:fixed;text-align:left;top:0;transition:.2s ease-in-out;transition-property:left,right,top,bottom,width,transform,opacity;width:300px;z-index:11111}#mobile-menu{contain:paint;right:-300px}#mobile-menu.sidemenu-on{box-shadow:-6px 0 20px 5px rgba(0,0,0,.1);right:0}.sidemenu-left,.sidemenu-left .fixed-header{left:300px}.sidemenu-left #mobile-menu.sidemenu-on{left:0}#headerwrap #mobile-menu-panel a{color:#fff;text-decoration:none}#headerwrap #menu-icon-close{-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:100%;color:inherit;display:block;font-size:20px;min-height:1em;min-width:1em;padding:9px;position:absolute;right:10px;text-decoration:none;top:10px;transform-origin:center;transition-property:transform}#menu-icon-close:hover{background:hsla(0,0%,78%,.25)}#menu-icon-close:after,#menu-icon-close:before{height:56%}.transparent-header #menu-icon-close{color:inherit}#main-nav-wrap{display:block;margin:1em 0 1.5em;padding:0}#main-nav{background-color:transparent;float:none}#main-nav li{clear:both;display:block;padding:0;width:100%}#main-nav li>.sub-menu{background:0;border:0;box-shadow:none;color:inherit;display:none;height:auto;margin:0 0 0 1em;opacity:1;padding:0;position:static;transform:none;width:auto}#main-nav li.toggle-on>.sub-menu{display:block}#main-nav .child-arrow{display:inline-block}#main-nav .child-arrow:hover{background:hsla(0,0%,78%,.25)}.transparent-header #headerwrap .themify-widget-menu{color:inherit}#main-nav .has-mega-column>.sub-menu,#main-nav .has-mega>.sub-menu{margin:0;padding:0;width:auto}#main-nav .has-mega-column>.sub-menu,#main-nav .has-mega-column>.sub-menu ul,#main-nav .has-mega-sub-menu .mega-sub-menu ul{float:none;margin:0 0 0 1em}#main-nav .has-mega-column>.sub-menu,#main-nav .has-mega-column>.sub-menu ul,#main-nav .has-mega-sub-menu .mega-sub-menu ul,#main-nav li:not(.themify-widget-menu)>ul{background:0}#headerwrap #main-nav a{background:0;border:0;box-shadow:none;color:inherit;display:block;font-weight:400;line-height:1.5em;margin:0;padding:.6em 0;text-decoration:none;width:auto}#headerwrap #main-nav .has-sub-menu>a{padding-right:40px}#main-nav>li:last-child a{border:0}#headerwrap #main-nav .current-menu-item>a,#headerwrap #main-nav .current_page_item>a,#headerwrap #main-nav a:hover{color:var(--theme_accent)}#main-nav .mega-menu-posts,.slide-cart-visible #menu-icon{display:none}#header .social-widget a,#headerwrap .sidemenu .search-button,#headerwrap .sidemenu .tf_darkmode_toggle{color:inherit}#header .social-widget{float:none;margin:0;position:static}.header-widget :is(.col4-1,.col4-2,.col3-1){margin-left:0;max-width:100%;width:100%}.sidemenu .header-widget{height:auto}.fixed-header :is(.cart-wrap,.header-bar,.header-widget){display:block}.fixed-header .search-button,.fixed-header-on #headerwrap :is(.tf_darkmode_toggle,.social-widget){display:inline-block}#headerwrap .sidemenu .search-button{margin:0}#headerwrap #searchform,#headerwrap #searchform #s,#headerwrap #searchform #s:is(:focus,:hover),#headerwrap #searchform .tf_fa:hover+#s{width:100%}#headerwrap #searchform-wrap,.fixed-header-on #headerwrap #searchform-wrap{display:block;margin:1em 0 0}#headerwrap #searchform{clear:both;float:none;inset:auto;margin:0 0 1em;padding:0;position:relative;width:auto}#headerwrap #searchform #s{background-color:#eee;color:#000;float:none;height:auto;margin:auto;padding:11px 15px 10px 35px;position:static;transition:none;width:100%}#headerwrap #searchform .tf_fa:hover+#s{background-color:#eee}#headerwrap #searchform .tf_fa{background:0;color:#000;font-size:18px;height:16px;left:9px;margin:0;padding:3px;position:absolute;top:9px;transform:none;width:16px}
}
/* END MOBILE MENU CSS */