.gscr_slideOuter,.gscr_slideWrapper .gscr_lSFade{position:relative }.gscr_slideOuter .gscr_lSPager.gscr_lSGallery:after,.gscr_slideWrapper>.gscr_carousel:after{clear:both }.gscr_lSAction>a.gscr_disabled,.gscr_lsDragging{pointer-events:none }.gscr_slideOuter{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none }.gscr_carousel:after,.gscr_carousel:before{content:" ";display:table }.gscr_carousel,.gscr_pagerwrapper{overflow:hidden;margin:0 }.gscr_outerwrapper,.gscr_slideWrapper{max-width:100%;overflow:hidden;position:relative }.gscr_outerwrapper{overflow:visible }.gscr_slideWrapper .gscr_slide{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);-webkit-transition:all 1s;-webkit-transition-property:-webkit-transform,height;-moz-transition-property:-moz-transform,height;transition-property:transform,height;-webkit-transition-duration:inherit!important;transition-duration:inherit!important;-webkit-transition-timing-function:inherit!important;transition-timing-function:inherit!important }.gscr_slideWrapper .gscr_lSFade>*{position:absolute!important;top:0;left:0;z-index:9;margin-right:0;width:100% }.gscr_slideWrapper.gscr_usingCss .gscr_lSFade>*{opacity:0;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:inherit!important;transition-duration:inherit!important;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transition-timing-function:inherit!important;transition-timing-function:inherit!important }.gscr_slideWrapper .gscr_lSFade>.gscr_active{z-index:10 }.gscr_slideWrapper.gscr_usingCss .gscr_lSFade>.gscr_active{opacity:1 }.gscr_slideOuter .gscr_lSPager.gscr_lSpg{margin:10px 0 0;padding:0;text-align:center }.gscr_slideOuter .gscr_lSPager.gscr_lSpg>li{cursor:pointer;display:inline-block;padding:0 5px }.gscr_slideOuter .gscr_lSPager.gscr_lSpg>li a{background-color:#222;border-radius:30px;display:inline-block;height:8px;overflow:hidden;text-indent:-999em;width:8px;position:relative;z-index:99;-webkit-transition:all .5s linear 0s;transition:all .5s linear 0s }.gscr_slideOuter .gscr_lSPager.gscr_lSpg>li.gscr_active a,.gscr_slideOuter .gscr_lSPager.gscr_lSpg>li:hover a{background-color:#428bca }.gscr_slideOuter .gscr_media{opacity:.8 }.gscr_slideOuter .gscr_media.gscr_active{opacity:1 }.gscr_slideOuter .gscr_lSPager.gscr_lSGallery{list-style:none;padding-left:0;margin:0;overflow:hidden;transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);-webkit-transition-property:-webkit-transform;-moz-transition-property:-moz-transform;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none }.gscr_slideOuter .gscr_lSPager.gscr_lSGallery li{overflow:hidden;-webkit-transition:border-radius .12s linear 0s .35s linear 0s;transition:border-radius .12s linear 0s .35s linear 0s }.gscr_slideOuter .gscr_lSPager.gscr_lSGallery li.gscr_active,.gscr_slideOuter .gscr_lSPager.gscr_lSGallery li:hover{border-radius:5px }.gscr_slideOuter .gscr_lSPager.gscr_lSGallery img{display:block;height:auto;max-width:100% }.gscr_slideOuter .gscr_lSPager.gscr_lSGallery:after,.gscr_slideOuter .gscr_lSPager.gscr_lSGallery:before{content:" ";display:table }.gscr_lSAction>a{width:32px;display:block;top:50%;height:32px;cursor:pointer;position:absolute;z-index:99;margin-top:-16px;opacity:.5;-webkit-transition:opacity .35s linear 0s;transition:opacity .35s linear 0s }.gscr_carousel img,.gscr_waterwheel_carousel img{width:100%;display:inline-block }.gscr_lSAction>a:hover{opacity:1 }.gscr_lSAction>.gscr_lSPrev{background-position:0 0;left:10px }.gscr_lSAction>.gscr_lSNext{background-position:-32px 0;right:10px }.gscr_cS-hidden{height:1px;opacity:0;filter:alpha(opacity=0);overflow:hidden }.gscr_slideOuter .gscr_carousel,.gscr_slideOuter .gscr_lSPager{padding-left:0;list-style:none }.gscr_slideOuter .gscr_carousel>*,.gscr_slideOuter .gscr_lSGallery li{float:left }.gscr_slideOuter .gscr_rightEnd{-webkit-animation:rightEnd .3s;animation:rightEnd .3s;position:relative }.gscr_slideOuter .gscr_leftEnd{-webkit-animation:leftEnd .3s;animation:leftEnd .3s;position:relative }.gscr_carousel.gscr_lsGrab>*{cursor:-webkit-grab;cursor:-moz-grab;cursor:-o-grab;cursor:-ms-grab;cursor:grab }.gscr_carousel.gscr_lsGrabbing>*{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:-o-grabbing;cursor:-ms-grabbing;cursor:grabbing }.gscr_html_pager{float:left;margin-right:10px;cursor:pointer }.gscr_waterwheel_carousel{padding:70px 0 }.gscr_waterwheel_carousel img{transition:opacity .4s ease;box-shadow:0 0 10px #000 }.gscr_counter{position:absolute;left:0;background-color:#333;color:#FFF;padding:5px;border-radius:0 0 2px 3px }#gspp_Close,#gspp_Title{margin:0;position:absolute }#gsp_popup,#gspp_Overlay,#gspp_Wrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0) }#gsp_popup{outline:0 }#gspp_Wrapper{max-width:none }#gspp_Overlay{position:fixed;width:100%;height:100%;background:#000;opacity:.9;filter:alpha(opacity=90) }#gspp_BottomLeft,#gspp_MiddleLeft{clear:left }#gspp_Content{position:relative;background:#FFF;box-shadow:0 0 10px #000;border-radius:6px }#gspp_LoadedContent{overflow:auto;-webkit-overflow-scrolling:touch;border-radius:6px;background:#fff;padding:5px }#gspp_LoadedContent.gspp_titled{padding-top:40px!important }#gspp_Title:empty{display:none!important }#gspp_Title{top:0;left:0;background:#e5e5e5;box-sizing:border-box;border-radius:6px 6px 0 0;width:100%;padding:5px 26px 5px 6px;border-bottom:1px solid #d5d5d5 }#gspp_LoadingGraphic,#gspp_LoadingOverlay{position:absolute;top:0;left:0;width:100%;height:100% }#gspp_LoadingOverlay{background-color:#FFF }#gspp_Close{border:0;padding:0;overflow:visible;text-indent:-9999px;width:20px;height:20px;right:5px;top:5px }#gspp_Close:hover{background-position:-50px -25px }.gspp_Photo{margin:0 auto;border:0;display:block;max-width:100%;max-height:100%;-ms-interpolation-mode:bicubic }.gspp_Iframe{background:#fff;width:100%;height:100%;display:block;border:0;padding:0;margin:0 }#colorbox,#gspp_Content,#gspp_LoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box }#gspp_Error{padding:50px;border:1px solid #ccc }.gspp_buttons{border-top:1px solid #e5e5e5;margin-top:10px;padding-top:10px;text-align:right }.gspp_noOverflow{overflow:hidden!important }#gsc_modal_overlay,.gsc_modal{position:fixed;left:0;height:100% }.gsc_modal_close{color:#fff;content:"x";cursor:pointer;display:block;height:25px;position:fixed;right:0;top:0;transition:color .5s ease-in-out 0s;width:25px }#gsc_modal_overlay{top:0;background-color:rgba(94,110,141,.9);z-index:10000;width:100%;-webkit-transition:opacity .2s ease-in;-moz-transition:opacity .2s ease-in;-o-transition:opacity .2s ease-in;transition:opacity .2s ease-in }#gsc_modal_overlay.active{display:block;top:0;left:0;width:100%;height:100% }.gsc_modal{top:0;justify-content:center;text-align:center;width:100%;pointer-events:none;z-index:10001;box-sizing:border-box;-webkit-transition:opacity .2s ease-in;-moz-transition:opacity .2s ease-in;-o-transition:opacity .2s ease-in;transition:opacity .2s ease-in }.gsc_modal .gsc_modal_wrapper{display:inline-block;opacity:1;margin:0 auto;min-height:100px;padding:10px;background-color:#FFF;box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);overflow-y:auto;max-height:99%;box-sizing:border-box;color:#8f9cb5;text-align:center;position:relative }.gsc_modal .gsc_modal_wrapper.gsc_modal_noborder{background-color:transparent;box-shadow:none;border:none }.gsc_modal .gsc_modal_wrapper.gsc_modal_noborder img{box-shadow:2px 2px 8px #333 }.gsc_modal.gsc_modal_fullscreen .gsc_modal_wrapper{width:100%;height:auto;min-height:100%;border-radius:0;padding:0 }.gsc_modal .gsc_modal_wrapper,.gsc_modal_close{pointer-events:visible }#gsc_modal_overlay,.gsc_modal{display:none;opacity:0 }.gsc_modal.gsc_modal_open{display:inline-block }#gsc_modal_overlay.gsc_modal_active{display:block }#gsc_modal_overlay.gsc_modal_active.gsc_modal_animIn,.gsc_modal.gsc_modal_open.gsc_modal_animIn{opacity:1 }#gsc_modal_overlay.gsc_modal_active.gsc_modal_animOut,.gsc_modal.gsc_modal_open.gsc_modal_animOut{opacity:0 }.gsc_modal_noscroll{overflow:hidden }.gsc_modal_vmiddle{display:block;margin:0 auto;position:relative;top:50%;transform:translateY(-50%);-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%) }.gsc_modal img{max-height:100%;max-width:100% }.gsc_modal iframe{width:100%;height:100%;border:none }.clearfix{clear:both }.gsc-ta-clickWrap{padding:0;margin:0 }.gsc-ta-clickWrap li{display:inline-block;border:1px solid #333;background:#fff;padding:5px;border-radius:4px 4px 0 0;cursor:pointer;box-sizing:content-box;float:left;margin-right:2px }.gsc-ta-clickWrap li.gsc-ta-active{border-bottom-color:#fff }.gsc-ta-contentWrap{background:#fff;padding:5px;margin-top:-1px;border:1px solid #000 }.gsc-ta-contentWrap div.gsc-ta-content{display:none }[data-gsta-responsivetab]{margin:0;padding:0 }[data-gsta-responsivetab] li{border:1px solid #333;margin-bottom:2px;list-style:none;padding:5px;cursor:pointer }.gsc-ta-content{margin-bottom:10px }.gsc-ta-overHide{height:30px;overflow:hidden }.gsc-ta-overHide div.gsc_ta_scroll{height:70px }.gsc_ta_scroll{overflow-y:hidden;overflow-x:auto }.google-map{display:block;width:100%;margin:0 auto;float:left;height:300px }.gsc_scroll{width:380px;height:380px;padding:5px;margin-top:5px;overflow:auto;position:relative }.gs_sb_down{border-radius:0 0 7px 7px;bottom:0;cursor:pointer;position:absolute;right:0;padding:2px 0 7px;width:16px;height:16px }.gs_sb_sb{background-color:#bcbcbc;cursor:pointer;width:12px;position:absolute;right:0;border-radius:7px;z-index:2;border:2px solid rgba(255,255,255,.4) }.gs_sb_st,.gs_sb_up{cursor:pointer;position:absolute;right:0;width:16px }.gs_sb_sb_down,.gs_sb_sb_over{background-color:silver }.gs_sb_st{background-color:#dedede;border-radius:7px;height:91%;top:16px;bottom:16px;z-index:1 }.gs_sb_up{border-radius:7px 7px 0 0;height:16px;top:0;padding:2px 0 7px }.gsc_thin_scroll{width:380px;height:150px;padding:0 5px;overflow:auto;position:relative }.gsc_thin_scroll .gs_sb_sb,.gsc_thin_scroll .gs_sb_st{cursor:pointer;width:6px;position:absolute;right:0;border-radius:7px }.gsc_thin_scroll .gs_sb_st{background-color:#dedede;height:100%;top:0;z-index:1 }.gsc_thin_scroll .gs_sb_sb{background-color:#bcbcbc;z-index:2;border:0;bottom:0 }.gsc_scroll::-webkit-scrollbar{width:16px }.gsc_scroll::-webkit-scrollbar-thumb:vertical{box-shadow:inset 1px 0 0 rgba(255,255,255,.4),inset -1px 0 0 rgba(0,0,0,.2);background:#bcbcbc;border-radius:7px;min-height:50px;border:2px solid rgba(255,255,255,.4) }.gsc_scroll.double-both::-webkit-scrollbar-track-piece:vertical:start,.gsc_scroll.double-start::-webkit-scrollbar-track-piece:vertical:start,.gsc_scroll.single::-webkit-scrollbar-track-piece:vertical:start,.gsc_scroll:not(.none):not(.double-end)::-webkit-scrollbar-track-piece:vertical:start:double-button,.gsc_scroll:not(.none):not(.double-end)::-webkit-scrollbar-track-piece:vertical:start:single-button{margin-top:-10px }.gsc_scroll.double-both::-webkit-scrollbar-track-piece:vertical:end,.gsc_scroll.double-end::-webkit-scrollbar-track-piece:vertical:end,.gsc_scroll.single::-webkit-scrollbar-track-piece:vertical:end,.gsc_scroll:not(.none):not(.double-start)::-webkit-scrollbar-track-piece:vertical:end:double-button,.gsc_scroll:not(.none):not(.double-start)::-webkit-scrollbar-track-piece:vertical:end:single-button{margin-bottom:-10px }.gsc_scroll::-webkit-scrollbar-track-piece:vertical:decrement{background:#f0f0f0;border-radius:7px 7px 0 0;box-shadow:inset 1px 1px 16px rgba(0,0,0,.1) }.gsc_scroll::-webkit-scrollbar-track-piece:vertical:increment{background:#f0f0f0;border-radius:0 0 7px 7px;box-shadow:inset 1px 1px 16px rgba(0,0,0,.1) }.gsc_scroll::-webkit-scrollbar-button:vertical{background:#bcbcbc;height:30px }.gsc_scroll::-webkit-scrollbar-button:vertical:hover{background:#999 }.gsc_scroll::-webkit-scrollbar-button:vertical:decrement,.gsc_scroll::-webkit-scrollbar-button:vertical:hover:decrement{background-repeat:no-repeat,repeat-y;background-position:4px 8px;border-radius:7px }.gsc_scroll::-webkit-scrollbar-button:vertical:hover:increment,.gsc_scroll::-webkit-scrollbar-button:vertical:increment{background-repeat:no-repeat,repeat-y;background-position:4px 17px;border-radius:7px }.gsc_thin_scroll::-webkit-scrollbar{width:8px }.gsc_thin_scroll::-webkit-scrollbar-thumb,.gsc_thin_scroll::-webkit-scrollbar-track{border-radius:10px;background:#e3e3e3 }.gsc_thin_scroll::-webkit-scrollbar-thumb{background:#a4a4a4 }.gsc_thin_scroll::-webkit-scrollbar-thumb:hover{background:#999 }table .gsc_thin_scroll{width:auto }table.gsct_scroll tbody,table.gsct_scroll thead{display:block }table.gsct_scroll tbody{overflow-y:auto }table.gsct_scroll tr{width:100%;display:table }
/* Mobile on-road price: hide dealer quote + T&C footnotes (desktop keeps them) */
.newpricewrapmobi .dealerprice,
.newpricewrapmobi .newprice_termscon {
    display: none !important;
}

/* Mobile on-road price: hide Base Model label (desktop variant column keeps it) */
.newpricewrapmobi .varinttooltip {
    display: none !important;
}

/* Floating callback request: full-viewport layer, pointer-events none on shell so only FAB/panel/backdrop receive taps */
#shaw-callback-root {
    font-family: Arial, Helvetica, sans-serif;
    box-sizing: border-box;
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    max-height: none;
    pointer-events: none;
    z-index: 2147483646;
    isolation: isolate;
    overflow: visible;
}

/* WebKit/mobile: parent pointer-events:none can break hit-testing on fixed children; enable while dialog is open */
#shaw-callback-root.shaw-cb-root--open {
    pointer-events: auto;
}

/* While open, stack FAB above the panel so the Callback button stays tappable to close */
#shaw-callback-root.shaw-cb-root--open .shaw-cb-anchor {
    z-index: 2147483647;
}

#shaw-callback-root.shaw-cb-root--open .shaw-cb-panel.shaw-cb-panel--open {
    z-index: 2147483646;
}

#shaw-callback-root *,
#shaw-callback-root *::before,
#shaw-callback-root *::after {
    box-sizing: border-box;
}

body.shaw-cb-noscroll {
    overflow: hidden;
}

/* Touch / iOS: lock scroll on html (do not use touch-action:none on body — it blocks FAB taps) */
html.shaw-cb-noscroll-html {
    overflow: hidden;
    height: 100%;
}

html.shaw-cb-noscroll-html body {
    overflow: hidden;
}

/* Fixed corner anchor: FAB only (panel is position:fixed + JS-placed for cross-device reliability) */
.shaw-cb-anchor {
    position: fixed;
    z-index: 2147483646;
    right: max(16px, env(safe-area-inset-right));
    bottom: max(20px, env(safe-area-inset-bottom));
    pointer-events: auto;
}

@keyframes shaw-cb-pulse-ring {
    0% {
        transform: scale(1);
        opacity: 0.7;
    }
    100% {
        transform: scale(1.72);
        opacity: 0;
    }
}

@keyframes shaw-cb-bob {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-6px);
    }
}

@keyframes shaw-cb-glow-breathe {
    0%,
    100% {
        box-shadow:
            0 8px 32px rgba(29, 130, 62, 0.48),
            0 4px 16px rgba(0, 0, 0, 0.22),
            inset 0 1px 0 rgba(255, 255, 255, 0.22);
    }
    50% {
        box-shadow:
            0 12px 42px rgba(34, 180, 85, 0.58),
            0 6px 22px rgba(0, 0, 0, 0.26),
            inset 0 1px 0 rgba(255, 255, 255, 0.28);
    }
}

@keyframes shaw-cb-icon-breathe {
    0%,
    100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.08);
    }
}

.shaw-cb-fab {
    position: relative;
    z-index: 2;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 11px;
    background: linear-gradient(155deg, #24ad52 0%, #1d823e 42%, #124f24 100%);
    color: #fff;
    overflow: visible;
    isolation: isolate;
    animation:
        shaw-cb-bob 2.7s ease-in-out infinite,
        shaw-cb-glow-breathe 3s ease-in-out infinite;
    transition:
        transform 0.32s cubic-bezier(0.34, 1.45, 0.64, 1),
        box-shadow 0.32s ease;
}

.shaw-cb-fab::before,
.shaw-cb-fab::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    height: 100%;
    margin-left: -50%;
    margin-top: -50%;
    border-radius: 50%;
    border: 2px solid rgba(120, 240, 160, 0.55);
    pointer-events: none;
    animation: shaw-cb-pulse-ring 2.6s cubic-bezier(0.22, 1, 0.36, 1) infinite;
    z-index: -1;
}

.shaw-cb-fab::after {
    animation-delay: 1.3s;
    border-color: rgba(29, 130, 62, 0.4);
}

.shaw-cb-fab:hover,
.shaw-cb-fab:focus-visible {
    animation: none;
    transform: scale(1.12) translateY(-4px);
    box-shadow:
        0 16px 48px rgba(29, 130, 62, 0.55),
        0 8px 28px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.3);
    outline: none;
}

.shaw-cb-fab:hover::before,
.shaw-cb-fab:hover::after,
.shaw-cb-fab:focus-visible::before,
.shaw-cb-fab:focus-visible::after {
    animation-play-state: paused;
    opacity: 0;
}

.shaw-cb-fab:focus-visible {
    box-shadow:
        0 0 0 4px rgba(255, 255, 255, 0.95),
        0 0 0 8px rgba(29, 130, 62, 0.5),
        0 16px 48px rgba(29, 130, 62, 0.45);
}

.shaw-cb-fab:active {
    transform: scale(1.04) translateY(-1px);
    transition-duration: 0.1s;
}

.shaw-cb-fab-icon {
    display: flex;
    line-height: 0;
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.25));
}

.shaw-cb-fab-icon svg {
    display: block;
    transform-origin: center;
    animation: shaw-cb-icon-breathe 2.2s ease-in-out infinite;
}

.shaw-cb-fab:hover .shaw-cb-fab-icon svg,
.shaw-cb-fab:focus-visible .shaw-cb-fab-icon svg {
    animation: shaw-cb-icon-breathe 0.75s ease-in-out infinite;
}

.shaw-cb-fab-label {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    line-height: 1;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

.shaw-cb-backdrop {
    position: fixed;
    inset: 0;
    z-index: 2147483644;
    background: rgba(15, 23, 42, 0.48);
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity 0.34s cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0s linear 0.34s;
}

.shaw-cb-backdrop.shaw-cb-backdrop--open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto !important;
    transition:
        opacity 0.34s cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0s;
}

.shaw-cb-panel {
    position: fixed;
    z-index: 2147483647;
    left: auto;
    top: auto;
    display: flex;
    flex-direction: column;
    transform-origin: bottom right;
    /* Fallback placement before/without JS; openModal overwrites bottom/right/width/maxHeight */
    bottom: 120px;
    right: max(16px, env(safe-area-inset-right));
    width: min(400px, calc(100vw - 28px));
    max-height: min(520px, calc(100vh - 96px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));
    max-height: min(520px, calc(100dvh - 96px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));
    overflow: hidden;
    padding: 0;
    background: #fff;
    border-radius: 14px;
    box-shadow:
        0 12px 40px rgba(0, 0, 0, 0.18),
        0 4px 14px rgba(0, 0, 0, 0.1);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: scale(0.88) translateY(18px);
    transition:
        opacity 0.38s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.38s cubic-bezier(0.22, 1, 0.36, 1),
        visibility 0s linear 0.38s,
        box-shadow 0.38s ease;
}

.shaw-cb-panel-head {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    flex-shrink: 0;
    padding: 14px 12px 10px 18px;
    border-bottom: 1px solid #e2e8f0;
    touch-action: manipulation;
}

.shaw-cb-panel-titles {
    flex: 1;
    min-width: 0;
    max-width: calc(100% - 56px);
}

.shaw-cb-panel-scroll {
    flex: 1;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    padding: 14px 18px 18px;
    touch-action: pan-y;
}

/* Pointer toward the FAB (bottom-right of panel aligns with button) */
.shaw-cb-panel::after {
    content: "";
    position: absolute;
    z-index: 0;
    bottom: -7px;
    right: 28px;
    width: 14px;
    height: 14px;
    background: #fff;
    transform: rotate(45deg);
    box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.08);
    border-radius: 2px;
    pointer-events: none;
}

.shaw-cb-panel.shaw-cb-panel--open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto !important;
    isolation: isolate;
    transform: scale(1) translateY(0);
    transition:
        opacity 0.38s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.38s cubic-bezier(0.34, 1.2, 0.36, 1),
        visibility 0s,
        box-shadow 0.38s ease;
}

/* Phones / narrow viewports: no transform (fixes WebKit hit-testing); tablets may report fine pointer */
@media (pointer: coarse), (max-width: 1024px) {
    .shaw-cb-panel {
        transform: none !important;
        transition: opacity 0.28s ease, visibility 0s linear 0.28s, box-shadow 0.28s ease;
    }

    .shaw-cb-panel.shaw-cb-panel--open {
        transform: none !important;
        transition: opacity 0.28s ease, visibility 0s, box-shadow 0.28s ease;
    }

    .shaw-cb-backdrop {
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
    }
}

.shaw-cb-close {
    position: relative;
    z-index: 100;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    flex: 0 0 auto;
    align-self: flex-start;
    margin: -4px -4px 0 0;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 56px;
    min-height: 56px;
    width: 56px;
    height: 56px;
    padding: 0;
    border: none;
    background: rgba(241, 245, 249, 0.95);
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    color: #334155;
    border-radius: 10px;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    pointer-events: auto;
    -webkit-user-select: none;
    user-select: none;
}

.shaw-cb-close-x {
    pointer-events: none;
    line-height: 1;
}

.shaw-cb-close:hover,
.shaw-cb-close:focus-visible {
    background: #f1f5f9;
    color: #0f172a;
    outline: none;
}

.shaw-cb-title {
    margin: 0 0 4px;
    padding: 0;
    font-size: 1.25rem;
    font-weight: 700;
    color: #0f172a;
}

.shaw-cb-sub {
    margin: 0;
    font-size: 0.875rem;
    color: #64748b;
}

.shaw-cb-field {
    margin-bottom: 14px;
}

.shaw-cb-field label {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #334155;
    margin-bottom: 6px;
}

.shaw-cb-req {
    color: #c0262d;
}

.shaw-cb-input {
    width: 100%;
    padding: 10px 12px;
    font-size: 16px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    background: #fff;
    color: #0f172a;
}

.shaw-cb-input:focus {
    border-color: #1d823e;
    outline: none;
    box-shadow: 0 0 0 3px rgba(29, 130, 62, 0.2);
}

.shaw-cb-msg {
    min-height: 1.25em;
    font-size: 0.875rem;
    margin: 4px 0 10px;
}

.shaw-cb-msg-err {
    color: #b91c1c;
}

.shaw-cb-msg-ok {
    color: #15803d;
}

.shaw-cb-submit {
    width: 100%;
    padding: 12px 16px;
    font-size: 1rem;
    font-weight: 700;
    color: #fff;
    background: linear-gradient(145deg, #1d823e, #156b33);
    border: none;
    border-radius: 8px;
    cursor: pointer;
}

.shaw-cb-submit:disabled {
    opacity: 0.65;
    cursor: not-allowed;
}

@media (max-width: 480px) {
    .shaw-cb-anchor {
        right: max(12px, env(safe-area-inset-right));
        bottom: max(16px, env(safe-area-inset-bottom));
    }

    .shaw-cb-fab {
        width: 72px;
        height: 72px;
        padding: 10px;
        gap: 3px;
    }

    .shaw-cb-fab-label {
        font-size: 9px;
        letter-spacing: 0.05em;
    }

    .shaw-cb-panel {
        width: calc(100vw - 24px);
        max-height: calc(100vh - 88px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
        max-height: calc(100dvh - 88px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    }

    .shaw-cb-panel-head {
        padding: 12px 10px 8px 14px;
    }

    .shaw-cb-panel-scroll {
        padding: 12px 14px 16px;
    }

    .shaw-cb-panel::after {
        right: 24px;
    }

    .shaw-cb-title {
        font-size: 1.125rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .shaw-cb-fab,
    .shaw-cb-fab::before,
    .shaw-cb-fab::after,
    .shaw-cb-fab-icon svg {
        animation: none !important;
    }

    .shaw-cb-fab::before,
    .shaw-cb-fab::after {
        display: none;
    }

    .shaw-cb-fab:hover,
    .shaw-cb-fab:focus-visible {
        transform: scale(1.06);
    }

    .shaw-cb-backdrop,
    .shaw-cb-backdrop.shaw-cb-backdrop--open,
    .shaw-cb-panel,
    .shaw-cb-panel.shaw-cb-panel--open {
        transition-duration: 0.01ms !important;
    }
}
