/*
Theme Name:     Neve Child
Theme URI:      https://themeisle.com/themes/neve/
Description:    Child theme for the Neve theme
Author:         ThemeIsle
Author URI:     https://themeisle.com
Template:       neve
Version:        1.0.0
Text Domain:    neve-child
*/



.wp-caption-text {
    margin-bottom:10%;
}


.scroll-to-top {
	background: rgb(0, 0, 0);
}


.fluentform .ff-hidden {
  display: none !important;
  height: 0;
  margin: 0;
  padding: 0;
}





.ff-el-group {
	background: #f0f0f1;
	padding: 5%;
}



.quiz-btn {
	background: #fff;
}


/* WILCO WIFI GRANVIA-STYLE CORE */
:root {
    --primary-black: #000000;
    --text-gray: #333333;
    --bg-gray: #F9F9F9;
}

.wilco-wrapper {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    color: var(--text-gray);
    line-height: 1.6;
}

.wilco-container {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 20px;
}

/* HERO SECTION */
.wilco-hero {
    padding: 5% 0;
    text-align: center;
}

.wilco-hero h1 {
    font-size: clamp(34px, 5vw, 64px);
    font-weight: 900;
    color: var(--primary-black);
    line-height: 1.1;
    margin-bottom: 30px;
    letter-spacing: -1px;
}

.wilco-subheadline {
    font-size: clamp(18px, 2vw, 22px);
    max-width: 800px;
    margin: 0 auto 50px;
    color: #666;
}

/* BUTTONS */
.wilco-cta {
    display: block;
    background: var(--primary-black) !important;
    color: #ffffff !important;
    padding: 20px 50px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 50px;
    transition: transform 0.2s;
    text-align:center;
}

/* Lock Wilco CTA – no animation, no resize, no flash */
.wilco-cta{
  transition: background-color .12s ease !important;
  transform: none !important;
  -webkit-tap-highlight-color: transparent !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

/* Very subtle shade change only */
.wilco-cta:hover,
.wilco-cta:focus,
.wilco-cta:active{
  background: #111111 !important;
  color: #ffffff !important;
  transform: none !important;
  box-shadow: none !important;
  outline: none !important;
}

.ff-btn.ff-btn-submit.ff-btn-md.ff_btn_style {
    margin-bottom:15%;
}

.fluentform .ff-btn-submit a {
		text-align: center !important;
}

.wilco-cta.wilco-in-cart{
  opacity: .65;
  pointer-events: none;
  cursor: default;
  text-align:center;
}


.wilco-scarcity {
    margin-top: 25px;
    font-style: italic;
    color: #888;
    font-size: 15px;
}

/* VALUE STACK */
.wilco-stack {
    background: var(--bg-gray);
    padding: 100px 0;
    margin-bottom:15%;
}

.wilco-stack h2 {
    text-align: center;
    font-size: 36px;
    font-weight: 900;
    margin-bottom: 60px;
    color: var(--primary-black);
}

.wilco-stack-item {
    background: #ffffff;
    display: flex;
    padding: 40px;
    margin-bottom: 25px;
    align-items: flex-start;
    border: 1px solid #eee;
}

.wilco-stack-item .icon {
    font-size: 60px; /* Increased size */
    margin-right: 30px;
    /* Ensure icons don't shrink on mobile */
    flex-shrink: 0; 
}

.wilco-stack-item h3 {
    margin: 0 0 10px;
    font-size: 22px;
    font-weight: 800;
    color: var(--primary-black);
}




/* ASYNC AUDIT PRICING SECTION (no inline styles) */
.wilco-pricing-title{
  font-size: 36px;
  font-weight: 900;
  letter-spacing: -1px;
  margin-bottom: 20px;
  text-align: center;
  color: var(--primary-black);
}

.wilco-buybox{
  max-width: 720px;
  margin: 0 auto;
  text-align: left;
}

.wilco-pricing-subheadline{
  margin-bottom: 30px;
}


/* WILCO SIGNAL VICTORY - MINIMALIST STACK */
.wilco-victory-box {
    background: #ffffff;
    border: 3px solid #000000;
    padding: 15% 10% 12%;
    margin-top: 80px;
    text-align: center;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.wilco-victory-box h2 {
    font-size: 28px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 3px;
    margin-bottom: 40px;
    color: #000;
}

.victory-statement {
    max-width: 700px;
    margin: 0 auto 40px;
    font-size: 18px;
    line-height: 1.6;
}

.victory-promise {
    border-top: 1px solid #000;
    padding: 30px 0 0;
    max-width: 600px;
    margin: 0 auto;
}

.victory-promise h3 {
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
    color: #000;
}

.victory-promise p {
    font-size: 16px;
    margin: 0;
    color: #333;
margin-bottom: 5%;
}

.victory-note {
    font-size: 14px !important;
    color: #888 !important;
    font-style: italic;
    display: block;
    line-height: 1.4;
    margin:5% 0 9% !important;
}

.victory-footer {
    margin-top: 40px;
}








/* =========================
   Wilco FAQ
   ========================= */
.wilco-faq{
  margin-top: 70px;
  padding-top: 60px;
  border-top: 1px solid rgba(0,0,0,0.10);
}

.wilco-faq h2{
  text-align: center;
  font-size: 36px;
  font-weight: 900;
  margin-bottom: 30px;
  color: #000;
}

.wilco-faq-list{
  max-width: 900px;
  margin: 0 auto;
}

.wilco-faq-item{
  background: #fff;
  border: 1px solid #eee;
  padding: 0;
  margin-bottom: 14px;
}

.wilco-faq-item summary{
  list-style: none;
  cursor: pointer;
  padding: 18px 18px;
  font-weight: 800;
  color: #000;
}

.wilco-faq-item summary::-webkit-details-marker{
  display: none;
}

.wilco-faq-item summary::after{
  content: "+";
  float: right;
  font-weight: 900;
  opacity: 0.7;
}

.wilco-faq-item[open] summary::after{
  content: "–";
}

.wilco-faq-answer{
  padding: 0 18px 18px;
  color: #333;
  line-height: 1.6;
  text-align:justify;
}

@media (max-width: 520px){
  .wilco-faq{
    margin-top: 50px;
    padding-top: 45px;
  }

  .wilco-faq h2{
    font-size: 26px;
    margin-bottom: 18px;
  }

  .wilco-faq-item summary{
    padding: 16px 14px;
  }

  .wilco-faq-answer{
    padding: 0 14px 16px;
  }
}









/* MATCHING GRANVIA PILL BUTTON */
.wilco-victory-box .wilco-cta {
    display:block;
    background: #000;
    color: #fff !important;
    padding: 18px 50px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 50px;
    font-size: 14px;
}


/* FOOTER */
.wilco-footer {
    padding: 60px 0;
    text-align: center;
    font-size: 14px;
    color: #999;
}






/* WOOCOMMERCE PRODUCT PAGE CARD STYLES (Granvia B&W) */
.wilco-card {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    background: #ffffff;
    border: 1px solid #eee;
    padding: 30px;
    max-width: 600px;
    margin: 10% auto 15%;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05); /* Soft shadow like the image */
}

.card-header h2 {
    font-size: 24px;
    font-weight: 900;
    margin-bottom: 15px;
    color: #000;
    text-align: center;
}

.card-header p {
    font-size: 15px;
    line-height: 1.5;
    color: #555;
    margin-bottom: 30px;
	text-align: justify;
}

/* Value List Styling */
.value-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.value-list li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #fafafa; /* Very light divider */
    font-size: 15px;
}

.value-list li .item-name {
    display: flex;
    align-items: center;
    font-weight: 600;
    color: #333;
	width: 75%;
}

.value-list li .check-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    margin-right: 10px;
    flex: 0 0 18px;

    /* Hide the emoji so we can render a consistent check */
    font-size: 0;
    line-height: 0;
}

.value-list li .check-icon::before {
    content: "✓";
    font-size: 16px;
    line-height: 1;
    font-weight: 900;
    color: #000;
}


.value-list li .item-value {
    font-weight: 700;
    color: #000;
}

/* Total Value Row */
.total-value-row {
    display: flex;
    justify-content: space-between;
    padding: 15px 0 0 0;
    font-weight: 900;
    font-size: 16px;
    color: #000;
}

/* Price Block */
.price-block {
    text-align: right;
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #eee;
}

.price-block .regular-price {
    text-decoration: line-through;
    color: #888;
    font-size: 16px;
    display: block;
    margin-bottom: 5px;
}

.price-block .sale-price-label {
    font-size: 18px;
    font-weight: bold;
    color: #000;
    display: block;
    margin-bottom: 5px;
}

.price-block .sale-price {
    font-size: 48px;
    font-weight: 900;
    color: #000;
    margin-bottom: 20px;
    display: block;
}

.price-block .coupon-note {
    font-size: 13px;
    color: #555;
    margin-bottom: 20px;
	text-align: center;
}

/* The CTA Button (Matches Homepage Pill Button) */
.wilco-add-to-cart {
    display: inline-block;
    background: #000000;
    color: #ffffff !important;
    padding: 18px 60px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 50px;
    transition: transform 0.2s;
    border: none;
    cursor: pointer;
    width: 100%; /* Full width button like the image */
    box-sizing: border-box;
	text-align: center;
}




/******System Quiz Button *******/

.fluentform .ff-btn-submit {
  background: #000 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 9999px !important;

  display: block;
  width: 100%;
  max-width: 520px;            /* adjust if you want it wider/narrower */
  margin: 0 auto;         /* centers it */

  padding: 18px 26px !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;

  box-shadow: none !important;
}

/* Hover */
.fluentform .ff-btn-submit:hover {
  background: #111 !important;
  transform: translateY(-1px);
  cursor: pointer;
}

/* Focus (keyboard accessibility) */
.fluentform .ff-btn-submit:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0,0,0,0.18);
}






/* =========================
   Global: remove tap/click highlight flash
   ========================= */

/* Mobile tap highlight (the light-blue flash) */
a,
button,
input,
select,
textarea,
[role="button"],
.wp-element-button {
  -webkit-tap-highlight-color: transparent !important;
  -webkit-touch-callout: none !important;
}

/* Prevent "active" background flash on click (DO NOT nuke link backgrounds) */
button:active,
.wp-element-button:active {
  background-color: transparent !important;
}


/* Remove focus styling ONLY when it's not keyboard focus (keeps accessibility) */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
input:focus:not(:focus-visible),
select:focus:not(:focus-visible),
textarea:focus:not(:focus-visible),
.wp-element-button:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}

/* =========================
   Fix button disappearing on click
   ========================= */

button,
a.button,
.wp-element-button,
.woocommerce button,
.woocommerce a.button,
.woocommerce input.button {
  opacity: 1 !important;
  transform: none !important;
}

/* Lock visual state during click */
button:active,
a.button:active,
.wp-element-button:active,
.woocommerce button:active,
.woocommerce a.button:active,
.woocommerce input.button:active {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}

/* Prevent focus/active flicker */
button:focus,
a.button:focus,
.wp-element-button:focus,
.woocommerce button:focus,
.woocommerce a.button:focus,
.woocommerce input.button:focus {
  outline: none !important;
  box-shadow: none !important;
}


.scroll-to-top.scroll-to-top-right.scroll-show-mobile.icon {
   bottom: 18%;
}


/*.woocommerce-MyAccount-content {
    display:none !important;
}*/


/* Woo My Account navigation – link colors */
body.woocommerce-account .woocommerce-MyAccount-navigation a {
    color: #222 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active > a {
    color: #000 !important;
    font-weight: 700;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active {
    border-left: 4px solid #000;
}

/* Hide default Woo dashboard welcome text */
body.woocommerce-account.woocommerce-dashboard .woocommerce-MyAccount-content > p {
    display: none;
}

.woocommerce table.my_account_orders .button {
    background:#222;
}





/* =========================
   Wilco Woo Blocks: Cart + Checkout Buttons
   ========================= */

/* WC Blocks primary buttons (Cart + Checkout) */
.wc-block-components-button:not(.is-link),
.wc-block-components-button.wp-element-button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-cart .wc-block-components-button:not(.is-link),
.wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link) {
  background:#000 !important;
  color:#fff !important;
  border:0 !important;
  border-radius:5px !important;
  padding:16px 26px !important;
  font-weight:900 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
  box-shadow:0 14px 34px rgba(0,0,0,.22) !important;
  transition:all .18s ease !important;
}

/* Make sure inner text inherits */
.wc-block-components-button:not(.is-link) .wc-block-components-button__text{
  color:#fff !important;
  font-weight:900 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
}

/* Hover */
.wc-block-components-button:not(.is-link):hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover{
  filter:brightness(1.08) !important;
  transform:translateY(-1px) !important;
}

/* Active */
.wc-block-components-button:not(.is-link):active{
  transform:translateY(1px) !important;
}

/* Disabled */
.wc-block-components-button.is-disabled,
.wc-block-components-button:disabled{
  opacity:.45 !important;
  cursor:not-allowed !important;
}


.wc-block-components-product-name {
    color:#222;
}

/* Mobile */
@media (max-width:520px){
  .wc-block-components-button:not(.is-link),
  .wc-block-cart__submit-button,
  .wc-block-components-checkout-place-order-button{
    padding:14px 18px !important;
    font-size:12px !important;
  }
}




/* =========================
   Wilco Woo Blocks: disable coupon snackbar popup
   ========================= */

/* Hide the floating “toast/snackbar” confirmations (coupon applied, etc.) */
body.woocommerce-checkout .wc-block-components-notice-snackbar,
body.woocommerce-cart .wc-block-components-notice-snackbar{
  display:none !important;
}

/* Optional: if your theme renders the snackbar inside this wrapper too */
body.woocommerce-checkout .wc-block-components-notices__snackbar,
body.woocommerce-cart .wc-block-components-notices__snackbar{
  display:none !important;
}







/* =========================
   Wilco custom /login page
   ========================= */

.wilco-login-wrap{
  max-width: 440px;
  margin: 40px auto;
  padding: 26px 22px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 18px;
  box-shadow: 0 18px 40px rgba(0,0,0,.10);
}

.wilco-login-wrap h1{
  margin: 0 0 6px 0;
  font-size: 36px;
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: #111;
}

.wilco-login-wrap p{
  margin: 0 0 18px 0;
  font-size: 14px;
  color: rgba(0,0,0,.65);
}

/* WP Login Form structure */
.wilco-login-wrap form{
  margin: 0;
}

.wilco-login-wrap label{
  display:block;
  font-size: 13px;
  font-weight: 700;
  color: rgba(0,0,0,.75);
  margin: 12px 0 6px;
}

.wilco-login-wrap input[type="text"],
.wilco-login-wrap input[type="password"]{
  width: 100%;
  height: 46px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.12);
  background: #fff;
  font-size: 15px;
  outline: none;
  box-shadow: none;
}

.wilco-login-wrap input[type="text"]:focus,
.wilco-login-wrap input[type="password"]:focus{
  border-color: rgba(0,0,0,.35);
  box-shadow: 0 0 0 3px rgba(0,0,0,.08);
}

.wilco-login-wrap .login-remember{
  margin-top: 14px;
}

.wilco-login-wrap .login-remember label{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-weight: 600;
  color: rgba(0,0,0,.70);
}

.wilco-login-wrap .login-remember input{
  transform: scale(1.05);
}

.wilco-login-wrap .login-submit{
  margin-top: 16px;
}

.wilco-login-wrap #wp-submit{
  width: 100%;
  height: 52px;
  border-radius: 999px;
  border: 0;
  background: #111;
  color: #fff;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  cursor: pointer;
}

.wilco-login-wrap #wp-submit:hover{
  filter: brightness(1.05);
}

.wilco-login-wrap #wp-submit:active{
  transform: translateY(1px);
}

/* Mobile spacing */
@media (max-width: 520px){
  .wilco-login-wrap{
    margin: 18px 14px;
    padding: 22px 18px;
  }
  .wilco-login-wrap h1{
    font-size: 34px;
  }
}




/* =========================
   Custom Wilco Footer
   ========================= */

/* Hide Neve's default footer */
.site-footer,
footer.site-footer,
#site-footer{
  display: none !important;
}

/* Our custom footer */
#wilco-footer.wilco-footer{
  background: #000;
  border-top: 1px solid rgba(0,0,0,.10);
  padding: 22px 16px 28px;
}

.wilco-footer__inner{
  max-width: 980px;
  margin: 0 auto;
  text-align: center;
}

.wilco-footer__nav{
  margin-bottom: 14px;
}

.wilco-footer__menu{
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
}

.wilco-footer__menu li{
  margin: 0;
  padding: 0;
}

.wilco-footer__menu a{
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: .02em;
  text-transform: uppercase;
  font-size: 12px;
}

.wilco-footer__menu a:hover{
  opacity: .75;
}

.wilco-footer__meta{
  color: #fff;
  font-size: 11px;
  line-height: 1.5;
}




/* FIX: Woo "Set your password" page missing submit button (mobile) */
body.woocommerce-account form.woocommerce-ResetPassword button[type="submit"],
body.woocommerce-account form.lost_reset_password button[type="submit"],
body.woocommerce-account form.woocommerce-ResetPassword .woocommerce-Button,
body.woocommerce-account form.lost_reset_password .woocommerce-Button,
body.woocommerce-account form.woocommerce-ResetPassword input[type="submit"],
body.woocommerce-account form.lost_reset_password input[type="submit"]{
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;

  width: 100% !important;
  justify-content: center !important;
  align-items: center !important;

  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;

  border: 0 !important;
  border-radius: 8px !important;

  padding: 16px 20px !important;
  min-height: 52px !important;

  font-weight: 900 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;

  cursor: pointer !important;
}

/* Override your global "button:active { background-color: transparent }" rule for THIS button */
body.woocommerce-account form.woocommerce-ResetPassword button[type="submit"]:active,
body.woocommerce-account form.lost_reset_password button[type="submit"]:active,
body.woocommerce-account form.woocommerce-ResetPassword input[type="submit"]:active,
body.woocommerce-account form.lost_reset_password input[type="submit"]:active{
  background-color: #111 !important;
}

/* Small spacing so it doesn't look like it's missing */
body.woocommerce-account form.woocommerce-ResetPassword,
body.woocommerce-account form.lost_reset_password{
  margin-bottom: 26px !important;
}




/* Wilco WiFi – My Account informational notice (clean, neutral) */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info {
  background: #f5f7fa;
  border-left: 3px solid #111;
  color: #111;
  padding: 16px 18px;
  border-radius: 8px;
  font-size: 15px;
  line-height: 1.5;
  box-shadow: none;
}

/* REMOVE Woo icon completely */
.woocommerce-account .woocommerce-message::before,
.woocommerce-account .woocommerce-info::before {
  display: none !important;
  content: none !important;
}

/* Links inside notice */
.woocommerce-account .woocommerce-message a,
.woocommerce-account .woocommerce-info a {
  color: #111;
  font-weight: 600;
  text-decoration: underline;
}





/******* 660px Media Query ******/

@media only screen and (max-width: 600px) {
	
	.wilco-cta,	.wilco-victory-box .wilco-cta {
		display: block;
		text-align:center;
	}
	
	
	.component-wrap {
		display: none;
	}
	
}






/*******My Phone ******/
@media only screen and (max-width: 390px) { 
	
	
	.wilco-hero h1 {
		font-size: 28px;
	}	
	
	.wilco-subheadline {
		font-size: 16px;
	}

.wilco-stack-item .icon {
    font-size: 30px; /* Increased size */
    margin-right: 15px;
    /* Ensure icons don't shrink on mobile */
    flex-shrink: 0; 
}

	.wilco-stack-item {
		padding: 15% 5% 5%;
	}
	
	
	.wilco-victory-box h2 {
		font-size: 18px;
		letter-spacing: 1px;
		line-height: 1.15;
	}

 
.wilco-cta,	.wilco-victory-box .wilco-cta {
		font-size: 12px;
		padding: 18px 25px;
	}
	
	.wilco-cta {
		margin-top: -2%;
	}
	
}








/* =========================
   Async Audit - Consultation Promise box heading fix
   (forces consistent sizing + spacing on mobile)
   ========================= */
.wilco-victory-box h2{
  display: block;
  width: 100%;
  text-align: center;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 2px;
  line-height: 1.15;
  margin: 0 0 18px 0;
  padding: 0;
  font-size: 28px;
}

@media (max-width: 520px){
  .wilco-victory-box h2{
    font-size: 22px;
    letter-spacing: 1.6px;
    margin-bottom: 16px;
  }
}




/* =========================
   Customer Portal - WiFi Quiz Results
   ========================= */
   
   
.wilco-quiz-wrap, .wilco-quiz-qa-item {
    background:#f7f7f7;
    padding:5%;
    border-radius:15px;
}

.wilco-pixel-noscript{
  display: none;
}

.wwr-quiz-title{
  margin-top: 0;
}

.wwr-quiz-qa-list{
  margin-top: 18px;
}

.wwr-quiz-qa-item{
  padding: 14px 0;
  border-top: 1px solid rgba(255,255,255,0.08);
}

.wwr-quiz-qa-label{
  opacity: 0.7;
  font-size: 12px;
}

.wwr-quiz-qa-q{
  font-weight: 600;
  margin: 4px 0 10px;
}

.wwr-quiz-qa-a{
  /* leave open for future tweaks */
}

.wilco-quiz-qa-label {
    display:none;
}

.wilco-quiz-qa-item {
    background:#fff;
    margin-bottom:5%;
}

.wilco-quiz-qa-q {
    margin-bottom:3%;
}

.wilco-quiz-qa-a {
    font-weight:bold;
}


.wilco-terms-page {
    padding: 5%;
}

/* Page 371: justify all content text */
body.page-id-371 .entry-content{
  text-align: justify;
}


/*body.page-id-371 h2, body.page-id-371 .nv-page-title{
    text-align:center;
}*/

.wilco-terms-page h2 {
    text-align:left;
}

.wc-block-components-checkbox__label {
    line-height:28px;
}


.wilco-terms-snapshot{
    margin-top:10%;
}

.wilco-terms-snapshot__title,.wilco-terms-snapshot__meta, .wilco-terms-snapshot__content h1{
    text-align:center;
}




/********** About Page *******/
.wsh-about {
  max-width: 1100px;
  margin: 0 auto;
  padding: 40px 20px;
}

.wsh-about-title {
  text-align: center;
  margin: 0 0 28px;
}

.wsh-about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr; /* equal width columns */
  gap: 40px;
  align-items: start;
}

.wsh-about-card {
  margin: 0;
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
}

.wsh-about-photo {
  display: block;
  width: 100%;          /* fill the entire left column */
  height: auto;
  aspect-ratio: 4 / 5;  /* keeps it consistent */
  object-fit: cover;
}

.wsh-about-caption {
  padding: 16px 18px 18px;
}

.wsh-about-name {
  font-size: 22px;
  font-weight: 700;
  margin: 0 0 4px;
}

.wsh-about-role {
  opacity: .75;
}

.wsh-about-right p {
  margin: 0 0 16px;
  line-height: 1.6;
  text-align:justify;
}

.wsh-about-list {
  margin: 14px 0 0;
  padding-left: 18px;
}

.wsh-about-list li {
  margin: 10px 0;
}

/* Mobile: stack */
@media (max-width: 860px) {
  .wsh-about-grid {
    grid-template-columns: 1fr;
  }
}






/* Text-only, centered, premium (no badge, no shadow, no background) */
.wilco-contact-phone{
  margin: -13% auto 15%;
  text-align: center;
  line-height: 1.2;
}

.wilco-contact-phone__label{
  font-size: 14px;
  font-weight: 600;
  color: rgba(0,0,0,0.55);
  margin-right: 6px;
}

.wilco-contact-phone__number{
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 0.4px;
  color: #000;
  text-decoration: none;
  /*border-bottom: 1px solid rgba(0,0,0,0.15);*/
  padding-bottom: 2px;
}

.wilco-contact-phone__number:hover{
  border-bottom-color: rgba(0,0,0,0.35);
}

.wilco-contact-phone__number:focus-visible{
  outline: 2px solid rgba(0,0,0,0.35);
  outline-offset: 4px;
  border-radius: 6px;
}

/* Mobile: slightly smaller so it stays subtle */
@media (max-width: 480px){
  .wilco-contact-phone__label{ font-size: 13px; }
  .wilco-contact-phone__number{ font-size: 17px; }
}



/* Fluent Forms: bold ONLY field titles (not option text) */
.fluentform .ff-el-input--label > label {
  font-weight: 700 !important;
}

/* Ensure checkbox/radio option labels stay normal */
.fluentform .ff-el-form-check-label,
.fluentform .ff-el-form-check label {
  font-weight: 400 !important;
}



.wilco-footer__coi{
  margin-bottom: 5%;
  text-align: center;
}

.wilco-footer__coi-link{
  color: #fff !important;
  text-decoration: none;
  font-weight: 700;
  font-size: 12px;
}

.wilco-footer__coi-link:hover{
  text-decoration: underline;
}



.wilco-launch-note {
    text-align: center;
    margin-top: 10%;
    font-size: 14px;
    letter-spacing: 0.5px;
}



.wilco-size-label {
    font-weight:600;
}


.azn-box {
margin-top:5%;
}







/* =========================
   Wilco Home V2 (Bridge-First Flow)
   ========================= */

.wilco-home-v2 .wilco-hero-v2{
  padding: 4% 0;
}

.wilco-eyebrow{
  margin: 0 0 30px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(0,0,0,0.55);
}

.wilco-subheadline-v2{
  margin-bottom: 26px;
}

.wilco-hero-actions{
  max-width: 720px;
  margin: 0 auto 26px;
}

.wilco-cta-wide{
  max-width: 560px;
  margin: 0 auto;
}

.wilco-ghost-link{
  display: inline-block;
  margin-top: 14px;
  font-weight: 700;
  color: rgba(0,0,0,0.70);
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,0.22);
  padding-bottom: 2px;
}

.wilco-ghost-link:hover{
  border-bottom-color: rgba(0,0,0,0.45);
}

.wilco-trust-row{
  margin-top: 28px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 14px;
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

.wilco-trust-item{
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.06);
  padding: 14px 14px;
  border-radius: 14px;
  font-weight: 700;
  font-size: 13px;
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
}

.wilco-trust-ico{
  font-size: 16px;
}

/* Sections */
.wilco-bridge,
.wilco-process,
.wilco-proof,
.wilco-recommend{
  padding: 15% 0;
}

.wilco-section-title{
  text-align: center;
  font-size: 36px;
  font-weight: 900;
  margin: 0 0 18px;
  color: #000;
}

.wilco-bridge-grid{
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 18px;
  margin: 5% 0 -25%;
}

.wilco-bridge-card{
  background: #f7f7f7;
  border: 1px solid rgba(0,0,0,0.06);
  border-radius: 0;
  padding: 22px 20px;
}

.wilco-bridge-card h3{
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 900;
  color: #000;
text-align:center;
}

.wilco-bridge-card p{
  margin: 0;
  color: rgba(0,0,0,0.68);
  line-height: 1.6;
text-align:justify;
}

/* Steps */
.wilco-steps{
  max-width: 900px;
  margin: 28px auto 0;
  display: grid;
  gap: 14px;
}

.wilco-step{
  background: #f7f7f7;
  border: 1px solid rgba(0,0,0,0.06);
  /*border-radius:18px;*/
  padding: 18px 18px;
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 14px;
  align-items: start;
}

.wilco-step-num{
  width: 44px;
  height: 44px;
  /*border-radius: 12px;*/
  background: #fff;
  color: #222;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}

.wilco-step-body h3{
  margin: 2px 0 6px;
  font-size: 18px;
  font-weight: 900;
  color: #000;
}

.wilco-step-body p{
  margin: 0;
  color: rgba(0,0,0,0.68);
  line-height: 1.6;
  text-align:justify;
}

.wilco-mid-cta{
  margin-top: 26px;
  text-align: center;
}

.wilco-mid-note{
  margin: 12px 0 0;
  color: rgba(0,0,0,0.60);
  font-size: 13px;
  font-weight: 600;
}

/* Proof */
.wilco-proof{
  background: var(--bg-gray);
}

.wilco-proof-sub{
  text-align: center;
  max-width: 780px;
  margin: 0 auto 24px;
  color: rgba(0,0,0,0.62);
}

.wilco-proof-row{
  display: grid;
  grid-template-columns: 340px 1fr;
  gap: 18px;
  align-items: stretch;
  max-width: 980px;
  margin: 0 auto;
}

.wilco-proof-box{
  background: #fff;
  border: 1px solid rgba(0,0,0,0.06);
  /*border-radius: 18px;*/
  padding: 18px 18px;
}

.wilco-proof-copy h3{
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 900;
  color: #000;
}

.wilco-proof-copy p{
  margin: 0 0 12px;
  color: rgba(0,0,0,0.68);
  line-height: 1.6;
text-align:justify;
}

.wilco-proof-note{
  margin: 0;
  font-weight: 700;
}

/* Recommend section */
.wilco-recommend-sub{
  text-align: center;
  max-width: 760px;
  margin: 0 auto 22px;
  color: rgba(0,0,0,0.62);
  font-weight: 600;
}

.wilco-size-buttons-v2{
  max-width: 620px;
  margin: 0 auto;
  display: grid;
  gap: 14px;
}

.wilco-recommend-fineprint{
  text-align: center;
  max-width: 760px;
  margin: 18px auto 0;
  color: rgba(0,0,0,0.58);
  font-size: 13px;
  font-weight: 600;
}

/* Keep your existing stack but tighten spacing for V2 */
.wilco-stack-v2{
  padding: 90px 0;
}

/* Mobile */
@media (max-width: 860px){
  .wilco-trust-row{
    grid-template-columns: 1fr;
    max-width: 520px;
  }

  .wilco-bridge-grid{
    grid-template-columns: 1fr;
  }

  .wilco-proof-row{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px){
  .wilco-bridge,
  .wilco-process,
  .wilco-proof,
  .wilco-recommend{
    padding: 15% 0;
  }

  .wilco-section-title{
    font-size: 26px;
    margin-bottom: 14px;
  }

  .wilco-step{
    grid-template-columns: 40px 1fr;
  }

  .wilco-step-num{
    width: 40px;
    height: 40px;
    /*border-radius: 12px;*/
  }

   .wilco-eyebrow{
  margin: 0 0 11%;
}



.price-block .sale-price-label {
	margin-bottom:-7%;
}






/* =========================
   Hero: Fast Track + Proof Chips (V2)
   ========================= */

.wilco-home-v2 .wilco-hero-actions{
  max-width: 720px;
  margin: 0 auto 18px;
}

.wilco-home-v2 .wilco-fast-track{
  margin-top: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.wilco-home-v2 .wilco-fast-track__label{
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: rgba(0,0,0,0.55);
  background: rgba(0,0,0,0.04);
  border: 1px solid rgba(0,0,0,0.06);
  padding: 6px 10px;
  border-radius: 999px;
}

.wilco-home-v2 .wilco-fast-track__link{
  font-size: 14px;
  font-weight: 900;
  color: #515151d1;
  text-decoration: none;
 margin-bottom: 5%;
  padding-bottom: 2px;
}

.wilco-home-v2 .wilco-fast-track__link:hover{

}

/* Replace boxed trust row with premium chips */
.wilco-home-v2 .wilco-proof-chips{
  margin-top: 18px;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

.wilco-home-v2 .wilco-chip{
  background: #f7f7f7;
  border: 1px solid rgba(0,0,0,0.06);
  /*border-radius: 999px;*/
  padding: 10px 14px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 800;
  color: rgba(0,0,0,0.72);
  /*box-shadow: 0 6px 18px rgba(0,0,0,0.04);*/
}

.wilco-home-v2 .wilco-chip__ico{
  
line-height: 1;
color: #333;
display:inline-flex;

    /* Hide the emoji so we can render a consistent check */
    font-size: 0;
    line-height: 0;
}



.wilco-home-v2 .wilco-chip__ico::before {    
    content: "✓";
    line-height: 1;
    font-weight: 900;
    color: #000;
  font-size: 14px !important;
}




/* Mobile tuning */
@media (max-width: 520px){
  .wilco-home-v2 .wilco-fast-track{
    margin-top: 12px;
    flex-direction: column;
    gap: 8px;
  }

  .wilco-home-v2 .wilco-fast-track__link{
    font-size: 15px;
  }

  .wilco-home-v2 .wilco-proof-chips{
    margin-top: 16px;
    gap: 10px;
  }

  .wilco-home-v2 .wilco-chip{
    width: 100%;
    justify-content: center;
    /*border-radius: 16px;*/
    padding: 12px 14px;
  }
}


