diff --git a/app/code/Magento/Authorizenet/view/frontend/web/template/payment/authorizenet-directpost.html b/app/code/Magento/Authorizenet/view/frontend/web/template/payment/authorizenet-directpost.html
index 0ea2ebb85fe98034cba2fdc98a52e3c55d72eecc..e596ced5d783473c5196c3b06b5d9f15763b8795 100644
--- a/app/code/Magento/Authorizenet/view/frontend/web/template/payment/authorizenet-directpost.html
+++ b/app/code/Magento/Authorizenet/view/frontend/web/template/payment/authorizenet-directpost.html
@@ -54,14 +54,14 @@
                     <button data-role="review-save"
                             type="submit"
                             data-bind="
-                            attr: {title: $t('Place order')},
+                            attr: {title: $t('Place Order')},
                             enable: (getCode() == isChecked()),
                             click: placeOrder,
                             css: {disabled: !isPlaceOrderActionAllowed()}
                             "
                             class="action primary checkout"
                             disabled>
-                        <span data-bind="text: $t('Place order')"></span>
+                        <span data-bind="text: $t('Place Order')"></span>
                     </button>
                 </div>
             </div>
diff --git a/app/code/Magento/Braintree/view/frontend/web/template/payment/braintree-paypal-form.html b/app/code/Magento/Braintree/view/frontend/web/template/payment/braintree-paypal-form.html
index 2ce6b39838900f17d21965894ca4eeff9a11c4fa..149e1bdfd542001bcbd1a6d9bddd413e4812206d 100644
--- a/app/code/Magento/Braintree/view/frontend/web/template/payment/braintree-paypal-form.html
+++ b/app/code/Magento/Braintree/view/frontend/web/template/payment/braintree-paypal-form.html
@@ -34,14 +34,14 @@
                 <button data-role="review-save"
                         type="submit"
                         data-bind="
-                        attr: {title: $t('Place order')},
+                        attr: {title: $t('Place Order')},
                         enable: (getCode() == isChecked()),
                         click: placeOrder,
                         css: {disabled: !isPlaceOrderActionAllowed()}
                         "
                         class="action primary checkout"
                         disabled>
-                    <span data-bind="text: $t('Place order')"></span>
+                    <span data-bind="text: $t('Place Order')"></span>
                 </button>
             </div>
         </div>
diff --git a/app/code/Magento/Braintree/view/frontend/web/template/payment/cc-form.html b/app/code/Magento/Braintree/view/frontend/web/template/payment/cc-form.html
index c59b42eac2e721022f281f72e25e62427d1a7e90..8073eb00f64e4e625db30b08a1174bea759c772a 100644
--- a/app/code/Magento/Braintree/view/frontend/web/template/payment/cc-form.html
+++ b/app/code/Magento/Braintree/view/frontend/web/template/payment/cc-form.html
@@ -151,12 +151,26 @@
                     <span><!-- ko text: $t('Card Verification Number')--><!-- /ko --></span>
                 </label>
                 <div class="control">
-                    <input type="number" class="input-text cvv" name="payment[cc_cid]" value=""
-                            data-bind="attr: {id: getCode() + '_cc_cid', title: $t('Card Verification Number'), 'data-container': getCode() + '-cc-cvv', 'data-validate': JSON.stringify({'required-number':true, 'validate-cc-cvn':'#' + getCode() + '_cc_type'})},
-                            enable: true,
-                            value: creditCardVerificationNumber"/>
-                    <div class="note">
-                        <a href="#" class="action cvv" data-bind="attr: {title: $t('What is this?')}, mageInit:{'tooltip': {'content': getCvvImageHtml()}}"><span><!-- ko text: $t('What is this?')--><!-- /ko --></span></a>
+                    <input type="number"
+                           class="input-text cvv"
+                           name="payment[cc_cid]"
+                           value=""
+                           data-bind="attr: {id: getCode() + '_cc_cid',
+                           title: $t('Card Verification Number'),
+                           'data-container': getCode() + '-cc-cvv',
+                           'data-validate': JSON.stringify({'required-number':true, 'validate-cc-cvn':'#' + getCode() + '_cc_type'})},
+                           enable: true,
+                           value: creditCardVerificationNumber" />
+                    <div class="field-tooltip toggle">
+                        <span class="field-tooltip-action action-cvv"
+                              tabindex="0"
+                              data-toggle="dropdown"
+                              data-bind="attr: {title: $t('What is this?')}, mageInit: {'dropdown':{'activeClass': '_active'}}">
+                            <span><!-- ko text: $t('What is this?')--><!-- /ko --></span>
+                        </span>
+                        <div class="field-tooltip-content"
+                             data-target="dropdown"
+                             data-bind="html: getCvvImageHtml()"></div>
                     </div>
                 </div>
             </div>
diff --git a/app/code/Magento/Payment/view/frontend/web/template/payment/cc-form.html b/app/code/Magento/Payment/view/frontend/web/template/payment/cc-form.html
index 0b7e69fa0bd0acb5bcbdc48eabf1633cfdb325c1..c630d0039928ea9aaf53c035d5279f59fb529ee1 100644
--- a/app/code/Magento/Payment/view/frontend/web/template/payment/cc-form.html
+++ b/app/code/Magento/Payment/view/frontend/web/template/payment/cc-form.html
@@ -99,15 +99,27 @@
             <span><!-- ko text: $t('Card Verification Number')--><!-- /ko --></span>
         </label>
         <div class="control _with-tooltip">
-            <input type="number" autocomplete="off" class="input-text cvv" name="payment[cc_cid]" value=""
-                   data-bind="attr: {id: getCode() + '_cc_cid', title: $t('Card Verification Number'), 'data-container': getCode() + '-cc-cvv', 'data-validate': JSON.stringify({'required-number':true, 'validate-card-cvv':'#' + getCode() + '_cc_type'})},
-                             enable: isActive($parents),
-                             value: creditCardVerificationNumber"/>
+            <input type="number"
+                   autocomplete="off"
+                   class="input-text cvv"
+                   name="payment[cc_cid]"
+                   value=""
+                   data-bind="attr: {id: getCode() + '_cc_cid',
+                        title: $t('Card Verification Number'),
+                        'data-container': getCode() + '-cc-cvv',
+                        'data-validate': JSON.stringify({'required-number':true, 'validate-card-cvv':'#' + getCode() + '_cc_type'})},
+                        enable: isActive($parents),
+                        value: creditCardVerificationNumber" />
             <div class="field-tooltip toggle">
-                <span class="field-tooltip-action action-cvv" data-bind="attr: {title: $t('What is this?')}">
+                <span class="field-tooltip-action action-cvv"
+                      tabindex="0"
+                      data-toggle="dropdown"
+                      data-bind="attr: {title: $t('What is this?')}, mageInit: {'dropdown':{'activeClass': '_active'}}">
                     <span><!-- ko text: $t('What is this?')--><!-- /ko --></span>
                 </span>
-                <div class="field-tooltip-content" data-bind="html: getCvvImageHtml()"></div>
+                <div class="field-tooltip-content"
+                     data-target="dropdown"
+                     data-bind="html: getCvvImageHtml()"></div>
             </div>
         </div>
     </div>
diff --git a/app/code/Magento/Payment/view/frontend/web/template/payment/iframe.html b/app/code/Magento/Payment/view/frontend/web/template/payment/iframe.html
index b9abaa6694130fb7fdd959b431f45965d9c2a5ec..82774b93a59fe3d483ba3f4d3ee0987d45b4b3e9 100644
--- a/app/code/Magento/Payment/view/frontend/web/template/payment/iframe.html
+++ b/app/code/Magento/Payment/view/frontend/web/template/payment/iframe.html
@@ -29,9 +29,9 @@
 <div class="actions-toolbar" id="review-buttons-container">
     <div class="primary">
         <button data-role="review-save" type="submit"
-                data-bind="attr: {title: $t('Place order')}"
+                data-bind="attr: {title: $t('Place Order')}"
                 class="button action primary checkout">
-            <span data-bind="text: $t('Place order')"></span>
+            <span data-bind="text: $t('Place Order')"></span>
         </button>
         <button type="submit" id="originalPlaceOrder" class="hidden"
                 data-bind="click: originalPlaceOrder($parents[1])"></button>
diff --git a/app/code/Magento/Paypal/view/frontend/web/template/payment/payflowpro-form.html b/app/code/Magento/Paypal/view/frontend/web/template/payment/payflowpro-form.html
index 0292ef42cfd55d0cff8b7b7944c97595e7c6c00d..5ebcba12664785178c1fdf5f7562e1b51ab6d4d8 100644
--- a/app/code/Magento/Paypal/view/frontend/web/template/payment/payflowpro-form.html
+++ b/app/code/Magento/Paypal/view/frontend/web/template/payment/payflowpro-form.html
@@ -53,14 +53,14 @@
                     <button data-role="review-save"
                             type="submit"
                             data-bind="
-                            attr: {title: $t('Place order')},
+                            attr: {title: $t('Place Order')},
                             enable: (getCode() == isChecked()),
                             click: placeOrder,
                             css: {disabled: !isPlaceOrderActionAllowed()}
                             "
                             class="action primary checkout"
                             disabled>
-                        <span data-bind="text: $t('Place order')"></span>
+                        <span data-bind="text: $t('Place Order')"></span>
                     </button>
                 </div>
             </div>
diff --git a/app/code/Magento/Shipping/view/frontend/web/template/checkout/shipping/shipping-policy.html b/app/code/Magento/Shipping/view/frontend/web/template/checkout/shipping/shipping-policy.html
index 2cbe9af66082875918159428833dee017e075ebf..22deac392831ca05a8b738283d7e26adfe34ee92 100644
--- a/app/code/Magento/Shipping/view/frontend/web/template/checkout/shipping/shipping-policy.html
+++ b/app/code/Magento/Shipping/view/frontend/web/template/checkout/shipping/shipping-policy.html
@@ -4,11 +4,16 @@
  * See COPYING.txt for license details.
  */
 -->
-<div class="shipping-policy-block field-tooltip" data-bind="visible: config.isEnabled">
-    <span class="field-tooltip-action">
+<div class="shipping-policy-block field-tooltip"
+     data-bind="visible: config.isEnabled">
+    <span class="field-tooltip-action"
+          tabindex="0"
+          data-toggle="dropdown"
+          data-bind="mageInit: {'dropdown':{'activeClass': '_active'}}">
         <!-- ko text: $t('See our Shipping Policy') --><!-- /ko -->
     </span>
-    <div class="field-tooltip-content">
+    <div class="field-tooltip-content"
+         data-target="dropdown">
         <span data-bind="html: config.shippingPolicyContent"></span>
     </div>
 </div>
diff --git a/app/code/Magento/Ui/view/frontend/web/templates/form/element/helper/tooltip.html b/app/code/Magento/Ui/view/frontend/web/templates/form/element/helper/tooltip.html
index b2ef214e944a5e63c14f8b00f6d4297280baa284..cc0a600888c1829ef2de7e034f420b8b74bbb45d 100644
--- a/app/code/Magento/Ui/view/frontend/web/templates/form/element/helper/tooltip.html
+++ b/app/code/Magento/Ui/view/frontend/web/templates/form/element/helper/tooltip.html
@@ -5,9 +5,23 @@
  */
 -->
  <div class="field-tooltip toggle">
-    <a class="field-tooltip-action action-help" target="_blank" data-bind="attr: {href: tooltip.link}">
-    </a>
-    <div class="field-tooltip-content">
+
+    <!-- ko if: (tooltip.link)-->
+    <a class="field-tooltip-action action-help"
+       target="_blank"
+       data-toggle="dropdown"
+       data-bind="attr: {href: tooltip.link}, mageInit: {'dropdown':{'activeClass': '_active'}}"></a>
+     <!-- /ko -->
+
+     <!-- ko if: (!tooltip.link)-->
+     <span class="field-tooltip-action action-help"
+        tabindex="0"
+        data-toggle="dropdown"
+        data-bind="mageInit: {'dropdown':{'activeClass': '_active'}}"></span>
+     <!-- /ko -->
+
+    <div class="field-tooltip-content"
+         data-target="dropdown">
         <!-- ko text: tooltip.description --><!-- /ko -->
     </div>
 </div>
diff --git a/app/design/adminhtml/Magento/backend/web/css/source/components/_popups.less b/app/design/adminhtml/Magento/backend/web/css/source/components/_popups.less
index 6b61accec5875976a780ef4169fc472b595ec6fb..c9ced7dba320629247a6d27e622bb7d7187668e2 100644
--- a/app/design/adminhtml/Magento/backend/web/css/source/components/_popups.less
+++ b/app/design/adminhtml/Magento/backend/web/css/source/components/_popups.less
@@ -482,6 +482,10 @@
     }
 }
 
+.ui-widget-overlay {
+    &:extend(.abs-modal-overlay all);
+}
+
 .overlay_magento {
     &:extend(.abs-modal-overlay all);
     z-index: 800 !important;
diff --git a/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/module/checkout/_tooltip.less b/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/module/checkout/_tooltip.less
index d867cc3387355f400f35932bbad34242d21c4c06..cc9d6c7a0876c7702b9aada9ac1e9cab19eaf948 100644
--- a/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/module/checkout/_tooltip.less
+++ b/app/design/frontend/Magento/blank/Magento_Checkout/web/css/source/module/checkout/_tooltip.less
@@ -37,13 +37,14 @@
 & when (@media-common = true) {
 
     .field-tooltip {
+        cursor: pointer;
         position: absolute;
         right: 0;
         top: 1px;
 
-        &:hover {
+        &._active {
             .css(z-index, @checkout-tooltip__hover__z-index);
-            cursor: pointer;
+
             .field-tooltip-content {
                 display: block;
             }
@@ -56,19 +57,23 @@
 
         .field-tooltip-action {
             .icon-font(
-            @checkout-tooltip-icon__content,
-            @_icon-font-size: @checkout-tooltip-icon__font-size,
-            @_icon-font-text-hide: true,
-            @_icon-font-color: @checkout-tooltip-icon__color,
-            @_icon-font-color-hover: @checkout-tooltip-icon__hover__color,
-            @_icon-font-color-active: false
+                @checkout-tooltip-icon__content,
+                @_icon-font-size: @checkout-tooltip-icon__font-size,
+                @_icon-font-text-hide: true,
+                @_icon-font-color: @checkout-tooltip-icon__color,
+                @_icon-font-color-hover: @checkout-tooltip-icon__hover__color,
+                @_icon-font-color-active: false
             );
+
             &:focus {
-                &:before {
-                    .css(color, @checkout-tooltip-icon__hover__color);
-                }
-                + .field-tooltip-content {
-                    display: block;
+                ._keyfocus & {
+                    .css(z-index, @checkout-tooltip__hover__z-index);
+                    + .field-tooltip-content {
+                        display: block;
+                    }
+                    &:before {
+                        .css(color, @checkout-tooltip-icon__hover__color);
+                    }
                 }
             }
         }
diff --git a/app/design/frontend/Magento/blank/web/css/source/_extends.less b/app/design/frontend/Magento/blank/web/css/source/_extends.less
index 19705339dae3c4f0430aac361f16a2952ef1350c..0983be45a276f5216ecf108e4024013ad0323ed2 100644
--- a/app/design/frontend/Magento/blank/web/css/source/_extends.less
+++ b/app/design/frontend/Magento/blank/web/css/source/_extends.less
@@ -1046,18 +1046,6 @@
     input {
         .css(margin-right, @indent__s);
         width: calc(~"100% - (@{checkout-tooltip-icon__font-size} + @{indent__s} + @{indent__xs})");
-        &:focus {
-            + .field-tooltip {
-                .field-tooltip-action {
-                    &:before {
-                        .css(color, @checkout-tooltip-icon__hover__color);
-                    }
-                }
-                .field-tooltip-content {
-                    display: block;
-                }
-            }
-        }
     }
 }
 
diff --git a/app/design/frontend/Magento/luma/web/css/source/_extends.less b/app/design/frontend/Magento/luma/web/css/source/_extends.less
index 04018f6977c016c96c9444e206a8eb64ba787fff..bdd133e5cc3fcc9a182333062090ce1417b545da 100644
--- a/app/design/frontend/Magento/luma/web/css/source/_extends.less
+++ b/app/design/frontend/Magento/luma/web/css/source/_extends.less
@@ -1434,18 +1434,6 @@
     input {
         .css(margin-right, @indent__s);
         width: calc(~"100% - (@{checkout-tooltip-icon__font-size} + @{indent__s} + @{indent__xs})");
-        &:focus {
-            + .field-tooltip {
-                .field-tooltip-action {
-                    &:before {
-                        .css(color, @checkout-tooltip-icon__hover__color);
-                    }
-                }
-                .field-tooltip-content {
-                    display: block;
-                }
-            }
-        }
     }
 }
 
diff --git a/lib/web/mage/dropdowns.js b/lib/web/mage/dropdowns.js
index 83f692461544fb7fd59084946fcb7072971402cd..85f9214c4b4a62122522a984ee8bbee8f2f1650b 100644
--- a/lib/web/mage/dropdowns.js
+++ b/lib/web/mage/dropdowns.js
@@ -108,7 +108,7 @@ define([
                 if(options.autoclose === true) {
                     self.reset({elems: actionElem.not(elem)});
                 }
-                self[elem.hasClass('active') ? 'closeDropdown' : 'openDropdown'](elem);
+                self[elem.hasClass(options.activeClass) ? 'closeDropdown' : 'openDropdown'](elem);
 
                 return false;
             });