:root{--gcfm-ink:#292929;--gcfm-muted:#6d6d6d;--gcfm-line:#dde4ea;--gcfm-soft:#eef6fb;--gcfm-accent:#315ca8;--gcfm-action:#56215d;--gcfm-brand-name:#2d2d2d;--gcfm-white:#fff}.gcfm-shell{width:min(1180px,calc(100% - 32px));margin:0 auto}.gcfm-home,.gcfm-directory{color:var(--gcfm-ink);font-family:inherit}.gcfm-home h1,.gcfm-home h2,.gcfm-directory h1,.gcfm-directory h2{color:var(--gcfm-ink);font-family:inherit}.gcfm-top-section{background:var(--gcfm-soft);padding:42px 0 46px}.gcfm-top-section h1{text-align:center;font-size:38px;line-height:1.15;margin:0 0 26px;font-weight:700}.gcfm-carousel-block h2{font-size:20px;margin:14px 0}.gcfm-carousel-wrap{position:relative}.gcfm-carousel-viewport{overflow:hidden;width:100%}.gcfm-carousel-track{display:flex;gap:22px;will-change:transform}.gcfm-top-card{background:#fff;border:1px solid var(--gcfm-line);border-radius:9px;box-sizing:border-box;overflow:hidden;min-width:0}.gcfm-top-card-link{height:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;color:var(--gcfm-ink)}.gcfm-top-best{min-height:350px}.gcfm-top-best .gcfm-top-card-link{justify-content:center;padding:34px 28px}.gcfm-top-logo{display:flex;align-items:center;justify-content:center}.gcfm-top-best .gcfm-top-logo{width:170px;height:150px;margin-bottom:16px}.gcfm-top-logo img{max-width:100%;max-height:100%;object-fit:contain;display:block}.gcfm-store-initials{width:130px;height:130px;background:#151515;color:#fff;display:flex;align-items:center;justify-content:center;font-size:38px;font-weight:800;border-radius:3px}.gcfm-top-store{font-size:15px;color:#737373;margin-bottom:9px}.gcfm-top-card h3{font-size:22px;line-height:1.28;margin:0;font-weight:700;color:var(--gcfm-ink)}.gcfm-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;border:1px solid #e6e6e6;background:#fff;width:48px;height:48px;border-radius:50%;font-size:34px;line-height:1;box-shadow:0 2px 8px rgba(0,0,0,.08);cursor:pointer;color:#333}.gcfm-prev{left:-24px}.gcfm-next{right:-24px}.gcfm-arrow[hidden]{display:none}.gcfm-dots{display:flex;justify-content:center;gap:9px;margin:14px 0 22px}.gcfm-dots[hidden]{display:none}.gcfm-dots button{width:10px;height:10px;border-radius:50%;border:1px solid #999;background:transparent;padding:0;cursor:pointer}.gcfm-dots button.is-active{background:#999}.gcfm-staff-track{gap:12px}.gcfm-top-staff{height:218px}.gcfm-top-staff .gcfm-top-card-link{display:grid;grid-template-rows:96px 30px 1fr;align-items:center;justify-items:center;padding:14px 10px 0}.gcfm-top-staff .gcfm-top-logo{width:100%;height:96px;margin:0}.gcfm-top-staff .gcfm-top-logo img{width:auto;height:auto;max-width:125px;max-height:76px;object-fit:contain}.gcfm-top-staff .gcfm-store-initials{width:74px;height:74px;font-size:23px}.gcfm-top-staff .gcfm-top-store{font-size:13px;line-height:1.15;margin:0;color:#6d6d6d}.gcfm-top-staff h3{font-size:14px;line-height:1.24;margin:0 -10px;width:calc(100% + 20px);height:100%;box-sizing:border-box;padding:8px 7px;background:linear-gradient(135deg,var(--gcfm-staff-start,#0c9eaf),var(--gcfm-staff-end,#245fc6));color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:700;overflow:hidden}.gcfm-staff-dots{margin-top:12px}.gcfm-search-links{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:20px;font-size:14px}.gcfm-search-links a{color:var(--gcfm-accent);text-decoration:none}.gcfm-promo{padding:28px 0}.gcfm-promo-box{background:#23394e;color:#fff;border-radius:8px;padding:27px 34px;display:flex;align-items:center;justify-content:space-between;gap:20px;background-size:cover;background-position:center}.gcfm-promo-box span{font-size:12px;font-weight:800;letter-spacing:.08em}.gcfm-promo-box h2{color:#fff;margin:5px 0;font-size:28px}.gcfm-promo-box p{margin:6px 0 0;color:#e7edf3}.gcfm-promo-box a{background:#fff;color:#23394e;padding:11px 20px;border-radius:4px;text-decoration:none;font-weight:700;white-space:nowrap}.gcfm-trending-section,.gcfm-popular-section,.gcfm-faq-section,.gcfm-articles-section{padding:42px 0}.gcfm-trending-section h2,.gcfm-popular-section h2,.gcfm-faq-section h2,.gcfm-articles-section h2{font-size:30px;margin:0 0 24px}.gcfm-trending-list{display:flex;flex-direction:column;gap:16px}.gcfm-trend-card{display:grid;grid-template-columns:110px 100px 1fr 180px;gap:18px;align-items:center;background:#fff;border:1px solid var(--gcfm-line);border-radius:8px;padding:18px}.gcfm-trend-logo{height:85px;display:flex;align-items:center;justify-content:center}.gcfm-trend-logo img{max-width:100%;max-height:80px;object-fit:contain}.gcfm-trend-logo .gcfm-store-initials{width:75px;height:75px;font-size:23px}.gcfm-trend-discount{font-size:20px;font-weight:800;text-align:center}.gcfm-trend-main h3{font-size:20px;line-height:1.25;margin:0 0 8px}.gcfm-trend-main p{margin:0 0 7px;color:#5f5f5f;line-height:1.45}.gcfm-trend-store{font-size:14px;color:var(--gcfm-accent);text-decoration:none}.gcfm-trend-action a,.gcfm-trend-action button{display:block;width:100%;box-sizing:border-box;border:0;border-radius:24px;padding:12px 14px;text-align:center;text-decoration:none;background:var(--gcfm-action);color:#fff;font-weight:700;cursor:pointer}.gcfm-popular-section{background:#fafafa}.gcfm-popular-grid,.gcfm-articles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 42px}.gcfm-popular-grid a,.gcfm-articles-grid a{color:#555;text-decoration:none;font-size:16px}.gcfm-faq-list details{border-top:1px solid var(--gcfm-line);padding:0}.gcfm-faq-list details:last-child{border-bottom:1px solid var(--gcfm-line)}.gcfm-faq-list summary{font-size:18px;font-weight:700;cursor:pointer;padding:18px 4px}.gcfm-faq-list details div{padding:0 4px 20px;color:#555;line-height:1.6}.gcfm-modal{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;align-items:center;justify-content:center;z-index:999999}.gcfm-modal.is-open{display:flex}.gcfm-modal-box{background:#fff;border-radius:12px;width:min(430px,calc(100% - 30px));padding:28px;position:relative;text-align:center}.gcfm-modal-close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:30px;cursor:pointer}.gcfm-modal-store{font-size:20px;font-weight:700;margin-bottom:14px}.gcfm-modal-label{font-size:13px;color:#777}.gcfm-modal-code{font-size:30px;letter-spacing:.08em;font-weight:800;border:2px dashed #999;padding:12px;margin:8px 0 14px}.gcfm-copy-code,.gcfm-modal-visit{display:inline-block;border:0;border-radius:5px;padding:11px 18px;margin:4px;background:#1d64d8;color:#fff;text-decoration:none;cursor:pointer;font-weight:700}
/* Stores */.gcfm-directory-featured{background:#edf3fa;padding:42px 0 48px}.gcfm-directory-featured h1{font-size:34px;text-align:center;margin:0 0 32px}.gcfm-featured-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:16px}.gcfm-store-card{background:#fff;border:1px solid #e4e7eb;border-radius:8px;min-height:190px;padding:14px;box-sizing:border-box;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--gcfm-brand-name)}.gcfm-store-logo-box{height:112px;width:100%;display:flex;align-items:center;justify-content:center}.gcfm-store-logo-box img{max-width:100%;max-height:100px;object-fit:contain}.gcfm-store-logo-box .gcfm-store-initials{width:92px;height:92px;font-size:27px}.gcfm-store-card-name{font-size:16px;font-weight:400;color:var(--gcfm-brand-name);text-align:center;margin-top:13px}.gcfm-directory-list{padding:42px 0}.gcfm-directory-list h2,.gcfm-browse h2,.gcfm-letter-results h2{font-size:30px;margin:0 0 24px}.gcfm-merchant-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 48px}.gcfm-merchant-grid a{color:#666;text-decoration:none;font-size:16px}.gcfm-recent{padding-top:18px}.gcfm-browse{padding:28px 0 40px;border-top:4px solid #edf3fa}.gcfm-alphabet{display:flex;flex-wrap:wrap;gap:17px}.gcfm-alphabet a{font-weight:700;color:var(--gcfm-accent);text-decoration:none;font-size:18px;min-width:20px;text-align:center}.gcfm-alphabet a.is-active{text-decoration:underline}.gcfm-letter-results{padding:36px 0 52px;background:#fafafa}.gcfm-results-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.gcfm-results-head span{font-size:13px;color:#777}.gcfm-results-head h2{font-size:44px;margin:0}.gcfm-store-filter{width:min(360px,100%);padding:11px 12px;border:1px solid #bbb;border-radius:5px}.gcfm-no-results{color:#777}
@media(max-width:1024px){.gcfm-staff-track{gap:14px}.gcfm-featured-grid{grid-template-columns:repeat(4,1fr)}.gcfm-trend-card{grid-template-columns:90px 90px 1fr 160px}.gcfm-prev{left:-10px}.gcfm-next{right:-10px}}
@media(max-width:700px){.gcfm-shell{width:min(100% - 30px,680px)}.gcfm-top-section{padding:32px 0 36px}.gcfm-top-section h1{font-size:32px}.gcfm-carousel-block h2{font-size:18px}.gcfm-carousel-track{gap:14px}.gcfm-top-best{min-height:355px}.gcfm-top-best .gcfm-top-card-link{padding:30px 20px}.gcfm-top-card h3{font-size:21px}.gcfm-top-best .gcfm-top-logo{width:165px;height:155px}.gcfm-arrow{display:none!important}.gcfm-dots{margin-top:12px}.gcfm-top-staff{height:278px}.gcfm-top-staff .gcfm-top-card-link{padding:18px 10px 0;grid-template-rows:145px 34px 1fr}.gcfm-top-staff .gcfm-top-logo{height:145px}.gcfm-top-staff .gcfm-top-logo img{max-width:150px;max-height:112px}.gcfm-top-staff .gcfm-store-initials{width:110px;height:110px;font-size:32px}.gcfm-top-staff .gcfm-top-store{font-size:16px}.gcfm-top-staff h3{font-size:15px;padding:8px 7px}.gcfm-search-links{font-size:13px}.gcfm-promo-box{padding:24px;display:block}.gcfm-promo-box h2{font-size:23px}.gcfm-promo-box a{display:inline-block;margin-top:14px}.gcfm-trending-section,.gcfm-popular-section,.gcfm-faq-section,.gcfm-articles-section{padding:34px 0}.gcfm-trending-section h2,.gcfm-popular-section h2,.gcfm-faq-section h2,.gcfm-articles-section h2{font-size:28px}.gcfm-trend-card{grid-template-columns:72px 1fr;gap:10px 14px;padding:15px}.gcfm-trend-logo{height:68px}.gcfm-trend-logo .gcfm-store-initials{width:62px;height:62px;font-size:20px}.gcfm-trend-discount{text-align:left;font-size:18px}.gcfm-trend-main{grid-column:1/-1}.gcfm-trend-main h3{font-size:18px}.gcfm-trend-action{grid-column:1/-1}.gcfm-popular-grid,.gcfm-articles-grid{grid-template-columns:1fr;gap:16px}.gcfm-featured-grid{grid-template-columns:repeat(2,1fr);gap:16px}.gcfm-directory-featured h1{font-size:30px;text-align:left}.gcfm-store-card{min-height:275px;padding:18px}.gcfm-store-logo-box{height:170px}.gcfm-store-logo-box img{max-height:145px}.gcfm-store-logo-box .gcfm-store-initials{width:125px;height:125px;font-size:36px}.gcfm-store-card-name{font-size:19px;font-weight:400;color:var(--gcfm-brand-name)}.gcfm-merchant-grid{grid-template-columns:1fr;gap:22px}.gcfm-merchant-grid a{font-size:20px;text-align:center}.gcfm-directory-list h2,.gcfm-browse h2{font-size:30px}.gcfm-alphabet{display:grid;grid-template-columns:repeat(8,1fr);gap:24px 12px}.gcfm-alphabet a{font-size:20px}.gcfm-results-head{display:block}.gcfm-store-filter{margin-top:14px;width:100%}}

/* v4.1 CouponFollow-style Trending Coupons */
.gcfm-trending-section{background:var(--gcfm-soft);padding:42px 0 48px}
.gcfm-trending-section h2{text-align:center;font-size:36px;line-height:1.2;margin:0 0 42px;font-weight:700}
.gcfm-trending-list{display:flex;flex-direction:column;gap:16px}
.gcfm-trend-card{display:grid;grid-template-columns:150px 145px minmax(0,1fr) 210px;gap:0;align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:12px;min-height:164px;padding:0 16px;box-shadow:0 2px 5px rgba(31,41,55,.08);overflow:hidden}
.gcfm-trend-logo{height:132px;display:flex;align-items:center;justify-content:flex-start;padding-right:16px;border-right:1px solid #d9dee5;box-sizing:border-box}
.gcfm-trend-logo-frame{width:128px;height:128px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.gcfm-trend-logo-frame img{width:100%;height:100%;max-width:128px;max-height:128px;object-fit:contain;display:block}
.gcfm-trend-logo-frame .gcfm-store-initials{width:128px;height:128px;font-size:34px;border-radius:4px}
.gcfm-trend-discount{height:132px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-right:1px solid #d9dee5;box-sizing:border-box;padding:0 16px;color:#262626}
.gcfm-trend-discount-main{display:block;font-size:44px;line-height:1;font-weight:700;letter-spacing:-.02em;white-space:nowrap}
.gcfm-trend-discount-sub{display:block;margin-top:10px;font-size:19px;line-height:1.05;font-weight:400;white-space:nowrap}
.gcfm-trend-main{padding:0 38px;min-width:0}
.gcfm-trend-main h3{font-size:23px;line-height:1.25;margin:0 0 9px;font-weight:700;color:#252525}
.gcfm-trend-main p{display:none}
.gcfm-trend-store{font-size:14px;line-height:1.2;color:#2457c5;text-decoration:none}
.gcfm-trend-store:hover{text-decoration:underline}
.gcfm-trend-action{display:flex;align-items:center;justify-content:flex-end}
.gcfm-trend-action a,.gcfm-trend-action button{display:flex;align-items:center;justify-content:center;width:208px;min-height:48px;box-sizing:border-box;border:0;border-radius:4px;padding:12px 18px;text-align:center;text-decoration:none;background:#315bb8;color:#fff;font-size:16px;font-weight:700;cursor:pointer;line-height:1.2}
.gcfm-trend-action a:hover,.gcfm-trend-action button:hover{filter:brightness(.96)}


@media(max-width:1024px){
.gcfm-trend-card{grid-template-columns:120px 115px minmax(0,1fr) 170px;padding:0 12px}
.gcfm-trend-logo{height:112px;padding-right:12px}.gcfm-trend-logo-frame{width:100px;height:100px}.gcfm-trend-logo-frame img{max-width:100px;max-height:100px}.gcfm-trend-logo-frame .gcfm-store-initials{width:100px;height:100px;font-size:28px}
.gcfm-trend-discount{height:112px;padding:0 10px}.gcfm-trend-discount-main{font-size:36px}.gcfm-trend-discount-sub{font-size:16px;margin-top:7px}
.gcfm-trend-main{padding:0 24px}.gcfm-trend-main h3{font-size:20px}.gcfm-trend-action a,.gcfm-trend-action button{width:168px;font-size:15px}
}
@media(max-width:700px){
.gcfm-trending-section{padding:34px 0;background:var(--gcfm-soft)}.gcfm-trending-section h2{text-align:left;font-size:30px;margin-bottom:24px}
.gcfm-trend-card{grid-template-columns:92px 1fr;gap:0;min-height:0;padding:14px;border-radius:10px}
.gcfm-trend-logo{height:88px;padding-right:12px;border-right:1px solid #d9dee5}.gcfm-trend-logo-frame{width:76px;height:76px}.gcfm-trend-logo-frame img{max-width:76px;max-height:76px}.gcfm-trend-logo-frame .gcfm-store-initials{width:76px;height:76px;font-size:22px}
.gcfm-trend-discount{height:88px;border-right:0;padding:0 8px;align-items:flex-start;text-align:left}.gcfm-trend-discount-main{font-size:32px}.gcfm-trend-discount-sub{font-size:14px;margin-top:6px}
.gcfm-trend-main{grid-column:1/-1;padding:16px 2px 10px}.gcfm-trend-main h3{font-size:19px;margin-bottom:7px}.gcfm-trend-action{grid-column:1/-1}.gcfm-trend-action a,.gcfm-trend-action button{width:100%;min-height:46px}
}

/* v4.2 CouponFollow-style interaction, code peel, centered Popular Stores + FAQ */
.gcfm-trend-card{font-family:Arial,Helvetica,sans-serif}
.gcfm-trend-main h3{font-family:Arial,Helvetica,sans-serif;font-size:24px;line-height:1.22;font-weight:700;letter-spacing:-.015em;color:#242424}
.gcfm-trend-discount-main,.gcfm-trend-discount-sub{font-family:Arial,Helvetica,sans-serif}
.gcfm-trend-action{min-width:208px}
.gcfm-code-peel{position:relative;display:block;width:208px;height:48px;overflow:visible}
.gcfm-code-peel .gcfm-code-tail{position:absolute;right:0;top:0;height:48px;width:66px;box-sizing:border-box;display:flex;align-items:center;justify-content:flex-end;padding:0 8px;background:#fff;color:#252525;border:1px dashed #315bb8;border-radius:0 4px 4px 0;font-size:16px;font-weight:800;letter-spacing:.04em;z-index:1}
.gcfm-code-peel .gcfm-code-btn{position:relative;z-index:2;width:180px!important;height:48px;min-height:48px!important;overflow:hidden;background:#315bb8;border-radius:4px!important;padding:0 14px!important;white-space:nowrap}
.gcfm-code-peel .gcfm-code-btn::after,.gcfm-deal-btn::after{content:"";position:absolute;top:-60%;left:-45%;width:34%;height:220%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);transform:rotate(18deg);transition:left .55s ease;pointer-events:none}
.gcfm-code-peel .gcfm-code-btn:hover::after,.gcfm-deal-btn:hover::after{left:120%}
.gcfm-trend-action .gcfm-deal-btn{position:relative;overflow:hidden;background:#315bb8;border-radius:4px;width:208px;min-height:48px;font-family:Arial,Helvetica,sans-serif;font-size:16px;font-weight:700}
.gcfm-trend-action .gcfm-code-btn:hover,.gcfm-trend-action .gcfm-deal-btn:hover{filter:none;background:#2e56ae;box-shadow:0 2px 8px rgba(49,91,184,.22)}

.gcfm-popular-section{background:#fafafa;padding:44px 0}
.gcfm-popular-section .gcfm-shell,.gcfm-faq-section .gcfm-shell{width:min(1120px,calc(100% - 32px));margin-left:auto;margin-right:auto}
.gcfm-popular-section h2,.gcfm-faq-section h2{font-family:Arial,Helvetica,sans-serif;font-size:32px;line-height:1.2;font-weight:700;letter-spacing:-.015em;margin:0 0 18px;color:#242424}
.gcfm-popular-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:70px;row-gap:18px}
.gcfm-popular-grid a{font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.35;color:#444;text-decoration:none}
.gcfm-popular-grid a:hover{color:#2457c5;text-decoration:underline}
.gcfm-faq-section{padding:42px 0 48px;background:#fff}
.gcfm-faq-list{width:100%;margin:0 auto}
.gcfm-faq-list details{border-top:1px solid #d9dee5}
.gcfm-faq-list details:last-child{border-bottom:1px solid #d9dee5}
.gcfm-faq-list summary{font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.35;font-weight:700;padding:20px 4px;list-style:none;position:relative;cursor:pointer;color:#222}
.gcfm-faq-list summary::-webkit-details-marker{display:none}
.gcfm-faq-list summary::before{content:"▶";display:inline-block;margin-right:10px;font-size:12px;transform:translateY(-1px);transition:transform .18s ease}
.gcfm-faq-list details[open] summary::before{transform:rotate(90deg) translateX(1px)}
.gcfm-faq-list details div{font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;padding:0 26px 20px;color:#555}

@media(max-width:1024px){
  .gcfm-trend-main h3{font-size:21px}
  .gcfm-trend-action{min-width:168px}
  .gcfm-code-peel{width:168px}
  .gcfm-code-peel .gcfm-code-btn{width:145px!important;font-size:14px!important;padding:0 9px!important}
  .gcfm-code-peel .gcfm-code-tail{width:58px;font-size:14px}
  .gcfm-trend-action .gcfm-deal-btn{width:168px;font-size:15px}
  .gcfm-popular-grid{column-gap:45px}
}
@media(max-width:700px){
  .gcfm-trending-section h2{text-align:center;font-size:30px;margin-bottom:26px}
  .gcfm-trend-main h3{font-size:20px;line-height:1.25}
  .gcfm-trend-action{min-width:0;width:100%}
  .gcfm-code-peel{width:100%;height:48px}
  .gcfm-code-peel .gcfm-code-btn{width:calc(100% - 44px)!important;font-size:15px!important}
  .gcfm-code-peel .gcfm-code-tail{width:72px;justify-content:flex-end;padding-right:9px}
  .gcfm-trend-action .gcfm-deal-btn{width:100%}
  .gcfm-popular-section,.gcfm-faq-section{padding:34px 0 38px}
  .gcfm-popular-section .gcfm-shell,.gcfm-faq-section .gcfm-shell{width:min(100% - 32px,680px)}
  .gcfm-popular-section h2,.gcfm-faq-section h2{font-size:30px;text-align:left;margin-bottom:22px}
  .gcfm-popular-grid{grid-template-columns:1fr;gap:20px}
  .gcfm-popular-grid a{text-align:center;font-size:20px;color:#707070}
  .gcfm-faq-list summary{font-size:18px;padding:19px 2px}
  .gcfm-faq-list details div{font-size:16px;padding:0 22px 18px}
}

/* v4.3 — CouponFollow mobile parity + centered content + peel interaction */

/* Coupon code peel: slide left while the shine passes, then return on mouse-out. */
.gcfm-code-peel .gcfm-code-btn{
  transition:transform .32s cubic-bezier(.2,.7,.2,1),background-color .2s ease,box-shadow .2s ease;
}
.gcfm-code-peel:hover .gcfm-code-btn,
.gcfm-code-peel:focus-within .gcfm-code-btn{
  transform:translateX(-32px);
}
.gcfm-code-peel .gcfm-code-btn:active{transform:translateX(-32px)}
.gcfm-code-peel .gcfm-code-tail{transition:box-shadow .25s ease}
.gcfm-code-peel:hover .gcfm-code-tail,
.gcfm-code-peel:focus-within .gcfm-code-tail{box-shadow:inset 0 0 0 1px rgba(49,91,184,.06)}

/* Center the homepage directory/FAQ headings and their content block on desktop/tablet too. */
.gcfm-popular-section .gcfm-shell,
.gcfm-faq-section .gcfm-shell{
  width:min(1120px,calc(100% - 40px));
  margin-inline:auto;
}
.gcfm-popular-section h2,
.gcfm-faq-section h2{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.gcfm-popular-grid{
  width:min(980px,100%);
  margin:0 auto;
}
.gcfm-popular-grid a{text-align:center}
.gcfm-faq-list{width:min(1040px,100%);margin:0 auto}

@media (max-width:1024px){
  .gcfm-code-peel:hover .gcfm-code-btn,
  .gcfm-code-peel:focus-within .gcfm-code-btn,
  .gcfm-code-peel .gcfm-code-btn:active{transform:translateX(-26px)}
  .gcfm-popular-section h2,.gcfm-faq-section h2{text-align:center}
}

@media (max-width:700px){
  /* Staff Picks: CouponFollow-style fixed 2-column grid; show all six without horizontal carousel. */
  .gcfm-staff-block .gcfm-carousel-viewport{overflow:visible}
  .gcfm-staff-block .gcfm-staff-track,
  .gcfm-staff-block .gcfm-staff-track.is-static-mobile-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px!important;
    transform:none!important;
    transition:none!important;
    will-change:auto;
  }
  .gcfm-staff-block .gcfm-top-staff{
    width:auto!important;
    min-width:0!important;
    flex:none!important;
    height:278px;
  }
  .gcfm-staff-block .gcfm-arrow,
  .gcfm-staff-block .gcfm-staff-dots{display:none!important}

  /* Trending Searches: boxed, centered and stacked like CouponFollow mobile. */
  .gcfm-search-links{
    margin:30px 0 4px;
    padding:28px 22px 30px;
    border:2px dashed #cbd2da;
    border-radius:4px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:17px;
    text-align:center;
    background:transparent;
  }
  .gcfm-search-links strong{
    display:block;
    font-family:Arial,Helvetica,sans-serif;
    font-size:24px;
    line-height:1.25;
    font-weight:700;
    color:#2f2f2f;
    margin-bottom:2px;
  }
  .gcfm-search-links a{
    display:block;
    font-family:Arial,Helvetica,sans-serif;
    font-size:20px;
    line-height:1.35;
    font-weight:400;
    color:#707070;
    text-decoration:none;
  }

  /* Trending Coupons on phone: compact CouponFollow card — logo, title/store, chevron; no discount/button. */
  .gcfm-trending-section{padding:42px 0 44px}
  .gcfm-trending-section h2{
    text-align:center;
    font-family:Arial,Helvetica,sans-serif;
    font-size:31px;
    line-height:1.08;
    margin:0 auto 28px;
    max-width:330px;
  }
  .gcfm-trending-list{gap:14px}
  .gcfm-trend-card{
    position:relative;
    display:grid;
    grid-template-columns:112px minmax(0,1fr) 24px;
    align-items:center;
    gap:14px;
    min-height:132px;
    padding:12px 14px;
    border-radius:12px;
    box-shadow:0 2px 5px rgba(31,41,55,.08);
  }
  .gcfm-trend-card::after{
    content:'›';
    grid-column:3;
    grid-row:1;
    align-self:center;
    justify-self:end;
    font-family:Arial,Helvetica,sans-serif;
    font-size:34px;
    line-height:1;
    font-weight:400;
    color:#3472d0;
  }
  .gcfm-trend-logo{
    grid-column:1;
    grid-row:1;
    width:112px;
    height:106px;
    border-right:0;
    padding:0;
    justify-content:center;
  }
  .gcfm-trend-logo-frame{width:100px;height:100px}
  .gcfm-trend-logo-frame img{max-width:100px;max-height:100px;width:100%;height:100%;object-fit:contain}
  .gcfm-trend-logo-frame .gcfm-store-initials{width:100px;height:100px;font-size:28px}
  .gcfm-trend-discount,.gcfm-trend-action{display:none!important}
  .gcfm-trend-main{
    grid-column:2;
    grid-row:1;
    padding:0;
    min-width:0;
  }
  .gcfm-trend-main h3{
    font-family:Arial,Helvetica,sans-serif;
    font-size:20px;
    line-height:1.22;
    font-weight:700;
    color:#282828;
    margin:0 0 8px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .gcfm-trend-store{
    font-family:Arial,Helvetica,sans-serif;
    font-size:17px;
    line-height:1.2;
    color:#315ca8;
    text-decoration:none;
  }

  /* Popular Stores: centered heading and centered store names, CouponFollow-like sizing. */
  .gcfm-popular-section{padding:42px 0;background:#fff}
  .gcfm-popular-section .gcfm-shell{width:min(100% - 36px,680px);margin-inline:auto}
  .gcfm-popular-section h2{
    text-align:center!important;
    font-family:Arial,Helvetica,sans-serif;
    font-size:31px!important;
    line-height:1.15;
    margin:0 auto 28px!important;
  }
  .gcfm-popular-grid{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
    gap:18px;
    margin:0 auto;
  }
  .gcfm-popular-grid a{
    text-align:center!important;
    font-family:Arial,Helvetica,sans-serif;
    font-size:20px!important;
    line-height:1.35;
    font-weight:400;
    color:#707070!important;
  }

  /* FAQ: centered title + separate white accordion cards with right chevron. */
  .gcfm-faq-section{padding:44px 0 48px;background:var(--gcfm-soft)}
  .gcfm-faq-section .gcfm-shell{width:min(100% - 30px,680px);margin-inline:auto}
  .gcfm-faq-section h2{
    text-align:center!important;
    font-family:Arial,Helvetica,sans-serif;
    font-size:31px!important;
    line-height:1.12;
    margin:0 auto 30px!important;
  }
  .gcfm-faq-list{width:100%;display:flex;flex-direction:column;gap:16px}
  .gcfm-faq-list details,
  .gcfm-faq-list details:last-child{
    border:0;
    background:#fff;
    border-radius:12px;
    box-shadow:0 2px 6px rgba(31,41,55,.10);
    overflow:hidden;
  }
  .gcfm-faq-list summary{
    min-height:86px;
    box-sizing:border-box;
    display:flex;
    align-items:center;
    padding:20px 56px 20px 24px;
    font-family:Arial,Helvetica,sans-serif;
    font-size:21px!important;
    line-height:1.3;
    font-weight:400;
    color:#333;
    position:relative;
  }
  .gcfm-faq-list summary::before{display:none!important}
  .gcfm-faq-list summary::after{
    content:'';
    position:absolute;
    right:24px;
    top:50%;
    width:15px;
    height:15px;
    border-right:3px solid #555;
    border-bottom:3px solid #555;
    transform:translateY(-65%) rotate(45deg);
    transition:transform .18s ease;
  }
  .gcfm-faq-list details[open] summary::after{transform:translateY(-30%) rotate(225deg)}
  .gcfm-faq-list details div{
    padding:0 24px 22px;
    font-family:Arial,Helvetica,sans-serif;
    font-size:17px;
    line-height:1.55;
    color:#555;
  }

  /* Popular Articles: mobile dashed directory box like CouponFollow. */
  .gcfm-articles-section{padding:30px 0 44px;background:var(--gcfm-soft)}
  .gcfm-articles-section .gcfm-shell{
    width:min(100% - 30px,680px);
    border:2px dashed #cbd2da;
    border-radius:4px;
    padding:30px 24px 34px;
    box-sizing:border-box;
  }
  .gcfm-articles-section h2{
    text-align:center;
    font-family:Arial,Helvetica,sans-serif;
    font-size:24px!important;
    line-height:1.25;
    margin:0 0 24px!important;
  }
  .gcfm-articles-grid{display:grid;grid-template-columns:1fr;gap:20px}
  .gcfm-articles-grid a{text-align:center;font-size:19px!important;line-height:1.4;color:#707070!important}
}


/* v4.4 — stronger coupon shine/touch peel + Grabcodez Staff Picks palette */
@keyframes gcfmCouponShine44{
  0%{transform:translateX(-190%) skewX(-22deg);opacity:0}
  12%{opacity:.92}
  72%{opacity:.76}
  100%{transform:translateX(520%) skewX(-22deg);opacity:0}
}
.gcfm-code-peel .gcfm-code-btn,
.gcfm-trend-action .gcfm-deal-btn{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.gcfm-code-peel .gcfm-code-btn::after,
.gcfm-trend-action .gcfm-deal-btn::after{
  content:"";
  position:absolute;
  z-index:3;
  top:-65%;
  left:0;
  width:36%;
  height:235%;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.18),rgba(255,255,255,.92),rgba(255,255,255,.18),rgba(255,255,255,0));
  transform:translateX(-190%) skewX(-22deg);
  opacity:0;
  pointer-events:none;
}
.gcfm-code-peel:hover .gcfm-code-btn::after,
.gcfm-code-peel.is-peeling .gcfm-code-btn::after,
.gcfm-code-peel:focus-visible .gcfm-code-btn::after,
.gcfm-trend-action .gcfm-deal-btn:hover::after,
.gcfm-trend-action .gcfm-deal-btn.is-shining::after{
  animation:gcfmCouponShine44 .72s ease-out 1;
}
.gcfm-code-peel:hover .gcfm-code-btn,
.gcfm-code-peel.is-peeling .gcfm-code-btn{
  transform:translateX(-38px);
  background:#2f59b5;
  box-shadow:0 4px 14px rgba(49,91,184,.30);
}
.gcfm-code-peel .gcfm-code-tail{
  transition:box-shadow .2s ease,border-color .2s ease;
}
.gcfm-code-peel:hover .gcfm-code-tail,
.gcfm-code-peel.is-peeling .gcfm-code-tail{
  border-color:#2453aa;
  box-shadow:0 2px 8px rgba(49,91,184,.12);
}

/* Staff Picks: deeper Grabcodez teal/blue strip and cleaner title typography. */
.gcfm-top-staff h3{
  background:linear-gradient(135deg,var(--gcfm-staff-start,#0c9eaf) 0%,var(--gcfm-staff-end,#245fc6) 100%);
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
  font-size:14px;
  line-height:1.18;
  font-weight:700;
  letter-spacing:-.005em;
  text-shadow:0 1px 1px rgba(0,0,0,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.gcfm-top-staff .gcfm-top-card-link:hover h3{
  filter:brightness(.96) saturate(1.04);
}

@media (max-width:1024px) and (min-width:701px){
  .gcfm-code-peel:hover .gcfm-code-btn,
  .gcfm-code-peel.is-peeling .gcfm-code-btn{
    transform:translateX(-34px)!important;
  }
  .gcfm-code-peel .gcfm-code-btn::after,
  .gcfm-trend-action .gcfm-deal-btn::after{
    width:42%;
  }
}
@media (max-width:700px){
  .gcfm-top-staff h3{
    font-size:14px;
    line-height:1.16;
    padding:9px 8px;
  }
}

/* v4.5 — CouponFollow-style soft glow, reliable tablet peel, permanently white CTA text */
@keyframes gcfmCouponGlow45{
  0%{
    box-shadow:0 2px 6px rgba(20,72,170,.18),0 0 0 rgba(32,199,220,0);
    filter:brightness(1);
  }
  45%{
    box-shadow:0 4px 12px rgba(40,120,255,.30),0 0 18px rgba(40,120,255,.42),0 0 28px rgba(32,199,220,.24);
    filter:brightness(1.08);
  }
  100%{
    box-shadow:0 4px 12px rgba(40,120,255,.24),0 0 14px rgba(40,120,255,.30),0 0 22px rgba(32,199,220,.18);
    filter:brightness(1.03);
  }
}

/* Remove the thin white sweep. The reference effect is a broad blue/cyan glow. */
.gcfm-code-peel .gcfm-code-btn::after,
.gcfm-trend-action .gcfm-deal-btn::after{
  display:none!important;
  content:none!important;
}

.gcfm-code-peel,
.gcfm-trend-action{
  overflow:visible!important;
}

.gcfm-code-peel .gcfm-code-btn,
.gcfm-trend-action .gcfm-deal-btn{
  background:#315fbd!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-decoration:none!important;
  transition:transform .30s cubic-bezier(.2,.72,.2,1),background .24s ease,box-shadow .24s ease,filter .24s ease!important;
  will-change:transform,box-shadow;
}

/* Keep CTA text white under theme :hover/:visited/:focus rules. */
.gcfm-home .gcfm-trend-action a.gcfm-deal-btn,
.gcfm-home .gcfm-trend-action a.gcfm-deal-btn:link,
.gcfm-home .gcfm-trend-action a.gcfm-deal-btn:visited,
.gcfm-home .gcfm-trend-action a.gcfm-deal-btn:hover,
.gcfm-home .gcfm-trend-action a.gcfm-deal-btn:focus,
.gcfm-home .gcfm-trend-action a.gcfm-deal-btn:active,
.gcfm-home .gcfm-trend-action button.gcfm-deal-btn,
.gcfm-home .gcfm-trend-action button.gcfm-deal-btn:hover,
.gcfm-home .gcfm-trend-action button.gcfm-deal-btn:focus,
.gcfm-home .gcfm-trend-action button.gcfm-deal-btn:active,
.gcfm-home .gcfm-code-peel .gcfm-code-btn,
.gcfm-home .gcfm-code-peel .gcfm-code-btn:hover,
.gcfm-home .gcfm-code-peel .gcfm-code-btn:focus,
.gcfm-home .gcfm-code-peel .gcfm-code-btn:active{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-decoration:none!important;
}

/* Desktop/tablet hover and JS-triggered tablet/touch state. */
.gcfm-code-peel:hover .gcfm-code-btn,
.gcfm-code-peel:focus-within .gcfm-code-btn,
.gcfm-code-peel.is-peeling .gcfm-code-btn,
.gcfm-code-peel .gcfm-code-btn:hover,
.gcfm-code-peel .gcfm-code-btn:focus{
  transform:translateX(-38px)!important;
  background:linear-gradient(135deg,#20c7dc 0%,#2878ff 100%)!important;
  box-shadow:0 4px 12px rgba(40,120,255,.24),0 0 14px rgba(40,120,255,.30),0 0 22px rgba(32,199,220,.18)!important;
  animation:gcfmCouponGlow45 .62s ease-out 1 both;
}

.gcfm-trend-action .gcfm-deal-btn:hover,
.gcfm-trend-action .gcfm-deal-btn:focus,
.gcfm-trend-action .gcfm-deal-btn.is-shining{
  background:linear-gradient(135deg,#20c7dc 0%,#2878ff 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:0 4px 12px rgba(40,120,255,.24),0 0 14px rgba(40,120,255,.30),0 0 22px rgba(32,199,220,.18)!important;
  animation:gcfmCouponGlow45 .62s ease-out 1 both;
}

/* The exposed coupon-code tail stays crisp while the blue button peels away. */
.gcfm-code-peel:hover .gcfm-code-tail,
.gcfm-code-peel:focus-within .gcfm-code-tail,
.gcfm-code-peel.is-peeling .gcfm-code-tail{
  border-color:#2d68d7!important;
  box-shadow:0 2px 7px rgba(39,104,215,.13)!important;
}

@media (min-width:701px) and (max-width:1024px){
  .gcfm-code-peel{
    overflow:visible!important;
    touch-action:manipulation;
  }
  .gcfm-code-peel:hover .gcfm-code-btn,
  .gcfm-code-peel:focus-within .gcfm-code-btn,
  .gcfm-code-peel.is-peeling .gcfm-code-btn,
  .gcfm-code-peel .gcfm-code-btn:hover,
  .gcfm-code-peel .gcfm-code-btn:focus,
  .gcfm-code-peel .gcfm-code-btn:active{
    transform:translateX(-34px)!important;
    background:linear-gradient(135deg,#20c7dc 0%,#2878ff 100%)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    box-shadow:0 4px 12px rgba(40,120,255,.24),0 0 14px rgba(40,120,255,.30),0 0 22px rgba(32,199,220,.18)!important;
  }
  .gcfm-trend-action .gcfm-deal-btn:hover,
  .gcfm-trend-action .gcfm-deal-btn:focus,
  .gcfm-trend-action .gcfm-deal-btn:active,
  .gcfm-trend-action .gcfm-deal-btn.is-shining{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    background:linear-gradient(135deg,#20c7dc 0%,#2878ff 100%)!important;
  }
}


/* v4.6 — tablet coupon-code interaction now mirrors the desktop peel/glow */
@media (min-width:701px) and (max-width:1024px){
  .gcfm-code-peel{
    overflow:visible!important;
    touch-action:manipulation;
  }
  .gcfm-code-peel:hover .gcfm-code-btn,
  .gcfm-code-peel:focus-within .gcfm-code-btn,
  .gcfm-code-peel.is-peeling .gcfm-code-btn,
  .gcfm-code-peel.is-tablet-active .gcfm-code-btn,
  .gcfm-code-peel .gcfm-code-btn:hover,
  .gcfm-code-peel .gcfm-code-btn:focus,
  .gcfm-code-peel .gcfm-code-btn:active{
    transform:translate3d(-38px,0,0)!important;
    background:linear-gradient(135deg,#20c7dc 0%,#2878ff 100%)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    box-shadow:0 4px 12px rgba(40,120,255,.24),0 0 14px rgba(40,120,255,.30),0 0 22px rgba(32,199,220,.18)!important;
    filter:brightness(1.03)!important;
    animation:gcfmCouponGlow45 .62s ease-out 1 both!important;
  }
  .gcfm-code-peel:hover .gcfm-code-tail,
  .gcfm-code-peel:focus-within .gcfm-code-tail,
  .gcfm-code-peel.is-peeling .gcfm-code-tail,
  .gcfm-code-peel.is-tablet-active .gcfm-code-tail{
    border-color:#2d68d7!important;
    box-shadow:0 2px 7px rgba(39,104,215,.13)!important;
  }
  .gcfm-trend-action .gcfm-deal-btn:hover,
  .gcfm-trend-action .gcfm-deal-btn:focus,
  .gcfm-trend-action .gcfm-deal-btn:active,
  .gcfm-trend-action .gcfm-deal-btn.is-shining,
  .gcfm-trend-action .gcfm-deal-btn.is-tablet-active{
    background:linear-gradient(135deg,#20c7dc 0%,#2878ff 100%)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    box-shadow:0 4px 12px rgba(40,120,255,.24),0 0 14px rgba(40,120,255,.30),0 0 22px rgba(32,199,220,.18)!important;
    animation:gcfmCouponGlow45 .62s ease-out 1 both!important;
  }
}

/* =========================================================
   v4.8.0 — CouponFollow-style Stores directory only.
   IMPORTANT: every selector below is scoped to .gcfm-directory,
   so individual gc_store pages and their coupon cards are untouched.
   ========================================================= */
.gcfm-directory .gcfm-directory-featured{
  background:#edf3fa;
  padding:44px 0 48px;
}
.gcfm-directory .gcfm-directory-featured h1{
  margin:0 0 34px;
  text-align:center;
  font-size:34px;
  line-height:1.18;
  font-weight:700;
}
.gcfm-directory .gcfm-featured-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:stretch;
  gap:18px;
}
.gcfm-directory .gcfm-featured-grid .gcfm-store-card{
  flex:0 0 150px;
  width:150px;
  min-height:190px;
  padding:14px 12px 16px;
  border:0;
  border-radius:7px;
  box-shadow:none;
  background:#fff;
  color:var(--gcfm-brand-name);
}
.gcfm-directory .gcfm-featured-grid .gcfm-store-logo-box{
  height:125px;
  width:100%;
}
.gcfm-directory .gcfm-featured-grid .gcfm-store-logo-box img{
  max-width:125px;
  max-height:112px;
}
.gcfm-directory .gcfm-featured-grid .gcfm-store-card-name{
  margin-top:8px;
  color:var(--gcfm-brand-name)!important;
  font-size:15px;
  line-height:1.3;
  font-weight:400;
  text-align:center;
}

.gcfm-directory .gcfm-directory-list{
  padding:42px 0 30px;
  background:#fff;
}
.gcfm-directory .gcfm-directory-list.gcfm-recent{
  padding-top:24px;
  padding-bottom:46px;
}
.gcfm-directory .gcfm-directory-list h2,
.gcfm-directory .gcfm-browse h2{
  margin:0 0 26px;
  text-align:left;
  font-size:30px;
  line-height:1.2;
  font-weight:700;
}
.gcfm-directory .gcfm-merchant-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  column-gap:72px;
  row-gap:16px;
}
.gcfm-directory .gcfm-merchant-grid a{
  color:#6d6d6d;
  font-size:16px;
  line-height:1.35;
  font-weight:400;
  text-decoration:none;
}
.gcfm-directory .gcfm-merchant-grid a:hover,
.gcfm-directory .gcfm-merchant-grid a:focus{
  color:var(--gcfm-accent);
  text-decoration:underline;
}

.gcfm-directory .gcfm-browse{
  background:#fff;
  border-top:4px solid #edf3fa;
  padding:30px 0 38px;
}
.gcfm-directory .gcfm-alphabet{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:18px;
}
.gcfm-directory .gcfm-alphabet a{
  min-width:18px;
  text-align:center;
  color:var(--gcfm-accent);
  font-size:17px;
  line-height:1;
  font-weight:700;
  text-decoration:none;
}
.gcfm-directory .gcfm-alphabet a:hover,
.gcfm-directory .gcfm-alphabet a:focus,
.gcfm-directory .gcfm-alphabet a.is-active{
  color:#163f86;
  text-decoration:underline;
}

.gcfm-directory .gcfm-letter-results{
  background:#fff;
  border-top:1px solid #eef1f4;
  padding:34px 0 54px;
}
.gcfm-directory .gcfm-letter-results .gcfm-merchant-grid{
  margin-top:8px;
}

@media (max-width:1024px){
  .gcfm-directory .gcfm-featured-grid .gcfm-store-card{
    flex-basis:180px;
    width:180px;
  }
  .gcfm-directory .gcfm-merchant-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    column-gap:42px;
  }
}

@media (max-width:700px){
  .gcfm-directory .gcfm-shell{
    width:calc(100% - 30px);
    max-width:none;
  }
  .gcfm-directory .gcfm-directory-featured{
    padding:36px 0 42px;
  }
  .gcfm-directory .gcfm-directory-featured h1{
    text-align:left;
    font-size:31px;
    line-height:1.2;
    margin-bottom:28px;
  }
  .gcfm-directory .gcfm-featured-grid{
    gap:16px;
  }
  .gcfm-directory .gcfm-featured-grid .gcfm-store-card{
    flex:0 0 calc(50% - 8px);
    width:calc(50% - 8px);
    min-height:278px;
    padding:18px 12px 22px;
    border-radius:8px;
  }
  .gcfm-directory .gcfm-featured-grid .gcfm-store-logo-box{
    height:195px;
  }
  .gcfm-directory .gcfm-featured-grid .gcfm-store-logo-box img{
    max-width:92%;
    max-height:175px;
  }
  .gcfm-directory .gcfm-featured-grid .gcfm-store-logo-box .gcfm-store-initials{
    width:128px;
    height:128px;
    font-size:36px;
  }
  .gcfm-directory .gcfm-featured-grid .gcfm-store-card-name{
    margin-top:12px;
    font-size:20px;
    line-height:1.25;
  }

  .gcfm-directory .gcfm-directory-list{
    padding:38px 0 26px;
  }
  .gcfm-directory .gcfm-directory-list.gcfm-recent{
    padding-top:20px;
    padding-bottom:42px;
  }
  .gcfm-directory .gcfm-directory-list h2,
  .gcfm-directory .gcfm-browse h2{
    font-size:30px;
    line-height:1.2;
    margin-bottom:28px;
    text-align:left;
  }
  .gcfm-directory .gcfm-merchant-grid{
    grid-template-columns:1fr;
    row-gap:24px;
  }
  .gcfm-directory .gcfm-merchant-grid a{
    text-align:center;
    font-size:21px;
    line-height:1.35;
    color:#777;
  }

  .gcfm-directory .gcfm-browse{
    padding:34px 0 44px;
  }
  .gcfm-directory .gcfm-alphabet{
    display:grid;
    grid-template-columns:repeat(8,1fr);
    gap:26px 10px;
  }
  .gcfm-directory .gcfm-alphabet a{
    font-size:22px;
  }

  .gcfm-directory .gcfm-letter-results{
    padding:30px 0 46px;
  }
  .gcfm-directory .gcfm-results-head h2{
    font-size:40px;
  }
  .gcfm-directory .gcfm-store-filter{
    font-size:16px;
  }
}


/* =========================================================
   v4.10.0 — Mobile Stores directory sizing/typography polish.
   Scoped ONLY to .gcfm-directory on phones. Single-store pages,
   coupons, header, footer, homepage and tablet/desktop are untouched.
   ========================================================= */
@media (max-width:700px){
  /* Match CouponFollow's tighter mobile directory spacing. */
  .gcfm-directory .gcfm-shell{
    width:calc(100% - 40px);
  }
  .gcfm-directory .gcfm-directory-featured{
    padding:34px 0 38px;
  }
  .gcfm-directory .gcfm-directory-featured h1{
    margin:0 0 26px;
    text-align:left;
    font-size:24px;
    line-height:1.28;
    font-weight:700;
    letter-spacing:0;
  }
  .gcfm-directory .gcfm-featured-grid{
    gap:18px 18px;
  }
  .gcfm-directory .gcfm-featured-grid .gcfm-store-card{
    flex:0 0 calc(50% - 9px);
    width:calc(50% - 9px);
    min-height:196px;
    padding:12px 10px 15px;
    border-radius:8px;
  }
  .gcfm-directory .gcfm-featured-grid .gcfm-store-logo-box{
    height:132px;
  }
  .gcfm-directory .gcfm-featured-grid .gcfm-store-logo-box img{
    max-width:92%;
    max-height:112px;
  }
  .gcfm-directory .gcfm-featured-grid .gcfm-store-logo-box .gcfm-store-initials{
    width:96px;
    height:96px;
    font-size:28px;
  }
  .gcfm-directory .gcfm-featured-grid .gcfm-store-card-name{
    margin-top:8px;
    font-size:17px;
    line-height:1.25;
    font-weight:400;
    color:var(--gcfm-brand-name)!important;
  }

  /* Top Merchants + Recently Added: CouponFollow-like mobile scale. */
  .gcfm-directory .gcfm-directory-list{
    padding:34px 0 24px;
  }
  .gcfm-directory .gcfm-directory-list.gcfm-recent{
    padding-top:18px;
    padding-bottom:36px;
  }
  .gcfm-directory .gcfm-directory-list h2,
  .gcfm-directory .gcfm-browse h2{
    margin:0 0 24px;
    text-align:left;
    font-size:24px;
    line-height:1.25;
    font-weight:700;
    letter-spacing:0;
  }
  .gcfm-directory .gcfm-merchant-grid{
    grid-template-columns:1fr;
    row-gap:17px;
  }
  .gcfm-directory .gcfm-merchant-grid a{
    text-align:center;
    font-size:17px;
    line-height:1.35;
    font-weight:400;
    color:#777;
  }

  /* Browse By Store / A-Z: smaller title and letters like reference. */
  .gcfm-directory .gcfm-browse{
    padding:30px 0 38px;
    border-top:4px solid #edf3fa;
  }
  .gcfm-directory .gcfm-alphabet{
    display:grid;
    grid-template-columns:repeat(8,1fr);
    gap:21px 8px;
    align-items:center;
  }
  .gcfm-directory .gcfm-alphabet a{
    min-width:0;
    font-size:17px;
    line-height:1;
    font-weight:700;
  }

  .gcfm-directory .gcfm-letter-results{
    padding:28px 0 42px;
  }
  .gcfm-directory .gcfm-results-head h2{
    font-size:34px;
  }
}

/* =========================================================
   v4.11.0 — Stores A-Z result flow (CouponFollow-like).
   ONLY affects the Stores directory. Single store pages,
   coupon cards, homepage, header and footer are untouched.
   ========================================================= */
.gcfm-directory .gcfm-letter-results-before-az{
  padding:34px 0 30px;
  background:#fff;
}
.gcfm-directory .gcfm-letter-results-before-az .gcfm-merchant-grid{
  margin:0;
}
.gcfm-directory .gcfm-view-all-letter{
  margin:28px 0 0;
  font-size:18px;
  line-height:1.4;
}
.gcfm-directory .gcfm-view-all-letter a{
  color:var(--gcfm-accent,#315ca8);
  text-decoration:none;
  font-weight:400;
}
.gcfm-directory .gcfm-view-all-letter a:hover,
.gcfm-directory .gcfm-view-all-letter a:focus{
  text-decoration:underline;
}

@media (max-width:700px){
  .gcfm-directory .gcfm-letter-results-before-az{
    padding:28px 0 30px;
  }
  .gcfm-directory .gcfm-letter-results-before-az .gcfm-shell{
    width:calc(100% - 40px);
  }
  .gcfm-directory .gcfm-letter-results-before-az .gcfm-merchant-grid{
    display:grid;
    grid-template-columns:1fr;
    row-gap:18px;
  }
  .gcfm-directory .gcfm-letter-results-before-az .gcfm-merchant-grid a{
    text-align:center;
    color:#777;
    font-size:17px;
    line-height:1.35;
    font-weight:400;
    text-decoration:none;
  }
  .gcfm-directory .gcfm-view-all-letter{
    margin:30px 0 0;
    text-align:center;
    font-size:17px;
  }
  /* The alphabet stays BELOW the selected-letter list. */
  .gcfm-directory .gcfm-browse{
    padding-top:30px;
  }
}


/* =========================================================
   v4.12.0 — A-Z selected-letter pages now behave like a
   separate CouponFollow-style "Browse All Stores" view.
   Scoped ONLY to the Stores directory.
   ========================================================= */
.gcfm-directory-letter-mode .gcfm-letter-hero{
  background:#edf3fa;
  padding:42px 0 44px;
}
.gcfm-directory-letter-mode .gcfm-letter-hero h1{
  margin:0;
  text-align:center;
  color:#333;
  font-size:36px;
  line-height:1.2;
  font-weight:500;
}
.gcfm-directory-letter-mode .gcfm-letter-page{
  background:#fff;
  padding:46px 0 30px;
}
.gcfm-directory-letter-mode .gcfm-letter-title{
  margin:0 0 32px;
  color:#333;
  font-size:34px;
  line-height:1;
  font-weight:700;
}
.gcfm-directory-letter-mode .gcfm-letter-page .gcfm-merchant-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  column-gap:72px;
  row-gap:18px;
}
.gcfm-directory-letter-mode .gcfm-letter-page .gcfm-merchant-grid a{
  color:#777;
  text-decoration:none;
  font-size:16px;
  line-height:1.35;
  font-weight:400;
}
.gcfm-directory-letter-mode .gcfm-view-all-letter{
  margin:32px 0 0;
  font-size:18px;
  line-height:1.4;
}
.gcfm-directory-letter-mode .gcfm-browse-letter-mode{
  border-top:4px solid #edf3fa;
}

@media (max-width:700px){
  .gcfm-directory-letter-mode .gcfm-letter-hero{
    padding:34px 0 36px;
  }
  .gcfm-directory-letter-mode .gcfm-letter-hero h1{
    text-align:center;
    font-size:28px;
    line-height:1.2;
    font-weight:500;
  }
  .gcfm-directory-letter-mode .gcfm-letter-page{
    padding:38px 0 30px;
  }
  .gcfm-directory-letter-mode .gcfm-letter-page .gcfm-shell{
    width:calc(100% - 40px);
  }
  .gcfm-directory-letter-mode .gcfm-letter-title{
    margin:0 0 34px;
    text-align:left;
    font-size:30px;
    line-height:1;
    font-weight:700;
  }
  .gcfm-directory-letter-mode .gcfm-letter-page .gcfm-merchant-grid{
    grid-template-columns:1fr;
    row-gap:20px;
  }
  .gcfm-directory-letter-mode .gcfm-letter-page .gcfm-merchant-grid a{
    text-align:center;
    color:#777;
    font-size:17px;
    line-height:1.35;
    font-weight:400;
  }
  .gcfm-directory-letter-mode .gcfm-view-all-letter{
    margin:34px 0 0;
    text-align:left;
    font-size:17px;
    line-height:1.4;
  }
  .gcfm-directory-letter-mode .gcfm-browse-letter-mode{
    padding-top:30px;
  }
}

/* =========================================================
   v4.13.0 — Mobile A–Z letter page typography polish.
   Matches CouponFollow's lighter/smaller Browse All Stores
   heading and selected-letter scale. Stores directory only.
   ========================================================= */
@media (max-width:700px){
  .gcfm-directory-letter-mode .gcfm-letter-hero{
    padding:30px 0 32px;
  }
  .gcfm-directory-letter-mode .gcfm-letter-hero h1{
    font-size:24px;
    line-height:1.2;
    font-weight:400;
    letter-spacing:0;
  }
  .gcfm-directory-letter-mode .gcfm-letter-page{
    padding:34px 0 28px;
  }
  .gcfm-directory-letter-mode .gcfm-letter-title{
    margin:0 0 30px;
    font-size:22px;
    line-height:1;
    font-weight:700;
  }
  .gcfm-directory-letter-mode .gcfm-letter-page .gcfm-merchant-grid a{
    font-size:17px;
    line-height:1.35;
    font-weight:400;
    color:#777;
  }
  .gcfm-directory-letter-mode .gcfm-view-all-letter{
    font-size:16px;
    line-height:1.4;
    font-weight:400;
  }
  .gcfm-directory-letter-mode .gcfm-browse-letter-mode h2{
    font-size:24px;
    line-height:1.25;
    font-weight:700;
  }
  .gcfm-directory-letter-mode .gcfm-browse-letter-mode .gcfm-alphabet a{
    font-size:17px;
    font-weight:700;
  }
}


/* =========================================================
   v4.14.0 — Compact CouponFollow-style A-Z letter hero band.
   ONLY changes the light-blue "Browse All Stores" strip on
   the Stores directory letter view. Single store pages and
   coupon layouts are untouched.
   ========================================================= */
.gcfm-directory-letter-mode .gcfm-letter-hero{
  background:#edf3fa;
  padding:30px 0 32px;
}
@media (max-width:900px){
  .gcfm-directory-letter-mode .gcfm-letter-hero{
    padding:27px 0 29px;
  }
}
@media (max-width:700px){
  .gcfm-directory-letter-mode .gcfm-letter-hero{
    padding:24px 0 26px;
  }
  .gcfm-directory-letter-mode .gcfm-letter-hero h1{
    margin:0;
    font-size:24px;
    line-height:1.2;
    font-weight:400;
  }
}

/* =========================================================
   v4.16.0 — Mobile Best Deals sizing only.
   Keeps the live homepage card close to the compact mobile
   carousel proportions used during design/preview, with side
   peeks. Staff Picks, Stores directory and single-store pages
   are untouched.
   ========================================================= */
@media (max-width:700px){
  .gcfm-best-block .gcfm-carousel-viewport{
    overflow:hidden;
  }
  .gcfm-best-block .gcfm-carousel-track{
    gap:14px;
  }
  .gcfm-best-block .gcfm-top-best{
    min-height:286px;
    height:286px;
  }
  .gcfm-best-block .gcfm-top-best .gcfm-top-card-link{
    padding:20px 16px;
    justify-content:center;
  }
  .gcfm-best-block .gcfm-top-best .gcfm-top-logo{
    width:132px;
    height:112px;
    margin-bottom:10px;
  }
  .gcfm-best-block .gcfm-top-store{
    font-size:14px;
    margin-bottom:7px;
  }
  .gcfm-best-block .gcfm-top-card h3{
    font-size:18px;
    line-height:1.27;
  }
  .gcfm-best-block .gcfm-dots{
    margin:12px 0 20px;
  }
}


/* =========================================================
   v4.17.0 — Homepage top-coupon mobile polish only.
   - Removes the redundant "Best Deals" label on the frontend.
   - Makes Today's Top Coupons heading more compact.
   - Keeps CouponFollow-style side-card peeks visible at both
     ends of the mobile carousel.
   Staff Picks, Stores directory, single-store coupon pages,
   header and footer are untouched.
   ========================================================= */
.gcfm-best-block > h2{display:none!important;}

@media (max-width:700px){
  .gcfm-top-section{
    padding-top:30px;
  }
  .gcfm-top-section h1{
    font-size:28px;
    line-height:1.14;
    margin:0 0 20px;
    font-weight:700;
    white-space:nowrap;
  }
  .gcfm-best-block{
    margin-top:0;
  }
  .gcfm-best-block .gcfm-carousel-viewport{
    position:relative;
  }
  .gcfm-best-block .gcfm-carousel-track{
    position:relative;
    z-index:2;
  }
  /* At the first/last real slide, show the missing neighbour as
     the same slim white rounded card edge CouponFollow exposes. */
  .gcfm-best-block.gcfm-at-first .gcfm-carousel-viewport::before,
  .gcfm-best-block.gcfm-at-last .gcfm-carousel-viewport::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    width:56px;
    background:#fff;
    border:1px solid var(--gcfm-line);
    border-radius:9px;
    box-sizing:border-box;
    z-index:1;
    pointer-events:none;
  }
  .gcfm-best-block.gcfm-at-first .gcfm-carousel-viewport::before{left:-26px;}
  .gcfm-best-block.gcfm-at-last .gcfm-carousel-viewport::after{right:-26px;}
}

@media (max-width:380px){
  .gcfm-top-section h1{font-size:27px;}
}

/* =========================================================
   v4.18.0 — Homepage mobile parity polish only.
   Targets ONLY the homepage Trending Coupons, Popular Stores
   and FAQ sections on phones. Stores directory, single-store
   coupon pages, header/footer and desktop/tablet layouts are
   intentionally untouched.
   ========================================================= */
@media (max-width:700px){
  /* Today's Trending Coupons: single-line heading + compact CouponFollow-style cards. */
  .gcfm-trending-section{
    padding:34px 0 36px!important;
  }
  .gcfm-trending-section .gcfm-shell{
    width:min(calc(100% - 28px),680px)!important;
  }
  .gcfm-trending-section h2{
    max-width:none!important;
    width:100%!important;
    white-space:nowrap!important;
    text-align:center!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:27px!important;
    line-height:1.12!important;
    font-weight:700!important;
    letter-spacing:-.02em!important;
    margin:0 auto 22px!important;
  }
  .gcfm-trending-list{
    gap:10px!important;
  }
  .gcfm-trend-card{
    display:grid!important;
    grid-template-columns:88px minmax(0,1fr) 18px!important;
    gap:10px!important;
    min-height:112px!important;
    padding:10px 12px!important;
    border-radius:11px!important;
    box-sizing:border-box!important;
    box-shadow:0 1px 4px rgba(31,41,55,.08)!important;
  }
  .gcfm-trend-card::after{
    grid-column:3!important;
    font-size:30px!important;
  }
  .gcfm-trend-logo{
    grid-column:1!important;
    width:88px!important;
    height:88px!important;
  }
  .gcfm-trend-logo-frame{
    width:82px!important;
    height:82px!important;
  }
  .gcfm-trend-logo-frame img{
    width:82px!important;
    height:82px!important;
    max-width:82px!important;
    max-height:82px!important;
    object-fit:contain!important;
  }
  .gcfm-trend-logo-frame .gcfm-store-initials{
    width:82px!important;
    height:82px!important;
    font-size:23px!important;
  }
  .gcfm-trend-main{
    grid-column:2!important;
    min-width:0!important;
  }
  .gcfm-trend-main h3{
    font-size:18px!important;
    line-height:1.22!important;
    font-weight:700!important;
    margin:0 0 6px!important;
    -webkit-line-clamp:2!important;
  }
  .gcfm-trend-store{
    font-size:16px!important;
    line-height:1.2!important;
  }

  /* Popular Stores: heading above a dashed CouponFollow-style list box. */
  .gcfm-popular-section{
    padding:34px 0 38px!important;
    background:var(--gcfm-soft)!important;
  }
  .gcfm-popular-section .gcfm-shell{
    width:min(calc(100% - 28px),680px)!important;
  }
  .gcfm-popular-section h2{
    white-space:nowrap!important;
    text-align:center!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:28px!important;
    line-height:1.15!important;
    font-weight:700!important;
    letter-spacing:-.015em!important;
    margin:0 auto 20px!important;
  }
  .gcfm-popular-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:15px!important;
    width:100%!important;
    box-sizing:border-box!important;
    padding:24px 16px 26px!important;
    margin:0 auto!important;
    border:2px dashed #cbd2da!important;
    border-radius:4px!important;
    background:transparent!important;
  }
  .gcfm-popular-grid a{
    text-align:center!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:17px!important;
    line-height:1.35!important;
    font-weight:400!important;
    color:#707070!important;
    text-decoration:none!important;
  }

  /* FAQ: single-line title + tighter rounded accordion cards. */
  .gcfm-faq-section{
    padding:34px 0 40px!important;
    background:var(--gcfm-soft)!important;
  }
  .gcfm-faq-section .gcfm-shell{
    width:min(calc(100% - 28px),680px)!important;
  }
  .gcfm-faq-section h2{
    max-width:none!important;
    width:100%!important;
    white-space:nowrap!important;
    text-align:center!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:27px!important;
    line-height:1.12!important;
    font-weight:700!important;
    letter-spacing:-.02em!important;
    margin:0 auto 22px!important;
  }
  .gcfm-faq-list{
    gap:12px!important;
  }
  .gcfm-faq-list details,
  .gcfm-faq-list details:last-child{
    border:0!important;
    border-radius:11px!important;
    background:#fff!important;
    box-shadow:0 2px 5px rgba(31,41,55,.09)!important;
  }
  .gcfm-faq-list summary{
    min-height:72px!important;
    padding:16px 48px 16px 20px!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:18px!important;
    line-height:1.3!important;
    font-weight:400!important;
    color:#333!important;
  }
  .gcfm-faq-list summary::after{
    right:20px!important;
    width:13px!important;
    height:13px!important;
    border-right-width:3px!important;
    border-bottom-width:3px!important;
  }
  .gcfm-faq-list details div{
    padding:0 20px 20px!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:16px!important;
    line-height:1.52!important;
    color:#555!important;
  }
}

@media (max-width:370px){
  .gcfm-trending-section h2,
  .gcfm-faq-section h2{font-size:25px!important;}
  .gcfm-popular-section h2{font-size:26px!important;}
}


/* =========================================================
   v4.19.0 — Homepage PHONE parity pass.
   Requested changes only:
   - Hide the Staff Picks label on phones and pull its 2-column
     cards directly under the main-carousel dots.
   - Pull Trending searches up to the Staff Picks grid and use
     smaller CouponFollow-like typography/spacing.
   - Tighten Today's Trending Coupons, Popular Stores and FAQ.
   - The first FAQ item is opened by the PHP template on load.
   Stores directory, single-store coupon pages and desktop/tablet
   coupon layouts are intentionally unchanged here.
   ========================================================= */
@media (max-width:700px){
  /* Staff Picks label is not shown on CouponFollow mobile. */
  .gcfm-staff-block > h2{display:none!important;}
  .gcfm-best-block .gcfm-dots{margin:10px 0 10px!important;}
  .gcfm-staff-block{margin-top:0!important;padding-top:0!important;}
  .gcfm-staff-block .gcfm-carousel-wrap{margin-top:0!important;}

  /* Keep the searches box visually attached to the cards above it. */
  .gcfm-search-links{
    margin:16px 0 0!important;
    padding:20px 18px 22px!important;
    gap:12px!important;
    border-width:1.5px!important;
  }
  .gcfm-search-links strong{
    font-size:18px!important;
    line-height:1.25!important;
    font-weight:700!important;
    margin-bottom:1px!important;
  }
  .gcfm-search-links a{
    font-size:16px!important;
    line-height:1.32!important;
    font-weight:400!important;
  }
  .gcfm-top-section{padding-bottom:18px!important;}

  /* Today's Trending Coupons — smaller heading, less empty air, smarter cards. */
  .gcfm-trending-section{
    padding:22px 0 30px!important;
  }
  .gcfm-trending-section h2{
    font-size:24px!important;
    line-height:1.12!important;
    margin:0 auto 16px!important;
    font-weight:700!important;
  }
  .gcfm-trending-list{gap:9px!important;}
  .gcfm-trend-card{
    grid-template-columns:76px minmax(0,1fr) 16px!important;
    gap:9px!important;
    min-height:100px!important;
    padding:9px 10px!important;
    border-radius:10px!important;
  }
  .gcfm-trend-card::after{font-size:27px!important;}
  .gcfm-trend-logo{width:76px!important;height:76px!important;}
  .gcfm-trend-logo-frame{width:70px!important;height:70px!important;}
  .gcfm-trend-logo-frame img{
    width:70px!important;height:70px!important;
    max-width:70px!important;max-height:70px!important;
  }
  .gcfm-trend-logo-frame .gcfm-store-initials{
    width:70px!important;height:70px!important;font-size:20px!important;
  }
  .gcfm-trend-main h3{
    font-size:16.5px!important;
    line-height:1.22!important;
    margin:0 0 5px!important;
    font-weight:700!important;
  }
  .gcfm-trend-store{font-size:14px!important;line-height:1.2!important;}

  /* Popular Stores — CouponFollow-like heading and lighter list. */
  .gcfm-popular-section{
    padding:28px 0 32px!important;
  }
  .gcfm-popular-section h2{
    font-size:24px!important;
    line-height:1.15!important;
    margin:0 auto 14px!important;
    font-weight:700!important;
  }
  .gcfm-popular-grid{
    gap:12px!important;
    padding:20px 14px 22px!important;
    border-width:1.5px!important;
  }
  .gcfm-popular-grid a{
    font-size:15.5px!important;
    line-height:1.32!important;
    font-weight:400!important;
    color:#737373!important;
  }

  /* FAQ — compact CouponFollow mobile accordion. */
  .gcfm-faq-section{
    padding:28px 0 34px!important;
  }
  .gcfm-faq-section h2{
    font-size:24px!important;
    line-height:1.14!important;
    margin:0 auto 16px!important;
    font-weight:700!important;
  }
  .gcfm-faq-list{gap:10px!important;}
  .gcfm-faq-list details,
  .gcfm-faq-list details:last-child{
    border-radius:9px!important;
  }
  .gcfm-faq-list summary{
    min-height:58px!important;
    padding:12px 44px 12px 18px!important;
    font-size:16.5px!important;
    line-height:1.3!important;
    font-weight:400!important;
  }
  .gcfm-faq-list summary::after{
    right:18px!important;
    width:11px!important;
    height:11px!important;
    border-right-width:2.5px!important;
    border-bottom-width:2.5px!important;
  }
  .gcfm-faq-list details div{
    padding:0 18px 16px!important;
    font-size:15.5px!important;
    line-height:1.5!important;
    color:#5d5d5d!important;
  }
}

@media (max-width:370px){
  .gcfm-trending-section h2,
  .gcfm-popular-section h2,
  .gcfm-faq-section h2{font-size:23px!important;}
}

/* =========================================================
   v4.20.0 — Homepage spacing + footer-size parity pass.
   Requested changes only:
   - Hide the Staff Picks heading on desktop, tablet and phone.
   - Reduce the vertical space between Trending Coupons,
     Popular Stores and Frequently Asked Questions on all sizes.
   - Pull Popular Stores names closer to their heading.
   - Keep FAQ heading/cards closer together.
   - No single-store coupon/detail layout changes.
   ========================================================= */

/* Staff Picks heading is intentionally hidden on every viewport. */
.gcfm-staff-block > h2{display:none!important;}

/* Bring Staff Picks closer to the main carousel dots on desktop/tablet too. */
.gcfm-best-block .gcfm-dots{margin-bottom:12px!important;}
.gcfm-staff-block{margin-top:0!important;padding-top:0!important;}
.gcfm-staff-block .gcfm-carousel-wrap{margin-top:0!important;}

/* Desktop: remove the large double-padding gaps between homepage sections. */
@media (min-width:1025px){
  .gcfm-trending-section{padding-top:32px!important;padding-bottom:18px!important;}
  .gcfm-trending-section h2{margin-bottom:24px!important;}

  .gcfm-popular-section{padding-top:20px!important;padding-bottom:18px!important;}
  .gcfm-popular-section h2{margin-bottom:12px!important;}
  .gcfm-popular-grid{row-gap:12px!important;}

  .gcfm-faq-section{padding-top:20px!important;padding-bottom:34px!important;}
  .gcfm-faq-section h2{margin-bottom:12px!important;}
  .gcfm-faq-list summary{padding-top:16px!important;padding-bottom:16px!important;}
}

/* Tablet: same tighter visual rhythm as desktop. */
@media (min-width:701px) and (max-width:1024px){
  .gcfm-trending-section{padding-top:28px!important;padding-bottom:16px!important;}
  .gcfm-trending-section h2{margin-bottom:20px!important;}

  .gcfm-popular-section{padding-top:18px!important;padding-bottom:16px!important;}
  .gcfm-popular-section h2{margin-bottom:11px!important;}
  .gcfm-popular-grid{row-gap:11px!important;}

  .gcfm-faq-section{padding-top:18px!important;padding-bottom:30px!important;}
  .gcfm-faq-section h2{margin-bottom:12px!important;}
  .gcfm-faq-list summary{padding-top:15px!important;padding-bottom:15px!important;}
}

/* Phone: keep CouponFollow-like compact spacing between the same sections. */
@media (max-width:700px){
  .gcfm-best-block .gcfm-dots{margin-bottom:8px!important;}

  .gcfm-trending-section{padding-top:18px!important;padding-bottom:12px!important;}
  .gcfm-trending-section h2{margin-bottom:13px!important;}

  .gcfm-popular-section{padding-top:16px!important;padding-bottom:12px!important;}
  .gcfm-popular-section h2{margin-bottom:10px!important;}
  .gcfm-popular-grid{gap:10px!important;padding-top:17px!important;padding-bottom:18px!important;}

  .gcfm-faq-section{padding-top:16px!important;padding-bottom:28px!important;}
  .gcfm-faq-section h2{margin-bottom:12px!important;}
  .gcfm-faq-list{gap:8px!important;}
}

/* =========================================================
   v4.21.0 — Desktop/tablet Popular Stores + FAQ visual parity.
   IMPORTANT: min-width:701px only. Phone layout remains exactly
   as v4.20.0. Single-store pages/coupon cards are untouched.
   ========================================================= */
@media (min-width:701px){
  /* Match the soft homepage background visible above these sections. */
  .gcfm-popular-section,
  .gcfm-faq-section{
    background:var(--gcfm-soft)!important;
  }

  /* CouponFollow-like directory frame around Popular Stores. */
  .gcfm-popular-grid{
    box-sizing:border-box!important;
    padding:20px 22px!important;
    border:1.5px dashed #c8d1da!important;
    border-radius:3px!important;
    background:transparent!important;
  }

  /* Turn the desktop/tablet FAQ rows into white rounded cards. */
  .gcfm-faq-list{
    display:flex!important;
    flex-direction:column!important;
    gap:14px!important;
  }
  .gcfm-faq-list details,
  .gcfm-faq-list details:last-child{
    border:1px solid #dce3e9!important;
    border-radius:8px!important;
    background:#fff!important;
    box-shadow:0 1px 3px rgba(31,41,55,.06)!important;
    overflow:hidden!important;
  }
  .gcfm-faq-list summary{
    min-height:72px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    padding:18px 54px 18px 22px!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:18px!important;
    line-height:1.35!important;
    font-weight:400!important;
    color:#292929!important;
    list-style:none!important;
    position:relative!important;
  }
  .gcfm-faq-list summary::-webkit-details-marker{display:none!important;}
  .gcfm-faq-list summary::before{display:none!important;content:none!important;}
  .gcfm-faq-list summary::after{
    content:""!important;
    position:absolute!important;
    right:24px!important;
    top:50%!important;
    width:10px!important;
    height:10px!important;
    border-right:2px solid #555!important;
    border-bottom:2px solid #555!important;
    transform:translateY(-65%) rotate(45deg)!important;
    transition:transform .18s ease!important;
  }
  .gcfm-faq-list details[open] summary::after{
    transform:translateY(-35%) rotate(225deg)!important;
  }
  .gcfm-faq-list details div{
    padding:0 22px 20px!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:16px!important;
    line-height:1.55!important;
    color:#555!important;
  }
}


/* =========================================================
   v4.27.0 — homepage card spacing + store-page click targets.
   - Desktop only: restore a small visual gap between the main
     Top Coupons carousel and the six compact cards below it.
   - All devices: homepage coupon cards are visibly clickable.
   ========================================================= */
@media (min-width:1025px){
  .gcfm-staff-block{
    margin-top:18px!important;
  }
}

.gcfm-trend-card[data-gcfm-store-url]{
  cursor:pointer;
}
.gcfm-trend-card[data-gcfm-store-url]:focus-visible{
  outline:2px solid var(--gcfm-accent);
  outline-offset:3px;
}


/* =========================================================
   v4.29.0 — Tablet parity + permanent Staff Picks grid + clouds.
   Scope:
   - Staff Picks is a non-swipe responsive grid on every viewport.
   - Tablet uses 4 cards per row; incomplete last rows center naturally.
   - Desktop stays 6-per-row and remains non-swipe even when more cards are added.
   - Phone keeps the existing 2-column layout.
   - Decorative CouponFollow-like clouds are added to the Top Coupons area on
     tablet/desktop only. Phone is intentionally unchanged.
   ========================================================= */

/* Staff Picks: never carousel/swipe, regardless of how many cards are selected. */
.gcfm-staff-block .gcfm-carousel-viewport{
  overflow:visible!important;
}
.gcfm-staff-block .gcfm-staff-track,
.gcfm-staff-block .gcfm-staff-track.is-static-mobile-grid{
  transform:none!important;
  transition:none!important;
  will-change:auto!important;
}
.gcfm-staff-block .gcfm-arrow,
.gcfm-staff-block .gcfm-staff-dots{
  display:none!important;
}

@media (min-width:1025px){
  .gcfm-staff-block .gcfm-staff-track,
  .gcfm-staff-block .gcfm-staff-track.is-static-mobile-grid{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:12px!important;
  }
  .gcfm-staff-block .gcfm-top-staff{
    flex:0 0 calc((100% - 60px)/6)!important;
    width:auto!important;
    min-width:0!important;
  }
}

@media (min-width:701px) and (max-width:1024px){
  .gcfm-staff-block .gcfm-staff-track,
  .gcfm-staff-block .gcfm-staff-track.is-static-mobile-grid{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:14px!important;
  }
  .gcfm-staff-block .gcfm-top-staff{
    flex:0 0 calc((100% - 42px)/4)!important;
    width:auto!important;
    min-width:0!important;
  }
}

/* Soft cloud decorations like the CouponFollow reference.
   Tablet + desktop only so the approved phone layout is not changed. */
@media (min-width:701px){
  .gcfm-top-section{
    background-color:var(--gcfm-soft)!important;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 60'%3E%3Cpath fill='%23ffffff' fill-opacity='.80' d='M21 49h95c12 0 21-8 21-18s-9-18-21-18c-3 0-7 1-10 2C101 6 91 1 80 1 66 1 54 9 49 21c-4-3-9-5-15-5-12 0-22 8-24 19C4 37 0 42 0 48c0 1 0 1 .1 1H21z'/%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 60'%3E%3Cpath fill='%23ffffff' fill-opacity='.72' d='M21 49h95c12 0 21-8 21-18s-9-18-21-18c-3 0-7 1-10 2C101 6 91 1 80 1 66 1 54 9 49 21c-4-3-9-5-15-5-12 0-22 8-24 19C4 37 0 42 0 48c0 1 0 1 .1 1H21z'/%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 60'%3E%3Cpath fill='%23ffffff' fill-opacity='.80' d='M21 49h95c12 0 21-8 21-18s-9-18-21-18c-3 0-7 1-10 2C101 6 91 1 80 1 66 1 54 9 49 21c-4-3-9-5-15-5-12 0-22 8-24 19C4 37 0 42 0 48c0 1 0 1 .1 1H21z'/%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 60'%3E%3Cpath fill='%23ffffff' fill-opacity='.68' d='M21 49h95c12 0 21-8 21-18s-9-18-21-18c-3 0-7 1-10 2C101 6 91 1 80 1 66 1 54 9 49 21c-4-3-9-5-15-5-12 0-22 8-24 19C4 37 0 42 0 48c0 1 0 1 .1 1H21z'/%3E%3C/svg%3E"),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 60'%3E%3Cpath fill='%23ffffff' fill-opacity='.65' d='M21 49h95c12 0 21-8 21-18s-9-18-21-18c-3 0-7 1-10 2C101 6 91 1 80 1 66 1 54 9 49 21c-4-3-9-5-15-5-12 0-22 8-24 19C4 37 0 42 0 48c0 1 0 1 .1 1H21z'/%3E%3C/svg%3E");
    background-repeat:no-repeat!important;
    background-size:118px 51px,92px 40px,126px 54px,88px 38px,104px 45px!important;
    background-position:5% 86px,18% 175px,82% 78px,94% 172px,73% 235px!important;
  }
}

/* =====================================================
   v4.32.0 — Advanced How It Works page
   ===================================================== */
.gcfm-how-page{background:#fff;color:#172033;font-family:inherit}
.gcfm-how-page *{box-sizing:border-box}
.gcfm-how-page .gcfm-shell{width:min(1180px,calc(100% - 40px));margin:0 auto}
.gcfm-how-hero{background:var(--gcfm-soft,#eef6fb);padding:54px 0 50px;text-align:left;overflow:hidden;position:relative}
.gcfm-how-hero:after{content:"";position:absolute;right:-55px;bottom:-70px;width:260px;height:160px;border-radius:50%;background:rgba(255,255,255,.55);box-shadow:-145px 20px 0 rgba(255,255,255,.4)}
.gcfm-how-eyebrow,.gcfm-how-section-heading>span,.gcfm-how-cta>div>span{display:block;color:#138da4;font-size:12px;line-height:1.3;font-weight:800;letter-spacing:.12em;margin-bottom:11px}
.gcfm-how-hero h1{font-size:44px;line-height:1.08;letter-spacing:-1.4px;margin:0 0 14px;font-weight:800;color:#142238;position:relative;z-index:1}
.gcfm-how-hero p{max-width:720px;margin:0;color:#536273;font-size:18px;line-height:1.7;position:relative;z-index:1}
.gcfm-how-steps-section,.gcfm-how-offer-types,.gcfm-how-good-to-know,.gcfm-how-faq-section{padding:72px 0}
.gcfm-how-section-heading{text-align:center;max-width:760px;margin:0 auto 36px}
.gcfm-how-section-heading h2{font-size:34px;line-height:1.18;letter-spacing:-.8px;margin:0 0 12px;color:#172033;font-weight:800}
.gcfm-how-section-heading p{font-size:16px;line-height:1.7;color:#5e6a78;margin:0}
.gcfm-how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;position:relative}
.gcfm-how-steps:before{content:"";position:absolute;left:16.66%;right:16.66%;top:48px;border-top:1px dashed #b8c7d4;z-index:0}
.gcfm-how-step{position:relative;z-index:1;background:#fff;border:1px solid #dbe5ec;border-radius:16px;padding:30px 26px 28px;text-align:center;box-shadow:0 8px 24px rgba(31,58,81,.06)}
.gcfm-how-step-number{position:absolute;right:18px;top:16px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#edf8fb;color:#118ca3;font-weight:800;font-size:13px}
.gcfm-how-icon{width:72px;height:72px;margin:0 auto 22px;border-radius:20px;background:linear-gradient(135deg,#e9fbfa,#eaf2ff);display:flex;align-items:center;justify-content:center}
.gcfm-how-icon svg{width:34px;height:34px;fill:none;stroke:#158ca4;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.gcfm-how-step h3{font-size:21px;margin:0 0 10px;color:#172033;font-weight:800}
.gcfm-how-step p{font-size:14.5px;line-height:1.7;color:#5f6c7b;margin:0}
.gcfm-how-offer-types{background:#f7fbfd}
.gcfm-how-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:980px;margin:0 auto}
.gcfm-how-type-card{background:#fff;border:1px solid #d9e4eb;border-radius:16px;padding:30px;box-shadow:0 6px 18px rgba(28,55,78,.05)}
.gcfm-how-type-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:21px}
.gcfm-how-pill{font-size:11px;font-weight:800;letter-spacing:.08em;color:#087d91;background:#e8f9fb;border-radius:999px;padding:7px 10px}
.gcfm-how-mini-icon{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#13b8b2,#2a78ee);color:white;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800}
.gcfm-how-type-card h3{font-size:22px;line-height:1.3;margin:0 0 18px;color:#172033}
.gcfm-how-type-card ol{margin:0;padding-left:22px;color:#586777}
.gcfm-how-type-card li{padding-left:4px;margin:0 0 11px;font-size:14.5px;line-height:1.6}
.gcfm-how-journey-section{padding:72px 0;background:#172531;color:#fff}
.gcfm-how-journey-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.gcfm-how-journey-copy h2{font-size:34px;line-height:1.18;margin:0 0 16px;color:#fff;letter-spacing:-.7px}
.gcfm-how-journey-copy p{font-size:15px;line-height:1.8;color:#c1ced7;margin:0 0 20px;max-width:520px}
.gcfm-how-text-link{display:inline-flex;gap:8px;align-items:center;color:#5de0ef;text-decoration:none;font-weight:700;font-size:14px}
.gcfm-how-journey-card{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:10px 26px}
.gcfm-how-journey-card>div{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.gcfm-how-journey-card>div:last-child{border-bottom:0}
.gcfm-how-journey-card span{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#1fb6c5;color:white;font-size:12px;font-weight:800}
.gcfm-how-journey-card p{margin:0;color:#edf4f7;font-size:14.5px;line-height:1.55}
.gcfm-how-note-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.gcfm-how-note-grid article{border-top:3px solid #1caabd;background:#fff;border-radius:12px;padding:22px 20px;box-shadow:0 5px 18px rgba(25,52,73,.08);border-left:1px solid #e2eaef;border-right:1px solid #e2eaef;border-bottom:1px solid #e2eaef}
.gcfm-how-note-grid strong{display:block;font-size:15px;color:#172033;margin-bottom:8px}
.gcfm-how-note-grid p{margin:0;font-size:13.5px;line-height:1.65;color:#62707e}
.gcfm-how-faq-section{background:#f4f8fb}
.gcfm-how-faq-shell{max-width:900px!important}
.gcfm-how-faqs{display:flex;flex-direction:column;gap:12px}
.gcfm-how-faqs details{background:#fff;border:1px solid #dbe5ec;border-radius:12px;overflow:hidden}
.gcfm-how-faqs summary{list-style:none;cursor:pointer;padding:19px 54px 19px 20px;font-weight:750;font-size:15px;position:relative;color:#172033}
.gcfm-how-faqs summary::-webkit-details-marker{display:none}
.gcfm-how-faqs summary:after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:#eef7fa;color:#118da4;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:500}
.gcfm-how-faqs details[open] summary:after{content:"−"}
.gcfm-how-faqs details>div{padding:0 20px 20px;color:#5f6c7a;font-size:14px;line-height:1.7}
.gcfm-how-cta-section{padding:58px 0 72px;background:#fff}
.gcfm-how-cta{background:linear-gradient(135deg,#e9fbfa 0%,#edf5ff 100%);border:1px solid #d6e8ef;border-radius:18px;padding:34px 38px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.gcfm-how-cta h2{margin:0 0 7px;font-size:28px;line-height:1.2;color:#172033}
.gcfm-how-cta p{margin:0;color:#5e6c7a;font-size:14.5px}
.gcfm-how-cta-actions{display:flex;gap:12px;flex-shrink:0}
.gcfm-how-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:8px;text-decoration:none;font-size:14px;font-weight:800;white-space:nowrap}
.gcfm-how-btn-primary{background:#172531;color:#fff}
.gcfm-how-btn-secondary{background:#fff;color:#172531;border:1px solid #cbdbe3}

@media (max-width:1024px){
  .gcfm-how-page .gcfm-shell{width:min(100% - 48px,960px)}
  .gcfm-how-hero{padding:42px 0}
  .gcfm-how-hero h1{font-size:38px}
  .gcfm-how-steps-section,.gcfm-how-offer-types,.gcfm-how-good-to-know,.gcfm-how-faq-section{padding:58px 0}
  .gcfm-how-step{padding:26px 20px 24px}
  .gcfm-how-note-grid{grid-template-columns:1fr 1fr}
  .gcfm-how-journey-grid{gap:38px}
  .gcfm-how-cta{padding:30px}
}

@media (max-width:700px){
  .gcfm-how-page .gcfm-shell{width:calc(100% - 30px)}
  .gcfm-how-hero{padding:34px 0 32px;text-align:center}
  .gcfm-how-hero:after{display:none}
  .gcfm-how-hero h1{font-size:32px;letter-spacing:-.7px}
  .gcfm-how-hero p{font-size:15px;line-height:1.65}
  .gcfm-how-eyebrow,.gcfm-how-section-heading>span,.gcfm-how-cta>div>span{font-size:10.5px}
  .gcfm-how-steps-section,.gcfm-how-offer-types,.gcfm-how-good-to-know,.gcfm-how-faq-section{padding:44px 0}
  .gcfm-how-section-heading{margin-bottom:26px}
  .gcfm-how-section-heading h2{font-size:27px}
  .gcfm-how-section-heading p{font-size:14px}
  .gcfm-how-steps{grid-template-columns:1fr;gap:14px}
  .gcfm-how-steps:before{display:none}
  .gcfm-how-step{text-align:left;padding:22px 20px 22px 88px;min-height:112px}
  .gcfm-how-icon{position:absolute;left:18px;top:24px;width:52px;height:52px;border-radius:15px;margin:0}
  .gcfm-how-icon svg{width:26px;height:26px}
  .gcfm-how-step-number{right:14px;top:12px;width:24px;height:24px;font-size:11px}
  .gcfm-how-step h3{font-size:18px;margin-bottom:6px}
  .gcfm-how-step p{font-size:13.5px;line-height:1.58}
  .gcfm-how-type-grid{grid-template-columns:1fr;gap:14px}
  .gcfm-how-type-card{padding:22px 20px}
  .gcfm-how-type-card h3{font-size:19px}
  .gcfm-how-journey-section{padding:46px 0}
  .gcfm-how-journey-grid{grid-template-columns:1fr;gap:26px}
  .gcfm-how-journey-copy{text-align:center}
  .gcfm-how-journey-copy h2{font-size:27px}
  .gcfm-how-journey-copy p{font-size:14px}
  .gcfm-how-journey-card{padding:6px 18px}
  .gcfm-how-journey-card>div{grid-template-columns:46px 1fr;padding:15px 0;gap:12px}
  .gcfm-how-journey-card span{width:36px;height:36px}
  .gcfm-how-note-grid{grid-template-columns:1fr;gap:12px}
  .gcfm-how-note-grid article{padding:18px}
  .gcfm-how-faqs summary{font-size:14px;padding:17px 48px 17px 17px}
  .gcfm-how-faqs details>div{padding:0 17px 17px;font-size:13.5px}
  .gcfm-how-cta-section{padding:38px 0 50px}
  .gcfm-how-cta{padding:24px 20px;display:block;text-align:center}
  .gcfm-how-cta h2{font-size:25px}
  .gcfm-how-cta-actions{margin-top:20px;display:grid;grid-template-columns:1fr}
  .gcfm-how-btn{width:100%}
}

/* =====================================================
   v4.33.0 — Advanced linked How It Works completion
   ===================================================== */
.gcfm-how-page{scroll-behavior:smooth}
.gcfm-how-page section[id]{scroll-margin-top:110px}
.gcfm-how-hero{padding:58px 0 56px}
.gcfm-how-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr);gap:64px;align-items:center;position:relative;z-index:1}
.gcfm-how-hero-copy{min-width:0}
.gcfm-how-hero-copy h1{max-width:680px}
.gcfm-how-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.gcfm-how-trust-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;color:#506170;font-size:12.5px;font-weight:650}
.gcfm-how-trust-row span{display:inline-flex;align-items:center;gap:6px}
.gcfm-how-trust-row b{display:inline-flex;width:18px;height:18px;border-radius:50%;align-items:center;justify-content:center;background:#dff7f7;color:#0b879a;font-size:11px}
.gcfm-how-hero-panel{background:#fff;border:1px solid #d9e5ec;border-radius:18px;padding:24px 24px 20px;box-shadow:0 14px 38px rgba(28,54,75,.09)}
.gcfm-how-hero-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;border-bottom:1px solid #e5edf2;padding-bottom:16px;margin-bottom:5px}
.gcfm-how-hero-panel-head span{font-size:10.5px;letter-spacing:.1em;color:#168fa5;font-weight:800}
.gcfm-how-hero-panel-head strong{font-size:14px;color:#172033;white-space:nowrap}
.gcfm-how-flow-list>div{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;padding:15px 0;border-bottom:1px solid #edf2f5}
.gcfm-how-flow-list>div:last-child{border-bottom:0}
.gcfm-how-flow-num{width:30px;height:30px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e7faf9,#edf4ff);color:#118ba1;font-size:12px;font-weight:800}
.gcfm-how-flow-list p{margin:0;color:#172033;font-size:13.5px;line-height:1.35}
.gcfm-how-flow-list p b{display:block;margin-bottom:3px}
.gcfm-how-flow-list p small{display:block;color:#6b7885;font-size:12.5px;line-height:1.45;font-weight:400}
.gcfm-how-live-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px}
.gcfm-how-live-stats>div{background:#f4f9fb;border-radius:10px;padding:10px 12px;text-align:center}
.gcfm-how-live-stats strong{display:block;color:#172033;font-size:18px;line-height:1.2}
.gcfm-how-live-stats span{display:block;color:#71808d;font-size:10.5px;margin-top:2px}

.gcfm-how-jump{position:sticky;top:0;z-index:25;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-top:1px solid #e5edf2;border-bottom:1px solid #dfe8ee;box-shadow:0 5px 14px rgba(25,52,70,.035)}
.admin-bar .gcfm-how-jump{top:32px}
.gcfm-how-jump .gcfm-shell{display:flex;align-items:center;justify-content:center;gap:3px;overflow-x:auto;scrollbar-width:none;padding-top:8px;padding-bottom:8px}
.gcfm-how-jump .gcfm-shell::-webkit-scrollbar{display:none}
.gcfm-how-jump a{display:inline-flex;min-height:34px;align-items:center;padding:0 13px;border-radius:8px;color:#4d5c6b;text-decoration:none;font-size:12.5px;font-weight:700;white-space:nowrap}
.gcfm-how-jump a:hover,.gcfm-how-jump a:focus{background:#eef8fa;color:#087f93;outline:none}

.gcfm-how-step{display:flex;flex-direction:column;align-items:center}
.gcfm-how-step p{flex:1}
.gcfm-how-card-link,.gcfm-how-inline-action{display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:#0b879b;font-weight:800;font-size:12.5px;margin-top:17px}
.gcfm-how-card-link:hover,.gcfm-how-inline-action:hover{text-decoration:underline}
.gcfm-how-type-card{display:flex;flex-direction:column}
.gcfm-how-type-card ol{flex:1}
.gcfm-how-inline-action{margin-top:11px}
.gcfm-how-tipbar{max-width:980px;margin:22px auto 0;border:1px solid #cfe6ec;background:#eef9fb;border-radius:13px;padding:15px 18px;display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center}
.gcfm-how-tip-icon{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#15a6b5;color:#fff;font-weight:800;font-family:Georgia,serif}
.gcfm-how-tipbar strong{display:block;color:#172033;font-size:13px;margin-bottom:2px}
.gcfm-how-tipbar p{margin:0;color:#5f6d7a;font-size:12.5px;line-height:1.55}
.gcfm-how-journey-links{display:flex;gap:18px;flex-wrap:wrap}

.gcfm-how-note-grid article{position:relative;padding-top:56px}
.gcfm-how-note-icon{position:absolute;top:16px;left:20px;width:30px;height:30px;border-radius:9px;background:#eaf8fa;color:#0b899d;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px}
.gcfm-how-note-grid article>a{display:inline-block;margin-top:11px;color:#087f93;text-decoration:none;font-size:12px;font-weight:800}
.gcfm-how-note-grid article>a:hover{text-decoration:underline}
.gcfm-how-resource-wrap{margin-top:66px}
.gcfm-how-resource-heading{margin-bottom:25px}
.gcfm-how-resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.gcfm-how-resource-grid>a{min-height:132px;border:1px solid #dce7ed;border-radius:14px;background:#fff;padding:21px;display:grid;grid-template-columns:38px 1fr 20px;gap:12px;align-items:start;color:#172033;text-decoration:none;box-shadow:0 6px 18px rgba(25,52,73,.045);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.gcfm-how-resource-grid>a:hover{transform:translateY(-2px);border-color:#b8d9e1;box-shadow:0 11px 26px rgba(25,52,73,.08)}
.gcfm-how-resource-mark{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#edf8fa;color:#0a879b;font-size:10px;font-weight:800}
.gcfm-how-resource-grid strong{display:block;font-size:15px;margin-bottom:5px}
.gcfm-how-resource-grid p{margin:0;color:#697783;font-size:12.5px;line-height:1.55}
.gcfm-how-resource-grid>a>b{font-size:18px;color:#1aa2b3;font-weight:500}

.gcfm-how-help-strip{background:#10202c;color:#fff;padding:44px 0}
.gcfm-how-help-grid{display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center}
.gcfm-how-help-grid>div:first-child>span{display:block;color:#59d6e3;font-size:10.5px;font-weight:800;letter-spacing:.11em;margin-bottom:7px}
.gcfm-how-help-grid h2{color:#fff;margin:0 0 8px;font-size:27px;line-height:1.2}
.gcfm-how-help-grid p{margin:0;max-width:700px;color:#c7d2da;font-size:13.5px;line-height:1.65}
.gcfm-how-help-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.gcfm-how-help-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid rgba(255,255,255,.35);border-radius:8px;color:#fff;text-decoration:none;font-size:12.5px;font-weight:800}
.gcfm-how-help-actions a:first-child{background:#fff;color:#142330;border-color:#fff}
.gcfm-how-help-actions a:hover{transform:translateY(-1px)}

@media (max-width:1024px){
  .gcfm-how-hero-grid{grid-template-columns:minmax(0,1fr) 360px;gap:34px}
  .gcfm-how-hero-actions{margin-top:20px}
  .gcfm-how-trust-row{gap:11px 15px}
  .gcfm-how-resource-grid{grid-template-columns:1fr 1fr}
  .gcfm-how-resource-grid>a:last-child{grid-column:1/-1;max-width:calc(50% - 8px);width:100%;justify-self:center}
  .gcfm-how-help-grid{grid-template-columns:1fr auto}
}

@media (max-width:800px){
  .gcfm-how-hero-grid{grid-template-columns:1fr;gap:26px}
  .gcfm-how-hero-panel{max-width:620px;width:100%}
  .gcfm-how-jump{top:0}
  .admin-bar .gcfm-how-jump{top:32px}
  .gcfm-how-help-grid{grid-template-columns:1fr}
  .gcfm-how-help-actions{justify-content:flex-start}
}

@media (max-width:700px){
  .gcfm-how-page section[id]{scroll-margin-top:84px}
  .gcfm-how-hero{padding:34px 0 30px;text-align:left}
  .gcfm-how-hero-grid{gap:22px}
  .gcfm-how-hero-copy{text-align:center}
  .gcfm-how-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .gcfm-how-trust-row{justify-content:center;gap:8px 12px;font-size:11.5px}
  .gcfm-how-hero-panel{padding:19px 17px 16px;text-align:left}
  .gcfm-how-hero-panel-head{align-items:flex-start;flex-direction:column;gap:4px}
  .gcfm-how-live-stats strong{font-size:16px}
  .gcfm-how-jump .gcfm-shell{justify-content:flex-start;width:100%;padding-left:15px;padding-right:15px}
  .gcfm-how-jump a{font-size:11.5px;padding:0 11px}
  .gcfm-how-step{align-items:flex-start}
  .gcfm-how-step .gcfm-how-card-link{margin-top:10px}
  .gcfm-how-tipbar{grid-template-columns:32px 1fr;padding:13px 14px}
  .gcfm-how-tip-icon{width:30px;height:30px}
  .gcfm-how-journey-links{justify-content:center;gap:12px}
  .gcfm-how-resource-wrap{margin-top:45px}
  .gcfm-how-resource-grid{grid-template-columns:1fr}
  .gcfm-how-resource-grid>a:last-child{grid-column:auto;max-width:none}
  .gcfm-how-resource-grid>a{min-height:0;padding:17px;grid-template-columns:34px 1fr 18px}
  .gcfm-how-help-strip{padding:36px 0;text-align:center}
  .gcfm-how-help-grid h2{font-size:24px}
  .gcfm-how-help-actions{justify-content:center;display:grid;grid-template-columns:1fr 1fr;width:100%}
  .gcfm-how-help-actions a{width:100%}
  .gcfm-how-cta-actions{grid-template-columns:1fr}
}

@media (max-width:430px){
  .gcfm-how-hero-actions{grid-template-columns:1fr}
  .gcfm-how-help-actions{grid-template-columns:1fr}
}

/* =====================================================
   v4.34.0 — How It Works mobile polish + action contrast
   Scoped to the How It Works page only.
   ===================================================== */
.gcfm-how-page .gcfm-how-btn-primary{color:#fff!important}
.gcfm-how-page .gcfm-how-btn-secondary{color:#172531!important}
.gcfm-how-page .gcfm-how-card-link,
.gcfm-how-page .gcfm-how-inline-action{color:#0b879b!important}
.gcfm-how-page .gcfm-how-note-grid article>a{color:#087f93!important}
.gcfm-how-page .gcfm-how-resource-grid>a{color:#172033!important}
.gcfm-how-page .gcfm-how-journey-section .gcfm-how-text-link{color:#5de0ef!important}
.gcfm-how-page .gcfm-how-help-actions a{color:#fff!important}
.gcfm-how-page .gcfm-how-help-actions a:first-child{color:#142330!important}
.gcfm-how-page .gcfm-how-jump a.is-active{background:#eaf8fb;color:#087f93!important}

@media (max-width:700px){
  /* Compact, thumb-friendly in-page navigation. It remains swipeable. */
  .gcfm-how-jump{box-shadow:0 4px 12px rgba(24,49,68,.055)}
  .gcfm-how-jump .gcfm-shell{
    gap:4px!important;
    padding:7px 12px!important;
    scroll-snap-type:x proximity;
    scroll-padding-inline:12px;
    -webkit-overflow-scrolling:touch;
  }
  .gcfm-how-jump a{
    min-height:34px!important;
    padding:0 10px!important;
    font-size:11px!important;
    border-radius:9px!important;
    scroll-snap-align:center;
  }

  /* Hero: preserve the approved layout while shortening the page slightly. */
  .gcfm-how-hero{padding:30px 0 27px!important}
  .gcfm-how-hero-grid{gap:18px!important}
  .gcfm-how-hero h1{font-size:30px!important;line-height:1.08!important;margin-bottom:12px!important}
  .gcfm-how-hero p{font-size:14.5px!important;line-height:1.58!important}
  .gcfm-how-hero-actions{margin-top:20px!important;gap:8px!important}
  .gcfm-how-btn{min-height:44px!important;font-size:13.5px!important}
  .gcfm-how-trust-row{margin-top:17px!important;gap:7px 10px!important;font-size:11px!important}
  .gcfm-how-trust-row b{width:17px!important;height:17px!important}
  .gcfm-how-hero-panel{padding:17px 16px 14px!important;border-radius:15px!important}
  .gcfm-how-hero-panel-head{padding-bottom:12px!important}
  .gcfm-how-flow-list>div{padding:12px 0!important}
  .gcfm-how-flow-list p{font-size:13px!important}
  .gcfm-how-flow-list p small{font-size:12px!important}
  .gcfm-how-live-stats{margin-top:9px!important}
  .gcfm-how-live-stats>div{padding:9px 10px!important}

  /* Keep every content block readable but remove oversized vertical gaps. */
  .gcfm-how-steps-section,
  .gcfm-how-offer-types,
  .gcfm-how-good-to-know,
  .gcfm-how-faq-section{padding:38px 0!important}
  .gcfm-how-section-heading{margin-bottom:22px!important}
  .gcfm-how-section-heading>span{margin-bottom:8px!important}
  .gcfm-how-section-heading h2{font-size:25px!important;line-height:1.16!important;margin-bottom:10px!important}
  .gcfm-how-section-heading p{font-size:13.5px!important;line-height:1.58!important}

  /* Three-step cards. */
  .gcfm-how-steps{gap:11px!important}
  .gcfm-how-step{padding:19px 17px 19px 78px!important;min-height:104px!important;border-radius:14px!important}
  .gcfm-how-icon{left:15px!important;top:21px!important;width:48px!important;height:48px!important;border-radius:14px!important}
  .gcfm-how-icon svg{width:24px!important;height:24px!important}
  .gcfm-how-step h3{font-size:17.5px!important;line-height:1.25!important}
  .gcfm-how-step p{font-size:13px!important;line-height:1.52!important}
  .gcfm-how-step .gcfm-how-card-link{font-size:12.5px!important;margin-top:9px!important}

  /* Coupon vs Deal cards. */
  .gcfm-how-type-grid{gap:11px!important}
  .gcfm-how-type-card{padding:19px 18px!important;border-radius:14px!important}
  .gcfm-how-type-top{margin-bottom:16px!important}
  .gcfm-how-mini-icon{width:39px!important;height:39px!important}
  .gcfm-how-type-card h3{font-size:18px!important;line-height:1.28!important;margin-bottom:14px!important}
  .gcfm-how-type-card ol{padding-left:20px!important}
  .gcfm-how-type-card li{font-size:13.25px!important;line-height:1.5!important;margin-bottom:8px!important}
  .gcfm-how-inline-action{font-size:12.5px!important;margin-top:8px!important}
  .gcfm-how-tipbar{margin-top:16px!important;padding:12px 13px!important;border-radius:12px!important}
  .gcfm-how-tipbar p{font-size:12.25px!important;line-height:1.48!important}

  /* Merchant handoff: links stack cleanly and stay high-contrast on dark. */
  .gcfm-how-journey-section{padding:39px 0!important}
  .gcfm-how-journey-grid{gap:20px!important}
  .gcfm-how-journey-copy h2{font-size:25px!important;line-height:1.16!important;margin-bottom:12px!important}
  .gcfm-how-journey-copy p{font-size:13.25px!important;line-height:1.62!important;margin-bottom:16px!important}
  .gcfm-how-journey-links{display:grid!important;grid-template-columns:1fr!important;justify-items:center!important;gap:7px!important}
  .gcfm-how-text-link{font-size:12.5px!important}
  .gcfm-how-journey-card{padding:5px 15px!important;border-radius:15px!important}
  .gcfm-how-journey-card>div{grid-template-columns:42px 1fr!important;padding:13px 0!important;gap:10px!important}
  .gcfm-how-journey-card span{width:34px!important;height:34px!important;font-size:10.5px!important}
  .gcfm-how-journey-card p{font-size:13px!important;line-height:1.45!important}

  /* Good-to-know + resources. */
  .gcfm-how-note-grid{gap:10px!important}
  .gcfm-how-note-grid article{padding:50px 17px 17px!important;border-radius:12px!important}
  .gcfm-how-note-icon{top:14px!important;left:17px!important}
  .gcfm-how-note-grid strong{font-size:14.5px!important;margin-bottom:6px!important}
  .gcfm-how-note-grid p{font-size:12.75px!important;line-height:1.55!important}
  .gcfm-how-resource-wrap{margin-top:36px!important}
  .gcfm-how-resource-heading{margin-bottom:19px!important}
  .gcfm-how-resource-grid{gap:10px!important}
  .gcfm-how-resource-grid>a{padding:15px!important;grid-template-columns:32px 1fr 16px!important;border-radius:13px!important}
  .gcfm-how-resource-mark{width:30px!important;height:30px!important}
  .gcfm-how-resource-grid strong{font-size:14px!important}
  .gcfm-how-resource-grid p{font-size:12.25px!important;line-height:1.48!important}

  /* FAQs: retain first-open behavior with a denser CouponFollow-style stack. */
  .gcfm-how-faqs{gap:9px!important}
  .gcfm-how-faqs details{border-radius:11px!important}
  .gcfm-how-faqs summary{font-size:13.5px!important;line-height:1.35!important;padding:15px 46px 15px 15px!important}
  .gcfm-how-faqs summary:after{right:15px!important;width:25px!important;height:25px!important}
  .gcfm-how-faqs details>div{padding:0 15px 15px!important;font-size:13px!important;line-height:1.58!important}

  /* Support strip + final CTA. */
  .gcfm-how-help-strip{padding:31px 0!important}
  .gcfm-how-help-grid{gap:18px!important}
  .gcfm-how-help-grid h2{font-size:23px!important;line-height:1.16!important}
  .gcfm-how-help-grid p{font-size:12.75px!important;line-height:1.55!important}
  .gcfm-how-help-actions{gap:8px!important}
  .gcfm-how-help-actions a{min-height:44px!important;font-size:12.5px!important}
  .gcfm-how-cta-section{padding:31px 0 40px!important}
  .gcfm-how-cta{padding:21px 18px!important;border-radius:15px!important}
  .gcfm-how-cta h2{font-size:23px!important}
  .gcfm-how-cta p{font-size:13px!important;line-height:1.5!important}
  .gcfm-how-cta-actions{margin-top:16px!important;gap:8px!important}
}


/* =====================================================
   v4.34.1 — Bulletproof mobile jump swipe + primary text
   ===================================================== */
.gcfm-how-page a.gcfm-how-btn.gcfm-how-btn-primary,
.gcfm-how-page a.gcfm-how-btn.gcfm-how-btn-primary:link,
.gcfm-how-page a.gcfm-how-btn.gcfm-how-btn-primary:visited,
.gcfm-how-page a.gcfm-how-btn.gcfm-how-btn-primary:hover,
.gcfm-how-page a.gcfm-how-btn.gcfm-how-btn-primary:focus,
.gcfm-how-page a.gcfm-how-btn.gcfm-how-btn-primary:active{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

@media (max-width:700px){
  .gcfm-how-jump{
    overflow:hidden!important;
  }
  .gcfm-how-jump .gcfm-shell{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-behavior:smooth;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-x pan-y!important;
    overscroll-behavior-x:contain;
    cursor:grab;
  }
  .gcfm-how-jump .gcfm-shell::-webkit-scrollbar{
    display:none!important;
    width:0!important;
    height:0!important;
  }
  .gcfm-how-jump .gcfm-shell.is-dragging{
    cursor:grabbing;
    scroll-snap-type:none!important;
  }
  .gcfm-how-jump a{
    flex:0 0 auto!important;
    width:auto!important;
    max-width:none!important;
    min-width:max-content!important;
    user-select:none;
    -webkit-user-select:none;
  }
}

/* =========================================================
 * v4.35.0 — Advanced Info & Tools pages
 * Research & Data, Press & Media Kit, Saving Guides,
 * Coupon Tools, Editorial Guidelines
 * ======================================================= */
.gcfm-info-page{--gcfm-info-ink:#122033;--gcfm-info-muted:#5f6d7d;--gcfm-info-line:#d9e4ec;--gcfm-info-soft:#f2f8fc;--gcfm-info-cyan:#0c9eb3;--gcfm-info-dark:#112332;background:#fff;color:var(--gcfm-info-ink);font-family:inherit}
.gcfm-info-page *{box-sizing:border-box}
.gcfm-info-shell{width:min(1180px,calc(100% - 48px));margin:0 auto}
.gcfm-info-hero{background:linear-gradient(180deg,#eef8fd 0%,#eaf5fb 100%);padding:72px 0 64px;position:relative;overflow:hidden}
.gcfm-info-hero:after{content:"";position:absolute;right:-90px;bottom:-75px;width:360px;height:180px;border-radius:50%;background:rgba(255,255,255,.48);box-shadow:-150px 35px 0 rgba(255,255,255,.34)}
.gcfm-info-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:70px;align-items:center;position:relative;z-index:1}
.gcfm-info-eyebrow,.gcfm-info-heading>span,.gcfm-info-footer-cta span,.gcfm-info-hero-card>span{display:block;color:#078ea5;font-size:12px;line-height:1.2;font-weight:800;letter-spacing:1.7px;text-transform:uppercase;margin-bottom:15px}
.gcfm-info-hero h1{font-size:48px;line-height:1.08;letter-spacing:-1.6px;margin:0 0 18px;color:#0f1f34;font-weight:800;max-width:760px}
.gcfm-info-hero p{font-size:18px;line-height:1.7;color:#526273;max-width:760px;margin:0 0 28px}
.gcfm-info-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.gcfm-info-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:8px;text-decoration:none!important;font-size:14px;font-weight:800;transition:.18s ease;border:1px solid #cad9e5}
.gcfm-info-btn-primary,.gcfm-info-btn-primary:visited{background:#112332!important;border-color:#112332!important;color:#fff!important}
.gcfm-info-btn-primary:hover{transform:translateY(-1px);background:#183247!important;color:#fff!important}
.gcfm-info-btn-secondary,.gcfm-info-btn-secondary:visited{background:#fff;color:#4e35d8!important}
.gcfm-info-btn-secondary:hover{border-color:#9ab4c7;transform:translateY(-1px)}
.gcfm-info-hero-card{background:#fff;border:1px solid #d6e3eb;border-radius:18px;padding:26px;box-shadow:0 14px 32px rgba(22,56,79,.07)}
.gcfm-info-glance-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.gcfm-info-glance-grid div{background:#f4f9fc;border-radius:12px;padding:18px 14px;text-align:center}
.gcfm-info-glance-grid strong{display:block;font-size:24px;color:#0f1f34;line-height:1.1;margin-bottom:6px}
.gcfm-info-glance-grid small{font-size:12px;color:#758394}
.gcfm-info-nav{background:#fff;border-bottom:1px solid #e0e9ef;position:sticky;top:0;z-index:15}
.admin-bar .gcfm-info-nav{top:32px}
.gcfm-info-nav .gcfm-info-shell{display:flex;justify-content:center;gap:32px;overflow-x:auto;scrollbar-width:none;padding:0 8px}
.gcfm-info-nav .gcfm-info-shell::-webkit-scrollbar{display:none}
.gcfm-info-nav a{display:flex;align-items:center;min-height:58px;white-space:nowrap;text-decoration:none!important;color:#506071!important;font-size:13px;font-weight:750;border-bottom:2px solid transparent;padding:0 2px}
.gcfm-info-nav a.is-current{color:#087f94!important;border-bottom-color:#0ea6b9}
.gcfm-info-section{padding:76px 0}
.gcfm-info-soft{background:#f4f9fc}
.gcfm-info-heading{text-align:center;max-width:780px;margin:0 auto 38px}
.gcfm-info-heading h2,.gcfm-info-two-col h2,.gcfm-info-policy-list h2,.gcfm-info-guide-articles h2{font-size:34px;line-height:1.2;letter-spacing:-.8px;color:#102036;margin:0 0 14px;font-weight:800}
.gcfm-info-heading p,.gcfm-info-two-col p,.gcfm-info-policy-list p,.gcfm-info-guide-articles p{font-size:16px;line-height:1.7;color:#657384;margin:0}
.gcfm-info-card-grid{display:grid;gap:18px}
.gcfm-info-card-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.gcfm-info-card-grid article{background:#fff;border:1px solid #dce6ed;border-radius:14px;padding:26px;box-shadow:0 7px 18px rgba(20,49,71,.035)}
.gcfm-info-icon{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:11px;background:#eaf9fb;color:#078ea5;font-weight:800;margin-bottom:18px}
.gcfm-info-card-grid h3{font-size:18px;line-height:1.35;margin:0 0 10px;color:#102036;font-weight:800}
.gcfm-info-card-grid p{font-size:14px;line-height:1.65;color:#657384;margin:0}
.gcfm-info-card-grid article>a{display:inline-block;margin-top:14px;color:#078da2!important;font-weight:800;text-decoration:none!important}
.gcfm-info-two-col{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:64px;align-items:start}
.gcfm-info-two-col>div>p+p{margin-top:16px}
.gcfm-info-checklist{background:#fff;border:1px solid #d8e4eb;border-radius:16px;padding:28px}
.gcfm-info-checklist h3{font-size:19px;margin:0 0 16px;color:#102036}
.gcfm-info-checklist ul{list-style:none;margin:0;padding:0}
.gcfm-info-checklist li{position:relative;padding:11px 0 11px 28px;border-top:1px solid #edf2f5;color:#536273;font-size:14px;line-height:1.55}
.gcfm-info-checklist li:first-child{border-top:0}
.gcfm-info-checklist li:before{content:"✓";position:absolute;left:0;top:11px;color:#08a0b4;font-weight:900}
.gcfm-info-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.gcfm-info-link-grid a{display:flex;flex-direction:column;gap:8px;padding:24px;border:1px solid #dce6ed;border-radius:13px;text-decoration:none!important;background:#fff;transition:.18s ease}
.gcfm-info-link-grid a:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(24,61,86,.06)}
.gcfm-info-link-grid strong{color:#102036;font-size:17px}
.gcfm-info-link-grid span{color:#078ea5;font-size:13px;font-weight:750}
.gcfm-info-inline-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:22px}
.gcfm-info-inline-links a{color:#078da2!important;font-weight:800;text-decoration:none!important}
.gcfm-info-boilerplate{background:#112332;color:#fff;border-radius:16px;padding:30px;box-shadow:0 16px 34px rgba(15,34,48,.12)}
.gcfm-info-boilerplate>span{display:block;color:#36c5d4;font-size:11px;font-weight:800;letter-spacing:1.5px;margin-bottom:15px}
.gcfm-info-boilerplate p{color:#dbe6ee!important;font-size:14px!important;line-height:1.7!important}
.gcfm-info-boilerplate button{margin-top:20px;background:#fff;border:0;border-radius:8px;min-height:42px;padding:0 16px;color:#112332;font-weight:800;cursor:pointer}
.gcfm-info-center-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}
.gcfm-info-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.gcfm-info-guide-grid>a{display:grid;grid-template-columns:46px 1fr auto;gap:16px;align-items:center;background:#fff;border:1px solid #dce6ed;border-radius:14px;padding:22px;text-decoration:none!important;transition:.18s ease}
.gcfm-info-guide-grid>a:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(24,61,86,.06)}
.gcfm-info-guide-grid>a>span,.gcfm-info-policy-list article>span,.gcfm-info-guide-articles article>span{display:inline-flex;width:44px;height:44px;border-radius:11px;background:#eaf9fb;align-items:center;justify-content:center;color:#078ea5;font-weight:800;font-size:12px}
.gcfm-info-guide-grid h3{margin:0 0 6px;font-size:17px;color:#102036}
.gcfm-info-guide-grid p{margin:0;font-size:13px;line-height:1.55;color:#657384}
.gcfm-info-guide-grid b{color:#09a0b4}
.gcfm-info-guide-articles,.gcfm-info-policy-list{display:flex;flex-direction:column;gap:18px}
.gcfm-info-guide-articles article,.gcfm-info-policy-list article{display:grid;grid-template-columns:54px 1fr;gap:22px;background:#fff;border:1px solid #dce6ed;border-radius:15px;padding:30px;scroll-margin-top:90px}
.gcfm-info-guide-articles h2,.gcfm-info-policy-list h2{font-size:23px;margin-bottom:10px}
.gcfm-info-guide-articles ol{margin:0;padding-left:22px;color:#5e6d7d;line-height:1.8;font-size:15px}
.gcfm-info-guide-articles a,.gcfm-info-policy-list a{display:inline-block;margin-top:12px;color:#078da2!important;font-weight:800;text-decoration:none!important}
.gcfm-tool-card{background:#fff;border:1px solid #d8e4eb;border-radius:18px;padding:30px;box-shadow:0 10px 28px rgba(20,52,75,.05)}
.gcfm-tool-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.gcfm-tool-card label{display:flex;flex-direction:column;gap:8px;color:#283849;font-size:13px;font-weight:800}
.gcfm-tool-card label span{font-weight:500;color:#7a8794}
.gcfm-tool-card input,.gcfm-tool-card select{width:100%;height:48px;border:1px solid #cddbe5;border-radius:8px;background:#fff;padding:0 13px;font:inherit;color:#102036;outline:none}
.gcfm-tool-card input:focus,.gcfm-tool-card select:focus{border-color:#0aa6b8;box-shadow:0 0 0 3px rgba(10,166,184,.12)}
.gcfm-tool-result{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px;background:#112332;border-radius:14px;padding:20px;color:#fff}
.gcfm-tool-result>div{background:rgba(255,255,255,.06);border-radius:10px;padding:16px}
.gcfm-tool-result span{display:block;color:#aebfcd;font-size:12px;margin-bottom:5px}
.gcfm-tool-result strong{font-size:26px}
.gcfm-tool-result p{grid-column:1/-1;margin:2px 0 0;color:#d5e1e8;font-size:13px}
.gcfm-tool-compare-grid{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:18px;align-items:start}
.gcfm-tool-offer{border:1px solid #e0e8ee;border-radius:12px;padding:18px;background:#f8fbfd}
.gcfm-tool-offer>strong{display:block;margin-bottom:14px;color:#102036}
.gcfm-tool-offer label+label{margin-top:12px}
.gcfm-tool-winner{margin-top:20px;padding:18px;border-radius:12px;background:#eaf9fb;color:#0d6170;font-size:15px;font-weight:800;text-align:center}
.gcfm-info-footer-cta{padding:54px 0 70px;background:#fff}
.gcfm-info-footer-cta-inner{background:linear-gradient(135deg,#eaf9fb 0%,#edf4ff 100%);border:1px solid #d4e5ed;border-radius:18px;padding:34px;display:flex;justify-content:space-between;gap:28px;align-items:center}
.gcfm-info-footer-cta h2{margin:0 0 6px;color:#102036;font-size:28px}
.gcfm-info-footer-cta p{margin:0;color:#647384}

@media (max-width:1024px){
 .gcfm-info-shell{width:min(100% - 40px,960px)}
 .gcfm-info-hero{padding:56px 0}
 .gcfm-info-hero-grid{grid-template-columns:1fr 390px;gap:36px}
 .gcfm-info-hero h1{font-size:40px}
 .gcfm-info-card-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
 .gcfm-info-two-col{gap:34px}
 .gcfm-tool-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
 .gcfm-info-nav .gcfm-info-shell{justify-content:flex-start}
}
@media (max-width:700px){
 .gcfm-info-shell{width:calc(100% - 28px)}
 .gcfm-info-hero{padding:44px 0 34px}
 .gcfm-info-hero-grid{grid-template-columns:1fr;gap:28px}
 .gcfm-info-hero h1{font-size:36px;line-height:1.06;text-align:center}
 .gcfm-info-hero p{text-align:center;font-size:16px;line-height:1.65}
 .gcfm-info-hero .gcfm-info-eyebrow{text-align:center}
 .gcfm-info-actions{flex-direction:column;align-items:stretch}
 .gcfm-info-btn{width:100%}
 .gcfm-info-hero-card{padding:20px}
 .gcfm-info-nav{top:0}
 .admin-bar .gcfm-info-nav{top:0}
 .gcfm-info-nav .gcfm-info-shell{width:100%;padding:0 18px;gap:24px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
 .gcfm-info-nav a{min-height:54px;flex:0 0 auto}
 .gcfm-info-section{padding:52px 0}
 .gcfm-info-heading{margin-bottom:28px}
 .gcfm-info-heading h2,.gcfm-info-two-col h2{font-size:30px}
 .gcfm-info-card-grid-3,.gcfm-info-link-grid,.gcfm-info-guide-grid{grid-template-columns:1fr}
 .gcfm-info-card-grid article{padding:22px}
 .gcfm-info-two-col{grid-template-columns:1fr;gap:26px}
 .gcfm-info-guide-articles article,.gcfm-info-policy-list article{grid-template-columns:42px 1fr;gap:16px;padding:22px}
 .gcfm-info-guide-grid>a{grid-template-columns:42px 1fr auto;padding:18px}
 .gcfm-tool-card{padding:20px}
 .gcfm-tool-fields,.gcfm-tool-compare-grid{grid-template-columns:1fr}
 .gcfm-tool-result{grid-template-columns:1fr}
 .gcfm-tool-result p{grid-column:auto}
 .gcfm-info-footer-cta{padding:42px 0 56px}
 .gcfm-info-footer-cta-inner{padding:26px;display:block;text-align:center}
 .gcfm-info-footer-cta .gcfm-info-actions{margin-top:22px}
 .gcfm-info-inline-links{justify-content:center}
}

/* v4.37 — reusable panel-created CouponFollow-style sections */
.gcfm-custom-section{padding:58px 0;background:#fff}
.gcfm-custom-section:nth-of-type(even){background:var(--gcfm-soft,#eef6fb)}
.gcfm-custom-section-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid #dbe4eb;border-radius:16px;padding:30px 34px;background:rgba(255,255,255,.94);box-shadow:0 8px 26px rgba(25,42,58,.05)}
.gcfm-custom-section-inner>div{max-width:780px}
.gcfm-custom-kicker{display:block;margin-bottom:8px;color:#078da3;font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.gcfm-custom-section h2{margin:0 0 10px;color:#10213b;font-size:30px;line-height:1.15;font-weight:800}
.gcfm-custom-section p{margin:0;color:#5a6675;font-size:16px;line-height:1.6}
.gcfm-custom-button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:7px;background:#122432;color:#fff!important;text-decoration:none!important;font-weight:700}
.gcfm-custom-button:hover,.gcfm-custom-button:focus{color:#fff!important;filter:brightness(1.08)}
@media(max-width:700px){.gcfm-custom-section{padding:32px 0}.gcfm-custom-section-inner{display:block;margin:0 16px;padding:24px 20px;border-radius:14px}.gcfm-custom-section h2{font-size:27px}.gcfm-custom-section p{font-size:15px}.gcfm-custom-button{width:100%;margin-top:20px}}

/* v4.37.7 — Affiliate Disclosure + Get in Touch pages */
.gcfm-support-page{font-family:inherit;color:#0f1f34;background:#fff}
.gcfm-support-hero{background:#eef8fd;padding:72px 0 64px;border-bottom:1px solid #d9e7ef}
.gcfm-support-hero-inner{max-width:1120px}
.gcfm-support-eyebrow{display:block;color:#078ea5;font-size:12px;line-height:1.2;font-weight:800;letter-spacing:1.7px;text-transform:uppercase;margin:0 0 14px}
.gcfm-support-hero h1{font-size:46px;line-height:1.08;letter-spacing:-1.3px;margin:0 0 18px;color:#0f1f34;max-width:820px;font-weight:800}
.gcfm-support-hero p{font-size:18px;line-height:1.7;color:#526273;margin:0;max-width:820px}
.gcfm-support-section{padding:64px 0}
.gcfm-support-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:34px;align-items:start}
.gcfm-support-card,.gcfm-support-form{background:#fff;border:1px solid #d7e4ec;border-radius:16px;padding:30px;box-shadow:0 4px 16px rgba(15,31,52,.04)}
.gcfm-support-card h2{font-size:25px;line-height:1.2;margin:0 0 18px;color:#0f1f34}
.gcfm-support-card p,.gcfm-support-card li{font-size:15.5px;line-height:1.7;color:#526273}
.gcfm-support-card ul{margin:0 0 18px;padding-left:21px}
.gcfm-support-form{display:grid;gap:17px}
.gcfm-support-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gcfm-support-form label{display:grid;gap:7px;font-size:14px;font-weight:700;color:#17283a}
.gcfm-support-form label span{color:#d9485f}.gcfm-support-form label small{font-weight:500;color:#718092}
.gcfm-support-form input,.gcfm-support-form textarea,.gcfm-support-form select{width:100%;border:1px solid #c8d8e3;border-radius:9px;background:#fff;color:#152538;padding:12px 13px;font:inherit;line-height:1.4;outline:none}
.gcfm-support-form input:focus,.gcfm-support-form textarea:focus,.gcfm-support-form select:focus{border-color:#079ab1;box-shadow:0 0 0 3px rgba(7,154,177,.12)}
.gcfm-support-form textarea{resize:vertical;min-height:120px}
.gcfm-support-form button{border:1px solid #112332;border-radius:9px;background:#112332;color:#fff;min-height:48px;padding:0 20px;font-size:14px;font-weight:800;cursor:pointer}
.gcfm-support-form button:hover{transform:translateY(-1px)}
.gcfm-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.gcfm-support-notice{margin-top:26px;border-radius:10px;padding:14px 16px;font-size:14px;font-weight:700}
.gcfm-support-notice-success{background:#eaf8f1;border:1px solid #b7e5cb;color:#17613c}
.gcfm-support-notice-error{background:#fff0f1;border:1px solid #f1c1c7;color:#8c2434}
.gcfm-support-link-list{display:grid;gap:10px;margin:0 0 18px}
.gcfm-support-link-list a{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border:1px solid #d7e4ec;border-radius:9px;text-decoration:none;color:#078ea5;font-weight:800;background:#f9fcfe}
.gcfm-support-policy{display:grid;gap:18px}
.gcfm-support-policy article{display:grid;grid-template-columns:58px minmax(0,1fr);gap:18px;background:#fff;border:1px solid #d7e4ec;border-radius:15px;padding:28px 30px}
.gcfm-support-policy article>span{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:#e8f8fb;color:#078ea5;font-size:12px;font-weight:800}
.gcfm-support-policy h2{margin:0 0 10px;font-size:22px;line-height:1.25;color:#0f1f34}
.gcfm-support-policy p{margin:0;color:#526273;font-size:15.5px;line-height:1.7}
.gcfm-support-policy a{display:inline-block;margin-top:10px;color:#078ea5;text-decoration:none;font-weight:800}
.gcfm-support-cta{background:#eef8fd;padding:34px 0 42px}
.gcfm-support-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #cfe2ec;border-radius:16px;background:#f7fcff;padding:28px 32px}
.gcfm-support-cta-inner span{display:block;color:#078ea5;font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}
.gcfm-support-cta-inner h2{font-size:27px;line-height:1.15;margin:2px 0 3px;color:#0f1f34}
.gcfm-support-cta-inner p{margin:0;color:#526273;font-size:15px}
.gcfm-support-cta-inner>a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:8px;background:#112332;color:#fff;text-decoration:none;font-weight:800;white-space:nowrap}
@media(max-width:800px){
  .gcfm-support-hero{padding:50px 0 44px;text-align:center}
  .gcfm-support-hero h1{font-size:36px;letter-spacing:-.7px}
  .gcfm-support-hero p{font-size:16px}
  .gcfm-support-layout{grid-template-columns:1fr}
  .gcfm-support-section{padding:42px 0}
  .gcfm-support-card,.gcfm-support-form{padding:22px}
  .gcfm-support-form-grid{grid-template-columns:1fr}
  .gcfm-support-policy article{grid-template-columns:1fr;padding:22px}
  .gcfm-support-policy article>span{width:40px;height:40px}
  .gcfm-support-cta-inner{flex-direction:column;align-items:flex-start;padding:24px}
  .gcfm-support-cta-inner>a{width:100%}
}
