:root {
  --gcc-navy: #062a4c;
  --gcc-navy-2: #082c50;
  --gcc-ink: #08264a;
  --gcc-gold: #ff9f0a;
  --gcc-gold-dark: #ec8400;
  --gcc-cream: #fffdf8;
  --gcc-paper: #ffffff;
  --gcc-soft: #fff8ec;
  --gcc-line: #ebe6da;
  --gcc-text: #1f2e43;
  --gcc-muted: #64748b;
  --gcc-green: #16a06b;
  --gcc-container: 1380px;
  --gcc-head: "Arial Black", "Avenir Next", "Segoe UI", Arial, sans-serif;
  --gcc-body: Inter, "Segoe UI", Arial, sans-serif;
  --gcc-radius: 13px;
  --gcc-shadow: 0 16px 42px rgba(6,42,76,.12);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--gcc-cream); color: var(--gcc-text); font-family: var(--gcc-body); font-size: 15px; line-height: 1.5; }
body.gcc-menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
button, input, textarea, select { font: inherit; }
.gcc-container { width: min(calc(100% - 64px), var(--gcc-container)); margin-inline: auto; }
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
.screen-reader-text:focus { clip: auto; clip-path: none; display: block; height: auto; left: 6px; padding: 12px; top: 6px; width: auto; z-index: 999; background: white; }
.gcc-icon { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }

/* Header */
.gcc-header { position: relative; z-index: 50; background: var(--gcc-paper); box-shadow: 0 1px 0 rgba(6,42,76,.04); }
.gcc-utility { color: #e7edf3; background: linear-gradient(100deg, #062441, #07335c); font-size: 12px; }
.gcc-utility__inner { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.gcc-utility__promises, .gcc-utility__nav { display: flex; align-items: center; gap: 11px; }
.gcc-utility__promises span, .gcc-utility__nav a { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.gcc-utility__promises .gcc-icon { width: 15px; height: 15px; color: var(--gcc-gold); }
.gcc-utility i { display: block; width: 1px; height: 13px; background: rgba(255,255,255,.45); }
.gcc-utility__nav a:hover { color: var(--gcc-gold); }
.gcc-main-header { background: #fffefa; }
.gcc-main-header__inner { min-height: 87px; display: grid; grid-template-columns: 250px minmax(270px, 1fr) 290px; align-items: center; gap: 40px; }
.gcc-logo { display: inline-flex; align-items: center; gap: 10px; width: max-content; color: var(--gcc-navy); }
.gcc-logo__book { display: grid; place-items: center; width: 47px; height: 47px; color: var(--gcc-gold); }
.gcc-logo__book .gcc-icon { width: 46px; height: 46px; stroke-width: 1.5; }
.gcc-logo strong { display: block; font-family: var(--gcc-head); font-size: 25px; letter-spacing: -1.7px; line-height: .88; }
.gcc-logo strong span { color: var(--gcc-gold-dark); }
.gcc-logo small { display: block; margin-top: 4px; color: #56647a; font-size: 7px; font-weight: 800; letter-spacing: 1.15px; }
.gcc-logo--image .custom-logo-link { display: inline-flex; align-items: center; }
.gcc-logo--image .custom-logo { max-width: 240px; max-height: 60px; width: auto; }
.gcc-search { height: 43px; display: flex; align-items: center; overflow: hidden; border-radius: 24px; background: #f5f5f3; }
.gcc-search input { min-width: 0; width: 100%; height: 100%; padding: 0 18px; border: 0; outline: none; color: var(--gcc-text); background: transparent; font-size: 12px; }
.gcc-search input::placeholder { color: #7c8490; }
.gcc-search button { display: grid; flex: 0 0 50px; place-items: center; height: 100%; border: 0; color: var(--gcc-navy); background: transparent; cursor: pointer; }
.gcc-search button:hover { color: var(--gcc-gold-dark); }
.gcc-search button .gcc-icon { width: 20px; height: 20px; }
.gcc-header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 22px; }
.gcc-header-action { position: relative; display: flex; align-items: center; gap: 7px; color: #102a4c; }
.gcc-header-action > .gcc-icon { width: 27px; height: 27px; stroke-width: 1.55; }
.gcc-header-action > span:last-child { display: grid; line-height: 1.15; }
.gcc-header-action b { font-size: 11px; font-weight: 800; }
.gcc-header-action small { color: #475569; font-size: 10px; font-weight: 600; }
.gcc-header-action--cart .gcc-cart-count { position: absolute; top: -8px; left: 17px; display: grid; place-items: center; min-width: 17px; height: 17px; padding: 0 4px; border: 2px solid white; border-radius: 50%; color: #542b00; background: var(--gcc-gold); font-size: 9px; font-weight: 900; }
.gcc-mobile-toggle { display: none; width: 41px; height: 41px; padding: 0; border: 1px solid var(--gcc-line); border-radius: 9px; color: var(--gcc-navy); background: white; cursor: pointer; }
.gcc-mobile-toggle i { display: block; width: 19px; height: 2px; margin: 4px auto; border-radius: 2px; background: currentColor; }
.gcc-category-nav { border-top: 1px solid #f1eee7; border-bottom: 1px solid #efebe1; background: white; }
.gcc-category-nav__inner { display: flex; align-items: center; gap: 16px; min-height: 52px; }
.gcc-category-nav__all { display: inline-flex; align-items: center; gap: 8px; padding: 10px 15px; border-radius: 8px; color: white; background: var(--gcc-gold); box-shadow: 0 5px 13px rgba(255,159,10,.23); font-size: 12px; font-weight: 800; white-space: nowrap; }
.gcc-category-nav__all:hover { color: white; background: var(--gcc-gold-dark); }
.gcc-category-nav__links { display: flex; align-items: center; justify-content: space-between; flex: 1; gap: 13px; }
.gcc-category-nav__links a { padding: 17px 2px; color: #14233a; font-size: 12px; font-weight: 750; white-space: nowrap; }
.gcc-category-nav__links a:hover { color: var(--gcc-gold-dark); }
.gcc-mobile-panel { display: none; padding: 13px 0 20px; border-top: 1px solid var(--gcc-line); background: white; }
.gcc-mobile-panel:not([hidden]) { display: block; }
.gcc-mobile-panel .gcc-search { margin-bottom: 12px; }
.gcc-mobile-panel > .gcc-container > a { display: block; padding: 11px 0; border-bottom: 1px solid #f0ede7; font-size: 14px; font-weight: 750; }

/* Generic UI */
.gcc-section { padding: 43px 0; }
.gcc-section-title { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 19px; }
.gcc-section-title h2 { margin: 0; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: 27px; letter-spacing: -1.5px; line-height: 1.12; }
.gcc-section-title p { margin: 4px 0 0; color: #4e5d70; font-size: 13px; }
.gcc-section-title > a { color: #0c2547; font-size: 12px; font-weight: 850; white-space: nowrap; }
.gcc-section-title > a span { margin-left: 6px; color: var(--gcc-gold-dark); font-size: 17px; }
.gcc-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 47px; padding: 0 21px; border: 1px solid transparent; border-radius: 8px; font-size: 14px; font-weight: 850; transition: .2s ease; }
.gcc-btn:hover { transform: translateY(-2px); }
.gcc-btn--primary { color: white; background: linear-gradient(135deg, #ffad17, #ff8c00); box-shadow: 0 8px 17px rgba(255,145,0,.25); }
.gcc-btn--primary:hover { color: white; background: var(--gcc-gold-dark); }
.gcc-btn--outline { border-color: #b9b8b1; color: var(--gcc-ink); background: white; }
.gcc-btn--outline:hover { border-color: var(--gcc-navy); color: var(--gcc-navy); }
.gcc-btn--gold-light { color: var(--gcc-navy); background: #ffd067; }

/* Hero */
.gcc-hero { position: relative; overflow: hidden; min-height: 430px; background: linear-gradient(90deg, #fffaf0 0%, #fffdf7 47%, #f4f6ef 100%); }
.gcc-hero::before { content: ""; position: absolute; z-index: 0; left: 0; right: 0; bottom: 0; height: 6px; background: linear-gradient(90deg, transparent 45%, #ffc665 45%, #ffc665 55%, transparent 55%); opacity: .75; }
.gcc-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(390px, .95fr) minmax(580px, 1.05fr); min-height: 430px; }
.gcc-hero__copy { align-self: center; padding: 45px 0 41px 8px; }
.gcc-hero__eyebrow { display: inline-flex; align-items: center; gap: 7px; margin: 0 0 13px; padding: 5px 11px; border: 1px solid #f0e4cd; border-radius: 20px; color: #a45a08; background: #fffaf0; font-size: 11px; font-weight: 850; letter-spacing: .25px; text-transform: uppercase; }
.gcc-hero__eyebrow span { font-size: 13px; }
.gcc-hero h1 { max-width: 640px; margin: 0; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: clamp(45px, 5vw, 74px); letter-spacing: -4px; line-height: .97; }
.gcc-hero h1 em { color: var(--gcc-gold-dark); font-style: normal; }
.gcc-hero__text { max-width: 550px; margin: 18px 0 0; color: #243247; font-size: 17px; line-height: 1.5; }
.gcc-hero__buttons { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 20px; }
.gcc-hero__trust { display: flex; flex-wrap: wrap; gap: 21px; margin-top: 23px; }
.gcc-hero__trust span { display: inline-flex; align-items: center; gap: 8px; color: #27384d; font-size: 12px; font-weight: 650; }
.gcc-hero__trust .gcc-icon { width: 20px; height: 20px; color: var(--gcc-navy); }
.gcc-hero__visual { position: relative; min-height: 430px; overflow: hidden; }
.gcc-hero__visual picture, .gcc-hero__visual picture img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.gcc-hero-orb { position: absolute; border-radius: 50%; }
.gcc-hero-orb--gold { top: -30px; left: 15%; width: 380px; height: 380px; background: #ffa814; }
.gcc-hero-orb--navy { right: -160px; top: 0; width: 470px; height: 470px; border-radius: 0 0 0 250px; background: var(--gcc-navy); }
.gcc-hero-shelf { position: absolute; z-index: 2; left: 5%; right: 2%; bottom: 49px; height: 270px; }
.gcc-hero-shelf__line { position: absolute; bottom: 0; left: 0; right: 0; height: 17px; border-radius: 5px; background: #e8d5b4; box-shadow: 0 11px 10px rgba(68,47,20,.18); }
.gcc-hero-book { position: absolute; bottom: 15px; display: flex; flex-direction: column; justify-content: space-between; width: 138px; height: 225px; padding: 15px 13px; overflow: hidden; border-radius: 3px 5px 5px 3px; color: white; box-shadow: -7px 13px 14px rgba(7,24,43,.25); font-family: var(--gcc-head); transform-origin: bottom; }
.gcc-hero-book::after { content: ""; position: absolute; right: -38px; bottom: -48px; width: 124px; height: 124px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; box-shadow: 0 0 0 18px rgba(255,255,255,.08); }
.gcc-hero-book small, .gcc-hero-book b, .gcc-hero-book strong, .gcc-hero-book i { position: relative; z-index: 1; }
.gcc-hero-book small { font-size: 8px; letter-spacing: .8px; }.gcc-hero-book b { font-size: 28px; letter-spacing: -2px; }.gcc-hero-book strong { font-size: 13px; line-height: 1.08; }.gcc-hero-book i { font-size: 8px; font-style: normal; font-weight: 700; }
.gcc-hero-book--gpsc { left: 10%; z-index: 4; height: 248px; background: #0f456e; transform: rotate(-2deg); }.gcc-hero-book--gpsc b { font-size: 31px; }.gcc-hero-book--gsssb { left: 31%; z-index: 3; height: 216px; background: #685382; transform: rotate(1deg); }.gcc-hero-book--talati { left: 52%; z-index: 2; height: 204px; background: #e69615; transform: rotate(2deg); }.gcc-hero-book--ca { left: 73%; z-index: 1; height: 191px; background: #1c5574; transform: rotate(4deg); }
.gcc-hero-plant { position: absolute; z-index: 5; bottom: 16px; left: -2%; display: grid; place-items: center; width: 63px; height: 65px; border-radius: 50% 50% 12px 12px; color: #238762; background: #fff; box-shadow: 0 7px 12px rgba(0,0,0,.12); font-size: 33px; }
.gcc-hero-script { position: absolute; z-index: 5; right: 10px; top: 23px; margin: 0; color: white; font-family: cursive; font-size: 23px; font-weight: bold; font-style: italic; line-height: 1.1; transform: rotate(-7deg); }

/* Categories */
.gcc-exam-section { padding-bottom: 24px; }
.gcc-exam-grid { display: grid; grid-template-columns: repeat(8, 1fr); gap: 14px; }
.gcc-exam-card { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 116px; padding: 11px 6px; border: 1px solid #eee7d9; border-radius: 10px; color: var(--gcc-navy); background: linear-gradient(145deg, #fffefa, #fffaf0); text-align: center; transition: .2s ease; }
.gcc-exam-card:hover { color: var(--gcc-navy); border-color: #f3bd55; box-shadow: 0 9px 18px rgba(6,42,76,.1); transform: translateY(-3px); }
/* The WooCommerce category thumbnail is always fully contained: no category artwork is cropped. */
.gcc-exam-card__visual { display: grid; place-items: center; width: 58px; height: 48px; margin-bottom: 8px; color: var(--gcc-navy); }
.gcc-exam-card__image { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }
.gcc-exam-card:nth-child(2n) .gcc-exam-card__visual { color: #6f476f; }.gcc-exam-card:nth-child(3n) .gcc-exam-card__visual { color: #ce7900; }.gcc-exam-card__visual .gcc-icon { width: 29px; height: 29px; stroke-width: 1.65; }
.gcc-exam-card strong { font-size: 12px; line-height: 1.18; }.gcc-exam-card small { margin-top: 2px; font-size: 10px; color: #48566a; }

/* Products */
.gcc-products-section { padding-top: 26px; }
.gcc-products-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; }
.gcc-product-card { overflow: hidden; border: 1px solid #ece8df; border-radius: 10px; background: white; box-shadow: 0 4px 10px rgba(7,39,73,.04); transition: .2s ease; }.gcc-product-card:hover { box-shadow: 0 14px 26px rgba(7,39,73,.12); transform: translateY(-3px); }
.gcc-product-card__image { position: relative; display: grid; place-items: center; height: 180px; overflow: hidden; background: linear-gradient(145deg, #fffdf9, #f5f4ef); }.gcc-product-card__image img { width: 100%; height: 100%; padding: 11px; object-fit: contain; }.gcc-product-card__badge { position: absolute; z-index: 2; top: 10px; left: 10px; padding: 4px 8px; border-radius: 5px; color: white; background: var(--gcc-gold); font-size: 9px; font-weight: 900; }.gcc-product-card__placeholder { display: grid; place-items: center; width: 91px; height: 138px; color: white; background: #113b61; box-shadow: -7px 9px 12px rgba(0,0,0,.18); font: 900 18px/.9 var(--gcc-head); text-align: center; }
.gcc-product-card__body { padding: 11px; }.gcc-product-card h3 { min-height: 39px; margin: 0; color: #152b4c; font-size: 12px; font-weight: 800; line-height: 1.38; }.gcc-product-card h3 a:hover { color: var(--gcc-gold-dark); }.gcc-product-card__rating { margin: 7px 0 2px; color: #f79c09; font-size: 11px; font-weight: 750; }.gcc-product-card__rating small { color: #728096; font-weight: 500; }.gcc-product-card__price { min-height: 25px; color: var(--gcc-navy); font-size: 16px; font-weight: 900; }.gcc-product-card__price del { margin-right: 4px; color: #788396; font-size: 11px; font-weight: 500; }.gcc-product-card__price ins { text-decoration: none; }.gcc-add-to-cart { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 32px; margin-top: 7px; border-radius: 5px; color: white; background: linear-gradient(135deg,#ffa914,#ff8d00); font-size: 11px; font-weight: 850; }.gcc-add-to-cart:hover { color: white; background: var(--gcc-gold-dark); }.gcc-add-to-cart .gcc-icon { width: 15px; height: 15px; }.gcc-add-to-cart--disabled { color: var(--gcc-navy); background: #edf1f5; }.gcc-add-to-cart--disabled:hover { color: var(--gcc-navy); background: #dfe7ed; }
.gcc-admin-hint { display: flex; align-items: center; gap: 14px; padding: 20px; border: 1px dashed #e7c887; border-radius: 10px; background: #fffaf0; }.gcc-admin-hint > span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; color: var(--gcc-navy); background: #ffcc5a; }.gcc-admin-hint p { flex: 1; margin: 0; color: #5e6877; font-size: 13px; }.gcc-admin-hint p b { color: var(--gcc-navy); }

/* Offers */
.gcc-promo-section { padding: 12px 0 28px; }.gcc-promo-grid { display: grid; grid-template-columns: 1.35fr .9fr; gap: 15px; }.gcc-promo { position: relative; min-height: 178px; overflow: hidden; border-radius: 10px; }.gcc-promo > div:first-child { position: relative; z-index: 4; max-width: 295px; padding: 23px 0 18px 27px; }.gcc-promo h2 { margin: 0; font-family: var(--gcc-head); font-size: 29px; letter-spacing: -1.7px; line-height: 1.02; white-space: pre-line; }.gcc-promo p { max-width: 255px; margin: 10px 0 13px; font-size: 13px; line-height: 1.35; }.gcc-promo .gcc-btn { min-height: 33px; padding: 0 13px; border-radius: 6px; font-size: 11px; }.gcc-promo--gpsc { color: white; background: linear-gradient(110deg, #062c53 0%, #0b4874 52%, #f1b447 52%, #ffd378 100%); }.gcc-promo--gpsc::after { content: ""; position: absolute; top: -90px; right: 16%; width: 300px; height: 300px; border: 20px solid rgba(255,255,255,.16); border-radius: 50%; }.gcc-promo--gpsc .gcc-promo__book { position: absolute; z-index: 3; right: 22%; bottom: -4px; display: flex; flex-direction: column; justify-content: space-between; width: 112px; height: 170px; padding: 14px 11px; border-radius: 3px 8px 8px 3px; color: var(--gcc-navy); background: #fff7e7; box-shadow: -8px 11px 17px rgba(0,0,0,.25); font-family: var(--gcc-head); transform: rotate(-8deg); }.gcc-promo__book small,.gcc-promo__book i { font-size: 8px; font-style: normal; font-weight: 700; }.gcc-promo__book b { font-size: 21px; letter-spacing: -1.6px; }.gcc-promo__book strong { font-size: 10px; line-height: 1.05; }.gcc-promo__seal { position: absolute; z-index: 5; right: 12%; bottom: 22px; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; color: var(--gcc-navy); background: #ffc529; font-size: 9px; font-weight: 900; line-height: 1.05; text-align: center; }.gcc-promo--combo { color: var(--gcc-navy); background: linear-gradient(140deg, #fff9eb, #fff4d9); }.gcc-promo--combo h2 { color: var(--gcc-navy); }.gcc-combo-stack { position: absolute; right: 88px; bottom: 25px; width: 115px; height: 77px; }.gcc-combo-stack i { position: absolute; left: 0; right: 0; height: 13px; border-radius: 2px 7px 7px 2px; box-shadow: 0 2px 3px rgba(0,0,0,.14); }.gcc-combo-stack i:nth-child(1){top:0;background:#253f60}.gcc-combo-stack i:nth-child(2){top:14px;background:#d67f19}.gcc-combo-stack i:nth-child(3){top:28px;background:#347a72}.gcc-combo-stack i:nth-child(4){top:42px;background:#8c3a53}.gcc-combo-stack i:nth-child(5){top:56px;background:#dfba6b}.gcc-combo-gift { position: absolute; right: 19px; bottom: 39px; display: grid; place-items: center; width: 49px; height: 49px; border: 1px solid #e0b550; border-radius: 7px; color: var(--gcc-gold-dark); background: #fffdf6; }.gcc-combo-gift .gcc-icon { width: 27px; height: 27px; }

/* Trust/community */
.gcc-why-section { padding-top: 26px; padding-bottom: 23px; }.gcc-why-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }.gcc-why-grid article { display: flex; align-items: center; gap: 9px; min-height: 61px; padding: 9px; border: 1px solid #ece8df; border-radius: 8px; background: white; }.gcc-why-grid article > span { display: grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; color: var(--gcc-gold-dark); }.gcc-why-grid .gcc-icon { width: 27px; height: 27px; }.gcc-whatsapp-mini { color: #1ab45e!important; font-size: 30px; font-weight: 900; }.gcc-why-grid b, .gcc-why-grid small { display: block; line-height: 1.18; }.gcc-why-grid b { color: #132d50; font-size: 11px; }.gcc-why-grid small { margin-top: 2px; color: #67758a; font-size: 9px; }
.gcc-community { padding: 16px 0 25px; }.gcc-community__panel { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 17px 23px; border-radius: 8px; background: linear-gradient(90deg, #eff9f7, #eaf5fb); }.gcc-community h2 { margin: 0; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: 21px; letter-spacing: -1px; }.gcc-community p { margin: 2px 0 0; color: #536276; font-size: 12px; }.gcc-community__links { display: flex; align-items: center; gap: 30px; }.gcc-community__links a { display: flex; align-items: center; gap: 8px; color: var(--gcc-navy); font-size: 12px; font-weight: 800; }.gcc-social { display: grid; place-items: center; width: 33px; height: 33px; border-radius: 10px; color: white; font-size: 22px; font-style: normal; line-height: 1; }.gcc-social--instagram { background: linear-gradient(135deg,#ec3b87,#ff9f25); }.gcc-social--telegram { border-radius: 50%; background: #2aabee; font-size: 17px; }.gcc-social--whatsapp { border-radius: 50%; background: #25d366; font-size: 24px; }
.gcc-whatsapp-float { position: fixed; z-index: 70; right: 22px; bottom: 22px; display: flex; align-items: center; gap: 9px; padding: 8px 15px 8px 9px; border-radius: 50px; color: white; background: #25d366; box-shadow: 0 10px 25px rgba(18,119,59,.32); }.gcc-whatsapp-float:hover { color: white; transform: translateY(-2px); }.gcc-whatsapp-float > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; color: #25d366; background: white; font-size: 29px; font-weight: 900; }.gcc-whatsapp-float em { font-size: 12px; font-style: normal; font-weight: 850; }

/* Footer and Woo fallbacks */
.gcc-site-footer { margin-top: 45px; padding: 46px 0 0; color: #b9c6d3; background: #061f39; }.gcc-site-footer .gcc-logo { color: white; }.gcc-site-footer .gcc-logo small { color: #9eb1c4; }.gcc-site-footer .gcc-logo--image .custom-logo { max-width: 240px; }.gcc-footer__top { display: grid; grid-template-columns: 1.2fr .8fr; gap: 70px; padding-bottom: 35px; }.gcc-brand--footer { color: white; }.gcc-brand--footer .gcc-brand__words span { color: #9fb2c5; }.gcc-footer__brand > p { max-width: 360px; color: #9eb1c4; font-size: 13px; }.gcc-footer__whatsapp { color: #ffd076; font-size: 13px; font-weight: 800; }.gcc-footer__links { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }.gcc-footer__links h2 { margin: 0 0 12px; color: white; font-size: 14px; }.gcc-footer__links a { display: block; margin: 6px 0; color: #a5b7c9; font-size: 12px; }.gcc-footer__bottom { display: flex; justify-content: space-between; padding: 17px 0; border-top: 1px solid rgba(255,255,255,.13); color: #8498ab; font-size: 11px; }.gcc-footer__bottom p { margin: 0; }
.gcc-main { min-height: 55vh; }.gcc-page, .gcc-shop-main { padding: 55px 0 80px; }.gcc-page__shell { max-width: 860px; }.gcc-page__header h1, .gcc-empty-page h1 { color: var(--gcc-navy); font-family: var(--gcc-head); font-size: 43px; letter-spacing: -2px; }.gcc-prose a { color: var(--gcc-gold-dark); text-decoration: underline; }.woocommerce ul.products { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; margin: 0; }.woocommerce ul.products::before,.woocommerce ul.products::after { display:none; }.woocommerce ul.products li.product { width: auto; margin: 0; padding: 12px; border: 1px solid var(--gcc-line); border-radius: 9px; background: white; }.woocommerce ul.products li.product a img { height: 210px; object-fit: contain; margin-bottom: 10px; }.woocommerce ul.products li.product .woocommerce-loop-product__title { color:var(--gcc-navy); font-size:14px; line-height:1.3; }.woocommerce ul.products li.product .price { color:var(--gcc-navy); font-weight:800; }.woocommerce a.button,.woocommerce button.button,.woocommerce input.button { border-radius:6px; color:white; background:var(--gcc-gold); font-weight:800; }.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover { color:white; background:var(--gcc-gold-dark); }.woocommerce div.product .product_title { color:var(--gcc-navy); font-family:var(--gcc-head); letter-spacing:-1.7px; }.woocommerce div.product p.price,.woocommerce div.product span.price { color:var(--gcc-navy); font-weight:900; }

@media (max-width: 1150px) {.gcc-main-header__inner { grid-template-columns: 220px minmax(230px,1fr) 210px; gap: 20px; }.gcc-header-action--account span:last-child { display:none; }.gcc-header-actions{gap:14px}.gcc-category-nav__links{gap:10px}.gcc-category-nav__links a{font-size:11px}.gcc-exam-grid{grid-template-columns:repeat(4,1fr)}.gcc-products-grid{grid-template-columns:repeat(3,1fr)}.gcc-why-grid{grid-template-columns:repeat(3,1fr)}.gcc-hero__grid{grid-template-columns:minmax(360px,.88fr) minmax(480px,1.12fr)}.gcc-hero h1{font-size:clamp(45px,5.8vw,63px)} }
@media (max-width: 800px) {.gcc-container{width:min(calc(100% - 32px),var(--gcc-container))}.gcc-utility__nav{display:none}.gcc-utility__inner{justify-content:center}.gcc-main-header__inner{min-height:69px;grid-template-columns:1fr auto;gap:10px}.gcc-logo__book{width:37px;height:37px}.gcc-logo__book .gcc-icon{width:37px;height:37px}.gcc-logo strong{font-size:20px;letter-spacing:-1.3px}.gcc-logo small{font-size:5.7px;letter-spacing:.85px}.gcc-search:not(.gcc-search--mobile),.gcc-header-action--account{display:none}.gcc-header-actions{gap:8px}.gcc-header-action--cart > span:last-child{display:none}.gcc-header-action--cart .gcc-icon{width:24px;height:24px}.gcc-mobile-toggle{display:block}.gcc-category-nav{display:none}.gcc-hero{min-height:0}.gcc-hero__grid{display:block;min-height:0}.gcc-hero__copy{padding:42px 0 20px}.gcc-hero h1{max-width:580px;font-size:clamp(43px,11vw,64px);letter-spacing:-3px}.gcc-hero__text{font-size:16px}.gcc-hero__trust{gap:9px 15px}.gcc-hero__trust span{font-size:11px}.gcc-hero__visual{min-height:330px;margin:0 -16px}.gcc-hero-orb--gold{left:23%;width:275px;height:275px}.gcc-hero-orb--navy{right:-160px;width:360px;height:360px}.gcc-hero-shelf{left:12%;right:4%;bottom:40px;transform:scale(.82);transform-origin:bottom left}.gcc-hero-script{right:8%;top:22px;font-size:19px}.gcc-section{padding:32px 0}.gcc-section-title h2{font-size:25px}.gcc-exam-grid{grid-template-columns:repeat(4,1fr);gap:9px}.gcc-exam-card{min-height:91px}.gcc-exam-card strong{font-size:11px}.gcc-products-grid{grid-template-columns:repeat(2,1fr);gap:10px}.gcc-product-card__image{height:165px}.gcc-promo-grid{grid-template-columns:1fr}.gcc-promo--combo{min-height:160px}.gcc-why-grid{grid-template-columns:repeat(2,1fr)}.gcc-community__panel{display:block}.gcc-community__links{justify-content:space-between;margin-top:17px;gap:8px}.gcc-community__links a{font-size:10px}.gcc-community__links a span{max-width:72px}.gcc-footer__top{grid-template-columns:1fr;gap:25px}.gcc-footer__bottom{display:block}.gcc-footer__bottom p+p{margin-top:5px}.woocommerce ul.products{grid-template-columns:repeat(2,1fr)} }
@media (max-width: 470px) {.gcc-utility{font-size:10px}.gcc-utility__promises i,.gcc-utility__promises span:last-child{display:none}.gcc-hero__copy{padding-top:34px}.gcc-hero h1{font-size:42px}.gcc-hero__buttons{gap:9px}.gcc-btn{min-height:44px;padding:0 15px;font-size:13px}.gcc-hero__trust{display:grid;grid-template-columns:1fr 1fr}.gcc-hero__trust span:last-child{grid-column:span 2}.gcc-hero__visual{min-height:292px}.gcc-hero-shelf{transform:scale(.65);left:0}.gcc-hero-script{display:none}.gcc-section-title{align-items:flex-start}.gcc-section-title>a{font-size:10px;padding-top:8px}.gcc-exam-grid{grid-template-columns:repeat(2,1fr)}.gcc-exam-card{min-height:102px}.gcc-product-card__image{height:150px}.gcc-product-card h3{font-size:11px}.gcc-product-card__price{font-size:15px}.gcc-admin-hint{align-items:flex-start;flex-wrap:wrap}.gcc-admin-hint .gcc-btn{width:100%}.gcc-promo h2{font-size:26px}.gcc-promo--gpsc .gcc-promo__book{right:12%;transform:scale(.82) rotate(-8deg);transform-origin:bottom right}.gcc-promo__seal{right:5%;bottom:13px}.gcc-combo-stack{right:72px;transform:scale(.85);transform-origin:bottom right}.gcc-why-grid article{min-height:58px}.gcc-whatsapp-float{right:14px;bottom:14px;padding:8px}.gcc-whatsapp-float em{display:none}.gcc-whatsapp-float>span{width:39px;height:39px}.woocommerce ul.products li.product a img{height:160px} }

/* v0.4.1 — Shop/category grid, product detail and cart/checkout refinement */
.gcc-shop-container { width: 100%; }
.gcc-shop-container .woocommerce { width: 100%; }

/* WooCommerce classic archive: reset Woo's float/percentage defaults before using our grid. */
.gcc-shop-container .woocommerce ul.products,
.gcc-shop-container .woocommerce-page ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  clear: both;
}
.gcc-shop-container .woocommerce ul.products::before,
.gcc-shop-container .woocommerce ul.products::after { display: none !important; }
.gcc-shop-container .woocommerce ul.products li.product,
.gcc-shop-container .woocommerce-page ul.products li.product {
  float: none !important;
  clear: none !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
}
.gcc-shop-container .woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
  display: block;
}
.gcc-shop-container .woocommerce ul.products li.product a img {
  width: 100% !important;
  height: 235px !important;
  padding: 10px !important;
  object-fit: contain !important;
}

/* WooCommerce Product Collection block archive: same design, even when Woo uses its block Shop page. */
.gcc-shop-container .wc-block-product-template,
.gcc-shop-container .wc-block-grid__products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}
.gcc-shop-container .wc-block-product-template__product,
.gcc-shop-container .wc-block-grid__product {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 13px !important;
  border: 1px solid var(--gcc-line) !important;
  border-radius: 10px !important;
  background: white !important;
  box-shadow: 0 4px 10px rgba(7,39,73,.04);
}
.gcc-shop-container .wc-block-components-product-image,
.gcc-shop-container .wc-block-grid__product-image {
  display: grid !important;
  place-items: center !important;
  height: 235px !important;
  margin: 0 0 12px !important;
  background: linear-gradient(145deg, #fffdf9, #f5f4ef);
}
.gcc-shop-container .wc-block-components-product-image img,
.gcc-shop-container .wc-block-grid__product-image img {
  width: 100% !important;
  height: 100% !important;
  padding: 10px !important;
  object-fit: contain !important;
}
.gcc-shop-container .wc-block-components-product-title,
.gcc-shop-container .wc-block-grid__product-title {
  min-height: 42px;
  margin: 0 0 7px !important;
  color: var(--gcc-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}
.gcc-shop-container .wc-block-components-product-price,
.gcc-shop-container .wc-block-grid__product-price {
  color: var(--gcc-navy) !important;
  font-size: 16px !important;
  font-weight: 900 !important;
}
.gcc-shop-container .wc-block-components-product-button > a,
.gcc-shop-container .wc-block-grid__product-add-to-cart a {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-height: 35px;
  margin-top: 10px !important;
  border: 0 !important;
  border-radius: 6px !important;
  color: white !important;
  background: linear-gradient(135deg, #ffa914, #ff8d00) !important;
  font-size: 12px !important;
  font-weight: 850 !important;
}

/* Single product: contained gallery, a clean summary column and metadata bullet list. */
.single-product .gcc-shop-container { max-width: 1240px; }
.single-product .gcc-shop-container .woocommerce div.product {
  display: grid;
  grid-template-columns: minmax(0, .93fr) minmax(350px, .77fr);
  align-items: start;
  gap: clamp(32px, 5vw, 72px);
}
.single-product .gcc-shop-container .woocommerce div.product .woocommerce-product-gallery,
.single-product .gcc-shop-container .woocommerce div.product .summary {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}
.single-product .gcc-shop-container .woocommerce-product-gallery {
  max-width: 550px;
  padding: 18px;
  border: 1px solid var(--gcc-line);
  border-radius: 14px;
  background: linear-gradient(145deg, #fffefa, #f8f6ef);
}
.single-product .gcc-shop-container .woocommerce-product-gallery__image a {
  display: grid;
  place-items: center;
  height: min(38vw, 480px);
  min-height: 360px;
}
.single-product .gcc-shop-container .woocommerce-product-gallery__image img {
  width: auto !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 465px !important;
  object-fit: contain !important;
}
.single-product .gcc-shop-container .summary { padding-top: 10px; }
.single-product .gcc-shop-container .summary .product_title { margin-bottom: 18px !important; font-size: clamp(30px, 3vw, 47px) !important; }
.single-product .gcc-shop-container .summary .price { margin-bottom: 19px !important; }
.single-product .gcc-shop-container .summary .stock { color: #4d7e12; font-weight: 700; }
.single-product .gcc-shop-container .summary form.cart { display: flex; align-items: center; gap: 10px; padding: 16px 0 17px; border-top: 1px solid var(--gcc-line); border-bottom: 1px solid var(--gcc-line); }
.single-product .gcc-shop-container .summary form.cart .button { min-height: 46px; padding: 0 20px; }
.single-product .gcc-shop-container .product_meta {
  display: grid;
  gap: 8px;
  margin-top: 20px;
  padding: 15px 17px;
  border-radius: 9px;
  color: #47576b;
  background: #f8fafb;
  font-size: 13px;
}
.single-product .gcc-shop-container .product_meta > span {
  position: relative;
  display: block;
  padding-left: 17px;
}
.single-product .gcc-shop-container .product_meta > span::before {
  content: "•";
  position: absolute;
  left: 0;
  top: -1px;
  color: var(--gcc-gold-dark);
  font-size: 19px;
  font-weight: 900;
}
.single-product .gcc-shop-container .product_meta a { color: var(--gcc-navy); font-weight: 700; }
.single-product .gcc-shop-container .woocommerce-tabs,
.single-product .gcc-shop-container .related,
.single-product .gcc-shop-container .upsells { grid-column: 1 / -1; }

/* Cart and Checkout blocks: a centered readable column on desktop, protected mobile side padding. */
.gcc-commerce-page { padding: 50px 0 85px; }
.gcc-commerce-page .gcc-page__shell { width: min(calc(100% - 64px), 1180px); max-width: 1180px; }
.gcc-commerce-page .gcc-page__content,
.gcc-commerce-page .wp-block-woocommerce-cart,
.gcc-commerce-page .wp-block-woocommerce-checkout,
.gcc-commerce-page .wc-block-cart,
.gcc-commerce-page .wc-block-checkout {
  width: 100% !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.gcc-commerce-page .wc-block-components-sidebar-layout,
.gcc-commerce-page .wc-block-cart__main,
.gcc-commerce-page .wc-block-cart__sidebar,
.gcc-commerce-page .wc-block-checkout__main,
.gcc-commerce-page .wc-block-checkout__sidebar { min-width: 0; }
.gcc-commerce-page .wc-block-cart__submit-container a,
.gcc-commerce-page .wc-block-components-button,
.gcc-commerce-page .wc-block-components-checkout-place-order-button {
  border-radius: 7px !important;
  background: var(--gcc-gold) !important;
  color: white !important;
  font-weight: 850 !important;
}
.gcc-commerce-page .wc-block-cart__submit-container a:hover,
.gcc-commerce-page .wc-block-components-button:hover,
.gcc-commerce-page .wc-block-components-checkout-place-order-button:hover { background: var(--gcc-gold-dark) !important; }

@media (max-width: 900px) {
  .gcc-shop-container .woocommerce ul.products,
  .gcc-shop-container .woocommerce-page ul.products,
  .gcc-shop-container .wc-block-product-template,
  .gcc-shop-container .wc-block-grid__products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .single-product .gcc-shop-container .woocommerce div.product { grid-template-columns: 1fr; gap: 25px; }
  .single-product .gcc-shop-container .woocommerce-product-gallery { max-width: 620px; }
}
@media (max-width: 620px) {
  .gcc-shop-main { padding: 32px 0 60px; }
  .gcc-shop-container .woocommerce ul.products,
  .gcc-shop-container .woocommerce-page ul.products,
  .gcc-shop-container .wc-block-product-template,
  .gcc-shop-container .wc-block-grid__products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
  .gcc-shop-container .woocommerce ul.products li.product,
  .gcc-shop-container .wc-block-product-template__product,
  .gcc-shop-container .wc-block-grid__product { padding: 9px !important; }
  .gcc-shop-container .woocommerce ul.products li.product a img,
  .gcc-shop-container .wc-block-components-product-image,
  .gcc-shop-container .wc-block-grid__product-image { height: 156px !important; }
  .gcc-shop-container .wc-block-components-product-title,
  .gcc-shop-container .wc-block-grid__product-title { min-height: 37px; font-size: 12px !important; }
  .single-product .gcc-shop-container .woocommerce-product-gallery { padding: 10px; }
  .single-product .gcc-shop-container .woocommerce-product-gallery__image a { height: 340px; min-height: 280px; }
  .single-product .gcc-shop-container .summary .product_title { font-size: 31px !important; }
  .single-product .gcc-shop-container .summary form.cart { flex-wrap: wrap; }
  .single-product .gcc-shop-container .summary form.cart .button { flex: 1; }
  .gcc-commerce-page { padding: 32px 0 60px; }
  .gcc-commerce-page .gcc-page__shell { width: min(calc(100% - 30px), 1180px); }
  .gcc-commerce-page .wp-block-woocommerce-cart,
  .gcc-commerce-page .wp-block-woocommerce-checkout,
  .gcc-commerce-page .wc-block-cart,
  .gcc-commerce-page .wc-block-checkout { padding-left: 0 !important; padding-right: 0 !important; }
}

/* v0.4.2 — WooCommerce's columns-3 body selector is loaded after theme styles.
   Match it explicitly and keep every archive grid child full width. */
body.woocommerce-page.columns-3 .gcc-shop-container ul.products li.product,
body.woocommerce.columns-3 .gcc-shop-container ul.products li.product,
body.woocommerce-page .gcc-shop-container ul.products.columns-3 li.product,
body.woocommerce .gcc-shop-container ul.products.columns-3 li.product {
  float: none !important;
  clear: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}
body.woocommerce-page.columns-3 .gcc-shop-container ul.products,
body.woocommerce.columns-3 .gcc-shop-container ul.products,
body.woocommerce-page .gcc-shop-container ul.products.columns-3,
body.woocommerce .gcc-shop-container ul.products.columns-3 {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  width: 100% !important;
  max-width: none !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Do not hide Woo's first gallery slide before FlexSlider assigns its active class. */
.single-product .gcc-shop-container .woocommerce-product-gallery__image {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

@media (max-width: 900px) {
  body.woocommerce-page.columns-3 .gcc-shop-container ul.products,
  body.woocommerce.columns-3 .gcc-shop-container ul.products,
  body.woocommerce-page .gcc-shop-container ul.products.columns-3,
  body.woocommerce .gcc-shop-container ul.products.columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 620px) {
  body.woocommerce-page.columns-3 .gcc-shop-container ul.products,
  body.woocommerce.columns-3 .gcc-shop-container ul.products,
  body.woocommerce-page .gcc-shop-container ul.products.columns-3,
  body.woocommerce .gcc-shop-container ul.products.columns-3 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

/* v0.5.0 — Store-wide UI refinement pass */
/* Product images use a more generous, consistent stage without cropping covers. */
.gcc-product-card__image { height: 220px; }
.gcc-product-card__image img { padding: 14px; object-fit: contain; }
.gcc-shop-container .woocommerce ul.products li.product a img { height: 265px !important; padding: 14px !important; object-fit: contain !important; }
.gcc-shop-container .wc-block-components-product-image,
.gcc-shop-container .wc-block-grid__product-image { height: 265px !important; }

/* Product zoom is deliberately disabled: book covers remain stable on hover. */
.single-product .gcc-shop-container .woocommerce-product-gallery__image a { cursor: default !important; }
.single-product .gcc-shop-container .woocommerce-product-gallery__trigger { display: none !important; }

/* Related and upsell loops need their own override: Woo does not always place
   them inside the archive loop targeted by its columns-3 stylesheet. */
.single-product .gcc-shop-container .related ul.products,
.single-product .gcc-shop-container .upsells ul.products,
.single-product .gcc-shop-container .related .products,
.single-product .gcc-shop-container .upsells .products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.single-product .gcc-shop-container .related ul.products li.product,
.single-product .gcc-shop-container .upsells ul.products li.product,
body.woocommerce-page.columns-3 .single-product .gcc-shop-container .related ul.products li.product,
body.woocommerce-page.columns-3 .single-product .gcc-shop-container .upsells ul.products li.product {
  float: none !important;
  clear: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 12px !important;
}
.single-product .gcc-shop-container .related ul.products li.product a img,
.single-product .gcc-shop-container .upsells ul.products li.product a img { height: 245px !important; }

/* Keep shop and taxonomy content comfortably inset at every viewport size. */
body.post-type-archive-product .gcc-shop-main,
body.tax-product_cat .gcc-shop-main,
body.tax-product_tag .gcc-shop-main { padding-top: 44px; padding-bottom: 82px; }
body.post-type-archive-product .gcc-shop-container,
body.tax-product_cat .gcc-shop-container,
body.tax-product_tag .gcc-shop-container {
  width: min(calc(100% - 88px), var(--gcc-container)) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}
body.post-type-archive-product .gcc-shop-container .woocommerce-result-count,
body.tax-product_cat .gcc-shop-container .woocommerce-result-count,
body.tax-product_tag .gcc-shop-container .woocommerce-result-count { color: var(--gcc-muted); font-size: 13px; }
body.post-type-archive-product .gcc-shop-container .woocommerce-ordering select,
body.tax-product_cat .gcc-shop-container .woocommerce-ordering select,
body.tax-product_tag .gcc-shop-container .woocommerce-ordering select {
  min-height: 38px;
  padding: 0 30px 0 11px;
  border: 1px solid var(--gcc-line);
  border-radius: 7px;
  color: var(--gcc-ink);
  background: #fff;
}
.woocommerce .woocommerce-breadcrumb { margin: 0 0 18px; color: var(--gcc-muted); font-size: 12px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--gcc-navy); font-weight: 700; }
.woocommerce .woocommerce-breadcrumb a:hover { color: var(--gcc-gold-dark); }
.woocommerce .page-title { margin: 0 0 22px; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: clamp(30px, 3.2vw, 45px); letter-spacing: -2px; line-height: 1.08; }
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; margin: 0 3px; }
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li a { min-width: 34px; border: 1px solid var(--gcc-line); border-radius: 6px; color: var(--gcc-navy); background: #fff; font-weight: 800; }
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover { color: #fff; background: var(--gcc-gold); }

/* Reviews are paused: hide any markup saved by older WooCommerce templates. */
.woocommerce .star-rating,
.woocommerce .woocommerce-review-link,
.woocommerce #reviews,
.woocommerce-Tabs-panel--reviews { display: none !important; }

/* My Account: a clear dashboard-style panel rather than WooCommerce defaults. */
.gcc-account-page { padding: 52px 0 88px; }
.gcc-account-page .gcc-page__shell { width: min(calc(100% - 88px), 1160px); max-width: 1160px; }
.gcc-account-page .gcc-page__header { margin-bottom: 24px; }
.gcc-account-page .gcc-page__header h1 { margin: 0; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: clamp(32px, 4vw, 47px); letter-spacing: -2px; }
.gcc-account-page .woocommerce { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 26px; align-items: start; }
.gcc-account-page .woocommerce-MyAccount-navigation,
.gcc-account-page .woocommerce-MyAccount-content { float: none !important; width: auto !important; }
.gcc-account-page .woocommerce-MyAccount-navigation { overflow: hidden; border: 1px solid var(--gcc-line); border-radius: 12px; background: #fff; box-shadow: 0 8px 24px rgba(7,39,73,.05); }
.gcc-account-page .woocommerce-MyAccount-navigation ul { margin: 0; padding: 8px; list-style: none; }
.gcc-account-page .woocommerce-MyAccount-navigation li { margin: 0; }
.gcc-account-page .woocommerce-MyAccount-navigation a { display: block; padding: 12px 13px; border-radius: 7px; color: #30455f; font-size: 13px; font-weight: 800; }
.gcc-account-page .woocommerce-MyAccount-navigation a:hover,
.gcc-account-page .woocommerce-MyAccount-navigation .is-active a { color: var(--gcc-navy); background: #fff3da; }
.gcc-account-page .woocommerce-MyAccount-navigation .is-active a { box-shadow: inset 3px 0 0 var(--gcc-gold); }
.gcc-account-page .woocommerce-MyAccount-content { min-height: 360px; padding: clamp(20px, 3vw, 36px); border: 1px solid var(--gcc-line); border-radius: 12px; background: #fff; box-shadow: 0 8px 24px rgba(7,39,73,.05); }
.gcc-account-page .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.gcc-account-page .woocommerce-MyAccount-content a:not(.button) { color: var(--gcc-gold-dark); font-weight: 750; }
.gcc-account-page .woocommerce-MyAccount-content .woocommerce-Address-title h3,
.gcc-account-page .woocommerce-MyAccount-content h2 { color: var(--gcc-navy); font-family: var(--gcc-head); letter-spacing: -1px; }
.gcc-account-page .woocommerce-MyAccount-content .woocommerce-Address { padding: 17px; border: 1px solid #eee9df; border-radius: 9px; background: #fffdf8; }
.gcc-account-page .woocommerce-MyAccount-content .woocommerce-Address address { color: #566579; font-size: 13px; font-style: normal; line-height: 1.7; }
.gcc-account-page .woocommerce-MyAccount-content .form-row input.input-text,
.gcc-account-page .woocommerce-MyAccount-content .form-row select,
.gcc-account-page .woocommerce-MyAccount-content .form-row textarea { min-height: 43px; border: 1px solid #dce2e7; border-radius: 7px; padding: 9px 11px; background: #fff; }
.gcc-account-page .woocommerce-MyAccount-content .form-row textarea { min-height: 100px; }
.gcc-account-page .woocommerce-MyAccount-content .button { min-height: 42px; padding: 0 16px; border-radius: 7px; color: #fff; background: var(--gcc-gold); font-weight: 850; }
.gcc-account-page .woocommerce-MyAccount-content .button:hover { color: #fff; background: var(--gcc-gold-dark); }
.gcc-account-page .woocommerce table.shop_table { border: 1px solid var(--gcc-line); border-radius: 9px; overflow: hidden; }
.gcc-account-page .woocommerce table.shop_table th { color: var(--gcc-navy); background: #fff8eb; }
.gcc-account-page .woocommerce .woocommerce-info,
.gcc-account-page .woocommerce .woocommerce-message { border-top-color: var(--gcc-gold); background: #fffaf0; }

/* Approved social artwork from the Customizer is shown without recreating its logo in CSS. */
.gcc-social-logo { display: block; width: 100%; height: 100%; padding: 4px; object-fit: contain; background: transparent !important; }
.gcc-social-fallback { display: grid; place-items: center; width: 100%; height: 100%; color: #fff; font-style: normal; font-weight: 900; line-height: 1; }
.gcc-whatsapp-mini .gcc-social-logo { padding: 0; }
.gcc-whatsapp-mini .gcc-social-fallback { color: #1ab45e; }
.gcc-whatsapp-float > span .gcc-social-logo { width: 25px; height: 25px; padding: 0; }
.gcc-whatsapp-float > span .gcc-social-fallback { color: #25d366; font-size: 27px; }
.gcc-whatsapp-float > span { font-size: 0; }

/* Better keyboard orientation through all primary account/shop controls. */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid rgba(255,159,10,.55); outline-offset: 3px; }

@media (max-width: 900px) {
  .single-product .gcc-shop-container .related ul.products,
  .single-product .gcc-shop-container .upsells ul.products,
  .single-product .gcc-shop-container .related .products,
  .single-product .gcc-shop-container .upsells .products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .gcc-account-page .woocommerce { grid-template-columns: 205px minmax(0, 1fr); gap: 18px; }
}
@media (max-width: 620px) {
  .gcc-product-card__image { height: 205px; }
  .gcc-shop-container .woocommerce ul.products li.product a img,
  .gcc-shop-container .wc-block-components-product-image,
  .gcc-shop-container .wc-block-grid__product-image { height: 210px !important; }
  .single-product .gcc-shop-container .related ul.products,
  .single-product .gcc-shop-container .upsells ul.products,
  .single-product .gcc-shop-container .related .products,
  .single-product .gcc-shop-container .upsells .products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
  .single-product .gcc-shop-container .related ul.products li.product,
  .single-product .gcc-shop-container .upsells ul.products li.product { padding: 10px !important; }
  .single-product .gcc-shop-container .related ul.products li.product a img,
  .single-product .gcc-shop-container .upsells ul.products li.product a img { height: 205px !important; }
  body.post-type-archive-product .gcc-shop-main,
  body.tax-product_cat .gcc-shop-main,
  body.tax-product_tag .gcc-shop-main { padding-top: 30px; padding-bottom: 62px; }
  body.post-type-archive-product .gcc-shop-container,
  body.tax-product_cat .gcc-shop-container,
  body.tax-product_tag .gcc-shop-container { width: min(calc(100% - 40px), var(--gcc-container)) !important; }
  .woocommerce .page-title { margin-bottom: 17px; }
  .woocommerce .woocommerce-result-count,
  .woocommerce .woocommerce-ordering { float: none; margin: 0 0 13px; }
  .gcc-account-page { padding: 32px 0 62px; }
  .gcc-account-page .gcc-page__shell { width: min(calc(100% - 32px), 1160px); }
  .gcc-account-page .woocommerce { display: block; }
  .gcc-account-page .woocommerce-MyAccount-navigation { margin-bottom: 15px; }
  .gcc-account-page .woocommerce-MyAccount-navigation ul { display: flex; gap: 4px; overflow-x: auto; padding: 7px; white-space: nowrap; }
  .gcc-account-page .woocommerce-MyAccount-navigation li { flex: 0 0 auto; }
  .gcc-account-page .woocommerce-MyAccount-navigation a { padding: 10px 11px; font-size: 12px; }
  .gcc-account-page .woocommerce-MyAccount-content { min-height: 260px; padding: 20px 16px; }
}

/* v0.5.1 — Corrective single-product layout pass.
   Keep Woo's after-summary sections after the main gallery + product details. */
.single-product .gcc-shop-container {
  width: min(calc(100% - 88px), 1240px) !important;
  max-width: 1240px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}
.single-product .gcc-shop-container .woocommerce div.product > .woocommerce-product-gallery,
.single-product .gcc-shop-container .woocommerce div.product > .summary { order: 1 !important; min-width: 0 !important; }
.single-product .gcc-shop-container .woocommerce div.product > .woocommerce-tabs { order: 2 !important; }
.single-product .gcc-shop-container .woocommerce div.product > .upsells { order: 3 !important; }
.single-product .gcc-shop-container .woocommerce div.product > .related {
  grid-column: 1 / -1 !important;
  order: 4 !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  max-width: none !important;
  margin: 34px 0 0 !important;
}
.single-product .gcc-shop-container .woocommerce div.product > .related > h2,
.single-product .gcc-shop-container .woocommerce div.product > .upsells > h2 {
  margin: 0 0 18px !important;
  color: var(--gcc-navy) !important;
  font-family: var(--gcc-head);
  font-size: clamp(25px, 2.5vw, 34px) !important;
  letter-spacing: -1.4px;
}
/* Avoid excessive white framing around the contained book cover. */
.single-product .gcc-shop-container .woocommerce-product-gallery { padding: 12px !important; }
.single-product .gcc-shop-container .woocommerce-product-gallery__image a { min-width: 0; }

/* A transparent original logo must keep its intended small mark size. */
.gcc-social-logo { width: auto; height: auto; }
.gcc-community__links .gcc-social-logo,
.gcc-community__links .gcc-social-fallback {
  flex: 0 0 33px !important;
  width: 33px !important;
  height: 33px !important;
}
.gcc-whatsapp-mini .gcc-social-logo,
.gcc-whatsapp-mini .gcc-social-fallback { width: 29px !important; height: 29px !important; }

@media (max-width: 620px) {
  .single-product .gcc-shop-main { padding: 22px 0 58px; }
  .single-product .gcc-shop-container { width: min(calc(100% - 40px), 620px) !important; }
  .single-product .gcc-shop-container .woocommerce div.product { gap: 20px !important; }
  .single-product .gcc-shop-container .woocommerce-product-gallery { padding: 7px !important; }
  .single-product .gcc-shop-container .woocommerce-product-gallery__image a { height: min(88vw, 330px) !important; min-height: 0 !important; }
  .single-product .gcc-shop-container .woocommerce div.product > .related { margin-top: 25px !important; }
}

/* v0.5.2 — Related products are printed after Woo's main product grid. */
.single-product .gcc-shop-container > .related,
.single-product .gcc-shop-container .woocommerce > .related {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 42px 0 0 !important;
  padding: 26px 0 0 !important;
  border-top: 1px solid var(--gcc-line);
  clear: both !important;
}
.single-product .gcc-shop-container > .related > h2,
.single-product .gcc-shop-container .woocommerce > .related > h2 {
  display: block !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  color: var(--gcc-navy) !important;
  font-family: var(--gcc-head);
  font-size: clamp(25px, 2.5vw, 34px) !important;
  letter-spacing: -1.4px;
  line-height: 1.15;
}
.single-product .gcc-shop-container > .related > ul.products,
.single-product .gcc-shop-container .woocommerce > .related > ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.single-product .gcc-shop-container > .related > ul.products > li.product,
.single-product .gcc-shop-container .woocommerce > .related > ul.products > li.product {
  float: none !important;
  clear: none !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
}

@media (max-width: 620px) {
  /* Let the actual cover use the available small-screen image stage. */
  .gcc-product-card__image img { padding: 6px !important; }
  .gcc-shop-container .woocommerce ul.products li.product a img,
  .gcc-shop-container .wc-block-components-product-image img,
  .gcc-shop-container .wc-block-grid__product-image img { padding: 6px !important; }
  .single-product .gcc-shop-container .woocommerce-product-gallery { padding: 3px !important; }
  .single-product .gcc-shop-container > .related,
  .single-product .gcc-shop-container .woocommerce > .related { margin-top: 28px !important; padding-top: 20px !important; }
  .single-product .gcc-shop-container > .related > ul.products,
  .single-product .gcc-shop-container .woocommerce > .related > ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
}

/* v0.5.3 — Use the real Woo single-product container, not a non-existent
   descendant .woocommerce wrapper. This contains the columns and keeps the
   footer and Related products below the main product. */
.single-product .gcc-shop-container div.product {
  display: grid !important;
  grid-template-columns: minmax(0, .93fr) minmax(350px, .77fr) !important;
  align-items: start !important;
  gap: clamp(32px, 5vw, 72px) !important;
  width: 100% !important;
  margin: 0 !important;
}
.single-product .gcc-shop-container div.product > .woocommerce-product-gallery,
.single-product .gcc-shop-container div.product > .summary {
  order: 1 !important;
  float: none !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
}
.single-product .gcc-shop-container div.product > .woocommerce-tabs,
.single-product .gcc-shop-container div.product > .upsells,
.single-product .gcc-shop-container div.product > .related {
  grid-column: 1 / -1 !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  max-width: none !important;
}
.single-product .gcc-shop-container div.product > .woocommerce-tabs { order: 2 !important; }
.single-product .gcc-shop-container div.product > .upsells { order: 3 !important; }
.single-product .gcc-shop-container div.product > .related {
  order: 4 !important;
  display: block !important;
  margin: 36px 0 0 !important;
  padding: 26px 0 0 !important;
  border-top: 1px solid var(--gcc-line);
}
.single-product .gcc-shop-container div.product > .related > h2 {
  display: block !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  color: var(--gcc-navy) !important;
  font-family: var(--gcc-head);
  font-size: clamp(25px, 2.5vw, 34px) !important;
  letter-spacing: -1.4px;
  line-height: 1.15;
}
.single-product .gcc-shop-container div.product > .related > ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.single-product .gcc-shop-container div.product > .related > ul.products > li.product {
  float: none !important;
  clear: none !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
}

@media (max-width: 900px) {
  .single-product .gcc-shop-container div.product { grid-template-columns: 1fr !important; gap: 25px !important; }
}
@media (max-width: 620px) {
  .single-product .gcc-shop-container div.product { gap: 20px !important; }
  .single-product .gcc-shop-container div.product > .related { margin-top: 25px !important; padding-top: 20px !important; }
  .single-product .gcc-shop-container div.product > .related > ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
}

/* v0.5.4 — informational pages and native contact form */
.gcc-info-narrow { width: min(100%, 920px); }
.gcc-info-hero { position: relative; overflow: hidden; padding: 78px 0; color: white; background: linear-gradient(125deg, #06213d 0%, #083d6b 65%, #0d5e80 100%); }
.gcc-info-hero::before, .gcc-info-hero::after { content: ""; position: absolute; border-radius: 50%; pointer-events: none; }
.gcc-info-hero::before { width: 400px; height: 400px; top: -240px; right: 5%; border: 55px solid rgba(255,180,34,.16); }
.gcc-info-hero::after { width: 240px; height: 240px; bottom: -160px; left: 14%; background: rgba(255,255,255,.045); }
.gcc-info-hero > .gcc-container { position: relative; z-index: 1; }
.gcc-info-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) 245px; align-items: center; gap: 65px; }
.gcc-info-hero h1 { max-width: 790px; margin: 8px 0 15px; color: white; font-family: var(--gcc-head); font-size: clamp(38px, 5.2vw, 66px); letter-spacing: -3.1px; line-height: 1.02; }
.gcc-info-hero p:not(.gcc-info-kicker) { max-width: 690px; margin: 0; color: #dce9f4; font-size: 17px; line-height: 1.6; }
.gcc-info-hero--compact { padding: 63px 0; }
.gcc-info-hero--compact h1 { max-width: 780px; font-size: clamp(34px, 4.5vw, 54px); }
.gcc-info-kicker { margin: 0; color: #ffc35a; font-size: 11px; font-weight: 900; letter-spacing: 1.3px; line-height: 1.3; text-transform: uppercase; }
.gcc-info-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 25px; }
.gcc-btn--outline-light { border-color: rgba(255,255,255,.65); color: white; background: transparent; }
.gcc-btn--outline-light:hover { border-color: white; color: var(--gcc-navy); background: white; }
.gcc-about-mark { display: grid; place-items: center; align-content: center; width: 228px; height: 228px; margin-left: auto; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; color: white; background: radial-gradient(circle at 35% 25%, rgba(255,207,102,.98), #f6a300 36%, #d77f00 100%); box-shadow: 0 20px 35px rgba(0,0,0,.2), inset 0 0 0 12px rgba(255,255,255,.12); }
.gcc-about-mark span { display: grid; place-items: center; width: 67px; height: 67px; margin-bottom: 4px; border-radius: 50%; color: var(--gcc-navy); background: #fff7df; }
.gcc-about-mark .gcc-icon { width: 36px; height: 36px; }
.gcc-about-mark b { font: 900 37px/.85 var(--gcc-head); letter-spacing: -2px; }.gcc-about-mark small { margin-top: 5px; font-size: 10px; font-weight: 900; letter-spacing: 2px; }
.gcc-info-section { padding: 72px 0; }.gcc-info-section--soft { background: #f7f4ed; }
.gcc-info-heading h2 { max-width: 780px; margin: 7px 0 0; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: clamp(28px, 3.6vw, 42px); letter-spacing: -2px; line-height: 1.1; }
.gcc-info-heading > p:not(.gcc-info-kicker) { max-width: 650px; margin: 12px 0 0; color: #58687b; font-size: 15px; }
.gcc-info-lead { max-width: 800px; margin: 18px 0 0; color: #31445d; font-size: 17px; line-height: 1.65; }
.gcc-value-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; margin-top: 31px; }.gcc-value-grid article { padding: 26px 23px; border: 1px solid #e7e4dc; border-radius: 12px; background: white; box-shadow: 0 8px 21px rgba(6,42,76,.04); }.gcc-value-grid article > span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 9px; color: var(--gcc-navy); background: #fff1d4; }.gcc-value-grid .gcc-icon { width: 24px; height: 24px; }.gcc-value-grid h3 { margin: 16px 0 7px; color: var(--gcc-navy); font-size: 16px; }.gcc-value-grid p { margin: 0; color: #5c6b7d; font-size: 13px; line-height: 1.55; }
.gcc-steps { display: grid; gap: 0; padding: 0; margin: 30px 0 0; list-style: none; }.gcc-steps li { display: grid; grid-template-columns: 64px minmax(0,1fr); gap: 17px; padding: 19px 0; border-top: 1px solid #dedbd3; }.gcc-steps li:last-child { border-bottom: 1px solid #dedbd3; }.gcc-steps span { color: var(--gcc-gold-dark); font: 900 22px/1 var(--gcc-head); }.gcc-steps b { color: var(--gcc-navy); font-size: 16px; }.gcc-steps p { margin: 4px 0 0; color: #59697c; font-size: 14px; }
.gcc-info-cta { padding: 50px 0; color: white; background: linear-gradient(110deg, #06213e, #093c67); }.gcc-info-cta > .gcc-container { display: flex; align-items: center; justify-content: space-between; gap: 26px; }.gcc-info-cta h2 { margin: 7px 0 0; font-family: var(--gcc-head); font-size: clamp(28px, 3.2vw, 39px); letter-spacing: -1.8px; line-height: 1.1; }
.gcc-contact-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }.gcc-contact-card { display: flex; gap: 15px; min-height: 190px; padding: 23px 20px; border: 1px solid #e7e3d9; border-radius: 12px; color: var(--gcc-text); background: white; box-shadow: 0 7px 18px rgba(6,42,76,.04); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }.gcc-contact-card:hover { color: var(--gcc-text); border-color: #ecc26b; box-shadow: 0 12px 25px rgba(6,42,76,.11); transform: translateY(-3px); }.gcc-contact-card__icon { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; border-radius: 9px; color: var(--gcc-navy); background: #fff0d2; }.gcc-contact-card__icon .gcc-icon { width: 20px; height: 20px; }.gcc-contact-card__icon--whatsapp { color: white; background: #23bd63; font-size: 24px; }.gcc-contact-card__icon--telegram { border-radius: 50%; color: white; background: #2aabee; font-size: 19px; }.gcc-contact-card small { color: #8a7454; font-size: 9px; font-weight: 900; letter-spacing: .8px; }.gcc-contact-card h2 { margin: 4px 0 4px; color: var(--gcc-navy); font-size: 18px; }.gcc-contact-card p { min-height: 39px; margin: 0; color: #617084; font-size: 12px; line-height: 1.5; }.gcc-contact-card b { display: block; margin-top: 12px; color: var(--gcc-gold-dark); font-size: 12px; }
.gcc-contact-form-wrap { padding: 32px; border: 1px solid #e5e0d5; border-radius: 14px; background: white; box-shadow: 0 12px 28px rgba(6,42,76,.06); }.gcc-contact-form { margin-top: 25px; }.gcc-contact-form p { margin: 0 0 16px; }.gcc-contact-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; }.gcc-contact-form label { display: block; margin-bottom: 7px; color: var(--gcc-navy); font-size: 12px; font-weight: 800; }.gcc-contact-form label em { color: #c54d36; font-style: normal; }.gcc-contact-form input:not([type="hidden"]),.gcc-contact-form textarea { width: 100%; border: 1px solid #d8dce0; border-radius: 7px; outline: 0; color: var(--gcc-text); background: #fffefa; transition: border-color .2s ease, box-shadow .2s ease; }.gcc-contact-form input:not([type="hidden"]) { height: 45px; padding: 0 12px; }.gcc-contact-form textarea { display: block; padding: 12px; resize: vertical; }.gcc-contact-form input:focus,.gcc-contact-form textarea:focus { border-color: #eaa72f; box-shadow: 0 0 0 3px rgba(255,159,10,.16); }.gcc-form-honeypot { position: absolute!important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); white-space: nowrap; }.gcc-form-notice { margin-top: 21px; padding: 12px 14px; border-radius: 7px; font-size: 13px; font-weight: 650; }.gcc-form-notice--success { border: 1px solid #94d2b0; color: #12613a; background: #edfff4; }.gcc-form-notice--error { border: 1px solid #f2b3a8; color: #992d20; background: #fff2f0; }
.gcc-policy-content { color: #3f5065; font-size: 15px; line-height: 1.7; }.gcc-policy-content > p { margin: 0 0 24px; }.gcc-policy-content h2 { margin: 34px 0 10px; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: 24px; letter-spacing: -1px; line-height: 1.2; }.gcc-policy-content ul { padding-left: 21px; margin: 0; }.gcc-policy-content li { margin: 7px 0; }.gcc-policy-content a { color: var(--gcc-gold-dark); font-weight: 700; text-decoration: underline; }.gcc-policy-note { margin-bottom: 24px; padding: 14px 17px; border-left: 4px solid var(--gcc-gold); border-radius: 0 8px 8px 0; color: #68542c; background: #fff8e9; font-size: 13px; line-height: 1.55; }.gcc-policy-editor-content { margin-top: 28px; padding-top: 5px; border-top: 1px solid var(--gcc-line); }
@media (max-width: 800px) { .gcc-info-hero { padding: 56px 0; }.gcc-info-hero__grid { grid-template-columns: 1fr; gap: 30px; }.gcc-about-mark { width: 170px; height: 170px; margin: 0; }.gcc-about-mark b { font-size: 28px; }.gcc-info-section { padding: 48px 0; }.gcc-value-grid, .gcc-contact-grid { grid-template-columns: 1fr; }.gcc-contact-card { min-height: 0; }.gcc-info-cta > .gcc-container { display: block; }.gcc-info-cta .gcc-info-actions { margin-top: 20px; }.gcc-contact-form-wrap { padding: 25px; } }
@media (max-width: 520px) { .gcc-info-hero { padding: 45px 0; }.gcc-info-hero--compact { padding: 42px 0; }.gcc-info-hero h1 { letter-spacing: -2px; }.gcc-info-hero p:not(.gcc-info-kicker) { font-size: 15px; }.gcc-info-actions { display: grid; grid-template-columns: 1fr; }.gcc-info-actions .gcc-btn { width: 100%; }.gcc-info-section { padding: 39px 0; }.gcc-value-grid article { padding: 21px 18px; }.gcc-steps li { grid-template-columns: 47px minmax(0,1fr); gap: 10px; }.gcc-steps span { font-size: 18px; }.gcc-contact-form-wrap { padding: 20px 16px; }.gcc-contact-form__row { grid-template-columns: 1fr; gap: 0; }.gcc-contact-card { padding: 20px 16px; }.gcc-policy-content h2 { font-size: 22px; } }

/* v0.5.5 — administrator-uploaded offer banners */
.gcc-promo--custom { min-height: 0; padding: 0; }
.gcc-promo--custom.gcc-promo--gpsc { aspect-ratio: 1600 / 375; }
.gcc-promo--custom.gcc-promo--combo { aspect-ratio: 1200 / 420; }
.gcc-promo__image-link { position: absolute; inset: 0; display: block; overflow: hidden; border-radius: inherit; }
.gcc-promo__image-link img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.gcc-promo__image-link:focus-visible { outline: 3px solid var(--gcc-gold); outline-offset: -3px; }
@media (max-width: 800px) {
  .gcc-promo--custom.gcc-promo--gpsc { aspect-ratio: 1600 / 375; }
  .gcc-promo--custom.gcc-promo--combo { aspect-ratio: 1200 / 420; }
}

/* v0.5.6 — live WooCommerce category directory */
.gcc-category-directory-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 27px; }
.gcc-category-directory-heading h2 { max-width: 790px; margin: 7px 0 0; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: clamp(28px, 3.6vw, 42px); letter-spacing: -2px; line-height: 1.1; }
.gcc-category-directory { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.gcc-category-directory__card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #e4e3df; border-radius: 13px; background: white; box-shadow: 0 8px 22px rgba(6,42,76,.05); }
.gcc-category-directory__top { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 16px; align-items: start; padding: 23px 23px 17px; }
.gcc-category-directory__mark { display: grid; place-items: center; width: 58px; height: 58px; overflow: hidden; border: 1px solid #f1d8a1; border-radius: 12px; color: var(--gcc-navy); background: #fff4dc; }
.gcc-category-directory__mark img { width: 100%; height: 100%; object-fit: cover; }.gcc-category-directory__mark .gcc-icon { width: 29px; height: 29px; }
.gcc-category-directory__top h2 { margin: 0; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: 22px; letter-spacing: -1px; line-height: 1.1; }.gcc-category-directory__top h2 a:hover { color: var(--gcc-gold-dark); }
.gcc-category-directory__top p { margin: 7px 0 0; color: #637287; font-size: 13px; line-height: 1.5; }
.gcc-category-directory__meta { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 23px; border-top: 1px solid #f0eee9; border-bottom: 1px solid #f0eee9; color: #64748b; font-size: 12px; }.gcc-category-directory__meta a { color: var(--gcc-gold-dark); font-weight: 850; white-space: nowrap; }
.gcc-category-directory__children { flex: 1; padding: 18px 23px 22px; background: #fffdf9; }.gcc-category-directory__children h3 { margin: 0 0 11px; color: #536277; font-size: 11px; font-weight: 900; letter-spacing: .8px; text-transform: uppercase; }.gcc-category-directory__children ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 0; margin: 0; list-style: none; }.gcc-category-directory__children a { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-width: 0; padding: 9px 10px; border: 1px solid #ebe8e0; border-radius: 7px; color: #263c57; background: white; font-size: 12px; line-height: 1.3; transition: border-color .2s ease, transform .2s ease; }.gcc-category-directory__children a:hover { border-color: #eeb349; color: var(--gcc-navy); transform: translateY(-1px); }.gcc-category-directory__children a span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.gcc-category-directory__children small { flex: 0 0 auto; color: #8591a0; font-size: 10px; }
.gcc-category-directory__empty { padding: 56px 30px; border: 1px dashed #d7c895; border-radius: 13px; color: #596b80; background: #fffaf0; text-align: center; }.gcc-category-directory__empty > span { display: grid; place-items: center; width: 54px; height: 54px; margin: 0 auto 13px; border-radius: 50%; color: var(--gcc-navy); background: #ffd46d; }.gcc-category-directory__empty .gcc-icon { width: 28px; height: 28px; }.gcc-category-directory__empty h2 { margin: 0; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: 27px; letter-spacing: -1px; }.gcc-category-directory__empty p { margin: 7px auto 18px; max-width: 440px; }
@media (max-width: 800px) { .gcc-category-directory { grid-template-columns: 1fr; }.gcc-category-directory-heading { align-items: flex-start; flex-direction: column; }.gcc-category-directory-heading .gcc-btn { margin-top: -10px; } }
@media (max-width: 500px) { .gcc-category-directory__top { grid-template-columns: 48px minmax(0,1fr); gap: 12px; padding: 19px 16px 15px; }.gcc-category-directory__mark { width: 48px; height: 48px; }.gcc-category-directory__top h2 { font-size: 20px; }.gcc-category-directory__meta { padding: 12px 16px; }.gcc-category-directory__children { padding: 16px; }.gcc-category-directory__children ul { grid-template-columns: 1fr; } }

/* v0.5.7 — classic five-field checkout and resilient mobile WhatsApp support */
.gcc-commerce-page .woocommerce form.checkout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(310px, 380px); column-gap: 34px; align-items: start; width: 100%; }
.gcc-commerce-page .woocommerce form.checkout .col2-set { float: none; grid-column: 1; grid-row: 1 / span 2; width: auto; margin: 0; }
.gcc-commerce-page .woocommerce form.checkout .col-1,
.gcc-commerce-page .woocommerce form.checkout .col-2 { float: none; width: auto; }
.gcc-commerce-page .woocommerce form.checkout .col-2 { display: none; }
.gcc-commerce-page .woocommerce form.checkout h3 { margin: 0 0 18px; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: 28px; letter-spacing: -1.2px; }
.gcc-commerce-page .woocommerce form.checkout .woocommerce-billing-fields__field-wrapper { padding: 23px; border: 1px solid #e4e3dc; border-radius: 11px; background: #fff; box-shadow: 0 5px 15px rgba(6,42,76,.04); }
.gcc-commerce-page .woocommerce form.checkout .form-row { float: none; width: 100%; margin: 0 0 17px; padding: 0; }
.gcc-commerce-page .woocommerce form.checkout .form-row:last-child { margin-bottom: 0; }
.gcc-commerce-page .woocommerce form.checkout .form-row label { display: block; margin: 0 0 7px; color: var(--gcc-navy); font-size: 13px; font-weight: 800; }
.gcc-commerce-page .woocommerce form.checkout .form-row .required { color: #c64034; }
.gcc-commerce-page .woocommerce form.checkout .form-row input.input-text,
.gcc-commerce-page .woocommerce form.checkout .form-row textarea { width: 100%; min-height: 47px; padding: 11px 13px; border: 1px solid #ced6df; border-radius: 7px; outline: 0; color: #1f2e43; background: #fffefa; box-shadow: none; font-size: 14px; line-height: 1.45; transition: border-color .2s ease, box-shadow .2s ease; }
.gcc-commerce-page .woocommerce form.checkout .form-row textarea { display: block; min-height: 132px; resize: vertical; }
.gcc-commerce-page .woocommerce form.checkout .form-row input.input-text:focus,
.gcc-commerce-page .woocommerce form.checkout .form-row textarea:focus { border-color: #eaa72f; box-shadow: 0 0 0 3px rgba(255,159,10,.16); }
.gcc-commerce-page .woocommerce form.checkout .form-row .description { display: block; margin: 7px 0 0; color: #637287; font-size: 12px; line-height: 1.45; }
.gcc-commerce-page .woocommerce form.checkout #order_review_heading { grid-column: 2; grid-row: 1; margin-top: 0; }
.gcc-commerce-page .woocommerce form.checkout #order_review { grid-column: 2; grid-row: 2; padding: 20px; border: 1px solid #e3e0d8; border-radius: 11px; background: #fff; box-shadow: 0 6px 17px rgba(6,42,76,.05); }
.gcc-commerce-page .woocommerce form.checkout .woocommerce-checkout-review-order-table { margin: 0 0 18px; border-collapse: collapse; font-size: 13px; }.gcc-commerce-page .woocommerce form.checkout .woocommerce-checkout-review-order-table th,.gcc-commerce-page .woocommerce form.checkout .woocommerce-checkout-review-order-table td { padding: 11px 4px; border-color: #eae7de; }.gcc-commerce-page .woocommerce form.checkout .woocommerce-checkout-review-order-table thead th { color: var(--gcc-navy); }.gcc-commerce-page .woocommerce form.checkout .woocommerce-checkout-payment { margin: 0 -20px -20px; padding: 18px 20px 20px; border-radius: 0 0 11px 11px; background: #f9f8f4; }.gcc-commerce-page .woocommerce form.checkout .wc_payment_methods { padding: 0; margin: 0 0 14px; border: 0; list-style: none; }.gcc-commerce-page .woocommerce form.checkout .wc_payment_method { padding: 12px; border: 1px solid #e1ded7; border-radius: 7px; background: white; }.gcc-commerce-page .woocommerce form.checkout .payment_box { margin: 10px 0 0!important; border-radius: 7px; background: #eef5fa!important; font-size: 12px; }.gcc-commerce-page .woocommerce form.checkout .payment_box::before { border-bottom-color: #eef5fa!important; }.gcc-commerce-page .woocommerce form.checkout #place_order { float: none; width: 100%; min-height: 49px; margin: 14px 0 0; border-radius: 7px; color: white; background: linear-gradient(135deg,#ffa914,#ff8d00); font-size: 14px; font-weight: 850; }.gcc-commerce-page .woocommerce form.checkout #place_order:hover { background: var(--gcc-gold-dark); }
.gcc-commerce-page .woocommerce form.checkout .woocommerce-NoticeGroup-checkout { grid-column: 1 / -1; }.gcc-commerce-page .woocommerce form.checkout .woocommerce-error { margin: 0 0 18px; border-top-color: #c64034; }.gcc-commerce-page .woocommerce form.checkout .woocommerce-invalid input.input-text,.gcc-commerce-page .woocommerce form.checkout .woocommerce-invalid textarea { border-color: #d65a4e; }
.gcc-order-delivery-estimate { max-width: 760px; margin: 25px auto; padding: 22px 25px; border-left: 5px solid var(--gcc-gold); border-radius: 9px; color: #33465e; background: #fff7e7; text-align: center; }.gcc-order-delivery-estimate p { margin: 0; color: #8a642b; font-size: 12px; font-weight: 850; letter-spacing: .5px; text-transform: uppercase; }.gcc-order-delivery-estimate strong { display: block; margin: 5px 0; color: var(--gcc-navy); font: 900 26px/1.2 var(--gcc-head); letter-spacing: -1px; }.gcc-order-delivery-estimate span { font-size: 12px; }
body .gcc-whatsapp-float { z-index: 99999; }
@media (max-width: 800px) { .gcc-commerce-page .woocommerce form.checkout { display: block; }.gcc-commerce-page .woocommerce form.checkout .col2-set { width: 100%; }.gcc-commerce-page .woocommerce form.checkout #order_review_heading { margin-top: 28px; }.gcc-commerce-page .woocommerce form.checkout #order_review { padding: 16px; }.gcc-commerce-page .woocommerce form.checkout .woocommerce-billing-fields__field-wrapper { padding: 18px 15px; }.gcc-commerce-page .woocommerce form.checkout .woocommerce-checkout-payment { margin: 0 -16px -16px; padding: 16px; }.gcc-commerce-page .woocommerce form.checkout h3 { font-size: 25px; } body .gcc-whatsapp-float { position: fixed!important; right: max(14px, env(safe-area-inset-right))!important; bottom: max(14px, env(safe-area-inset-bottom))!important; display: flex!important; visibility: visible!important; opacity: 1!important; pointer-events: auto!important; } }

/* v0.5.8 — checkout notices, account panels, mobile support action and hero slider */
.gcc-commerce-page .woocommerce form.checkout .form-row .description,
.gcc-commerce-page .woocommerce form.checkout .woocommerce-input-wrapper > .description {
  display: block !important;
  margin: 8px 0 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #eed49c !important;
  border-left: 4px solid var(--gcc-gold) !important;
  border-radius: 0 7px 7px 0 !important;
  color: #5b4a2e !important;
  background: #fff7e6 !important;
  font-size: 12px !important;
  font-style: normal !important;
  line-height: 1.5 !important;
  text-shadow: none !important;
}
.gcc-commerce-page .woocommerce .woocommerce-info,
.gcc-commerce-page .woocommerce .woocommerce-message,
.gcc-account-page .woocommerce .woocommerce-info,
.gcc-account-page .woocommerce .woocommerce-message {
  min-height: 0;
  margin: 0 0 20px;
  padding: 17px 18px 17px 48px;
  border: 1px solid #ead9ad;
  border-top: 3px solid var(--gcc-gold);
  border-radius: 9px;
  color: #45566c;
  background: #fffaf0;
  box-shadow: none;
  font-size: 13px;
  line-height: 1.55;
}
.gcc-commerce-page .woocommerce .woocommerce-info::before,
.gcc-commerce-page .woocommerce .woocommerce-message::before,
.gcc-account-page .woocommerce .woocommerce-info::before,
.gcc-account-page .woocommerce .woocommerce-message::before { left: 17px; color: var(--gcc-gold-dark); }
.gcc-commerce-page .woocommerce .woocommerce-info a,
.gcc-account-page .woocommerce .woocommerce-info a { color: var(--gcc-navy); font-weight: 800; }
.gcc-commerce-page .woocommerce .woocommerce-form-coupon-toggle .woocommerce-info { margin-bottom: 13px; }
.gcc-commerce-page .woocommerce form.checkout_coupon { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; margin: 0 0 24px; padding: 16px; border: 1px solid #e5e1d8; border-radius: 9px; background: #fff; }
.gcc-commerce-page .woocommerce form.checkout_coupon p { float: none; width: auto; margin: 0; }.gcc-commerce-page .woocommerce form.checkout_coupon p:first-child { display: none; }.gcc-commerce-page .woocommerce form.checkout_coupon .form-row-first { flex: 1 1 200px; }.gcc-commerce-page .woocommerce form.checkout_coupon input.input-text { width: 100%; min-height: 42px; padding: 9px 11px; border: 1px solid #ced6df; border-radius: 6px; }.gcc-commerce-page .woocommerce form.checkout_coupon .button { min-height: 42px; border-radius: 6px; }
.gcc-account-page .woocommerce-MyAccount-content .woocommerce-info .button,
.gcc-account-page .woocommerce-MyAccount-content .woocommerce-message .button { float: none; display: inline-flex; align-items: center; justify-content: center; margin: 10px 0 0; white-space: normal; text-align: center; }
.gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table { overflow: hidden; border: 1px solid var(--gcc-line); border-radius: 9px; }.gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table td,.gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table th { padding: 12px 9px; vertical-align: middle; }.gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table .button { float: none; min-height: 38px; padding: 8px 12px; line-height: 1.2; }
.gcc-wc-out-of-stock,
.gcc-add-to-cart--out-of-stock { display: flex; align-items: center; justify-content: center; min-height: 32px; margin-top: 7px; border: 0!important; border-radius: 5px; color: #637287!important; background: #edf0f3!important; font-size: 11px!important; font-weight: 850!important; cursor: not-allowed; }
.gcc-hero-carousel { position: absolute; inset: 0; overflow: hidden; background: #eef2f4; }.gcc-hero__visual .gcc-hero-carousel__slide { position: absolute; inset: 0; z-index: 1; opacity: 0; transition: opacity .55s ease; }.gcc-hero__visual .gcc-hero-carousel__slide.is-active { z-index: 2; opacity: 1; }.gcc-hero__visual .gcc-hero-carousel__slide img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }.gcc-hero-carousel__controls { position: absolute; z-index: 4; right: 18px; bottom: 15px; display: flex; gap: 7px; }.gcc-hero-carousel__controls button { width: 9px; height: 9px; padding: 0; border: 1px solid rgba(255,255,255,.9); border-radius: 50%; background: rgba(6,42,76,.35); cursor: pointer; }.gcc-hero-carousel__controls button.is-active { width: 25px; border-radius: 8px; background: var(--gcc-gold); }
body .gcc-whatsapp-float { z-index: 2147483000!important; visibility: visible!important; }
@media (max-width: 800px) { body .gcc-whatsapp-float { right: max(12px, env(safe-area-inset-right))!important; bottom: max(12px, env(safe-area-inset-bottom))!important; min-height: 54px; padding: 7px 14px 7px 8px!important; } body .gcc-whatsapp-float em { display: block!important; font-size: 12px!important; white-space: nowrap; } .gcc-account-page .woocommerce-MyAccount-content .woocommerce-info .button,.gcc-account-page .woocommerce-MyAccount-content .woocommerce-message .button { display: flex; width: 100%; min-height: 42px; margin-top: 12px; } .gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table,.gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table tbody,.gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table tr,.gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table td { display: block; width: 100%; } .gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table thead { display: none; } .gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table tr { padding: 9px 0; border-bottom: 1px solid var(--gcc-line); }.gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table tr:last-child { border: 0; }.gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table td { padding: 6px 10px; border: 0; text-align: left!important; }.gcc-account-page .woocommerce-MyAccount-content .woocommerce-orders-table td::before { min-width: 42%; color: var(--gcc-navy); font-weight: 850; } }

/* v0.5.9 — hero-slide links, restored coupon entry and product index PDFs */
.gcc-commerce-page .woocommerce form.checkout_coupon .form-row-first { display: block !important; visibility: visible !important; }
.gcc-commerce-page .woocommerce form.checkout_coupon .form-row-first input[name="coupon_code"] { display: block !important; visibility: visible !important; opacity: 1 !important; }
.gcc-commerce-page .woocommerce form.checkout_coupon .form-row-last { display: block !important; }
.gcc-hero__visual .gcc-hero-carousel__slide > a { position: absolute; inset: 0; display: block; cursor: pointer; }.gcc-hero__visual .gcc-hero-carousel__slide > a:focus-visible { outline: 3px solid var(--gcc-gold); outline-offset: -3px; }
.single-product .gcc-shop-container .gcc-product-index-pdf { display: grid; grid-template-columns: 46px minmax(0, 1fr) auto; align-items: center; gap: 13px; margin: 20px 0; padding: 14px; border: 1px solid #ead9ae; border-radius: 9px; background: #fff9eb; }.gcc-product-index-pdf__icon { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 8px; color: white; background: #c84232; font-size: 11px; font-weight: 900; letter-spacing: .3px; }.gcc-product-index-pdf strong,.gcc-product-index-pdf span { display: block; }.gcc-product-index-pdf strong { color: var(--gcc-navy); font-size: 13px; }.gcc-product-index-pdf div span { margin-top: 2px; color: #637287; font-size: 11px; line-height: 1.4; }.gcc-product-index-pdf > a { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 37px; padding: 0 12px; border-radius: 6px; color: white; background: var(--gcc-navy); font-size: 11px; font-weight: 850; white-space: nowrap; }.gcc-product-index-pdf > a:hover { color: white; background: #0b416f; }
@media (max-width: 560px) { .gcc-commerce-page .woocommerce form.checkout_coupon { display: block; padding: 14px; }.gcc-commerce-page .woocommerce form.checkout_coupon .form-row-first,.gcc-commerce-page .woocommerce form.checkout_coupon .form-row-last { width: 100%; margin: 0 0 10px; }.gcc-commerce-page .woocommerce form.checkout_coupon .form-row-last { margin-bottom: 0; }.gcc-commerce-page .woocommerce form.checkout_coupon .button { width: 100%; }.single-product .gcc-shop-container .gcc-product-index-pdf { grid-template-columns: 42px minmax(0, 1fr); gap: 10px; }.gcc-product-index-pdf__icon { width: 42px; height: 42px; }.gcc-product-index-pdf > a { grid-column: 1 / -1; width: 100%; margin-top: 1px; } }

/* v0.6.0 — Cashfree-ready legal policy pages */
.gcc-policy-updated { display: inline-flex; margin: 0 0 24px!important; padding: 6px 10px; border-radius: 5px; color: #68778a; background: #f4f6f7; font-size: 11px; font-weight: 750; }.gcc-policy-links { display: flex; flex-wrap: wrap; gap: 10px; margin: 16px 0 30px; }.gcc-policy-links a { display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 0 12px; border: 1px solid #ead7a8; border-radius: 7px; color: var(--gcc-navy); background: #fffaf0; font-size: 12px; font-weight: 850; text-decoration: none; }.gcc-policy-links a:hover { border-color: var(--gcc-gold); color: var(--gcc-navy); background: #fff2d4; }.gcc-policy-links a span { color: var(--gcc-gold-dark); font-size: 16px; }
@media (max-width: 520px) { .gcc-policy-links { display: grid; grid-template-columns: 1fr; }.gcc-policy-links a { justify-content: space-between; } }

/* v0.6.1 — GCC community About page */
.gcc-about-community { padding-bottom: 63px; }.gcc-community-stats { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-top: 31px; }.gcc-community-stats article { min-height: 133px; padding: 21px 16px; border: 1px solid #e6e1d5; border-radius: 11px; background: linear-gradient(145deg,#fffefa,#fff7e7); text-align: center; }.gcc-community-stats strong { display: block; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: clamp(25px,3vw,35px); letter-spacing: -1.8px; line-height: 1; }.gcc-community-stats strong small { font-size: 15px; letter-spacing: -.5px; }.gcc-community-stats span { display: block; margin: 10px auto 0; color: #5f6f81; font-size: 11px; font-weight: 700; line-height: 1.3; }.gcc-about-story { display: grid; grid-template-columns: minmax(0,1fr) 215px; gap: 52px; align-items: center; }.gcc-about-story h2 { margin: 7px 0 12px; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: clamp(27px,3.4vw,39px); letter-spacing: -1.8px; line-height: 1.08; }.gcc-about-story p { max-width: 690px; margin: 0 0 19px; color: #536377; font-size: 15px; line-height: 1.65; }.gcc-about-story aside { display: grid; place-items: center; align-content: center; min-height: 205px; padding: 20px; border-radius: 15px; color: white; background: linear-gradient(145deg,#07355e,#08284a); box-shadow: 0 15px 25px rgba(6,42,76,.15); text-align: center; }.gcc-about-story aside > span { display: grid; place-items: center; width: 55px; height: 55px; margin-bottom: 13px; border-radius: 50%; color: var(--gcc-navy); background: #ffd36a; }.gcc-about-story aside .gcc-icon { width: 27px; height: 27px; }.gcc-about-story aside b { font-size: 16px; }.gcc-about-story aside small { margin-top: 5px; color: #c7d8e8; font-size: 11px; line-height: 1.4; }
@media (max-width: 800px) { .gcc-community-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }.gcc-about-story { grid-template-columns: 1fr; gap: 25px; }.gcc-about-story aside { min-height: 165px; max-width: 100%; } }
@media (max-width: 420px) { .gcc-community-stats { gap: 8px; }.gcc-community-stats article { min-height: 119px; padding: 18px 9px; }.gcc-community-stats strong { font-size: 27px; }.gcc-community-stats span { font-size: 10px; } }

/* v0.6.3 — Host-safe mobile archive grid.
   Live archive markup has `ul.products` directly inside `.gcc-shop-container`
   (not inside a descendant `.woocommerce` node). WooCommerce 11.2.1's mobile
   `columns-*` rule was therefore winning with width:48%, float:left and
   clear:both. Target the real DOM shape as well as block archives and force
   every product to occupy its complete two-column grid cell. */
@media (max-width: 768px) {
  body.post-type-archive-product .gcc-shop-container ul.products,
  body.tax-product_cat .gcc-shop-container ul.products,
  body.tax-product_tag .gcc-shop-container ul.products,
  body.post-type-archive-product .gcc-shop-container .wc-block-product-template,
  body.tax-product_cat .gcc-shop-container .wc-block-product-template,
  body.tax-product_tag .gcc-shop-container .wc-block-product-template,
  body.post-type-archive-product .gcc-shop-container .wc-block-grid__products,
  body.tax-product_cat .gcc-shop-container .wc-block-grid__products,
  body.tax-product_tag .gcc-shop-container .wc-block-grid__products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-items: stretch !important;
  }

  body.post-type-archive-product .gcc-shop-container ul.products > li.product,
  body.tax-product_cat .gcc-shop-container ul.products > li.product,
  body.tax-product_tag .gcc-shop-container ul.products > li.product,
  body.post-type-archive-product .gcc-shop-container .wc-block-product-template > .wc-block-product-template__product,
  body.tax-product_cat .gcc-shop-container .wc-block-product-template > .wc-block-product-template__product,
  body.tax-product_tag .gcc-shop-container .wc-block-product-template > .wc-block-product-template__product,
  body.post-type-archive-product .gcc-shop-container .wc-block-grid__products > .wc-block-grid__product,
  body.tax-product_cat .gcc-shop-container .wc-block-grid__products > .wc-block-grid__product,
  body.tax-product_tag .gcc-shop-container .wc-block-grid__products > .wc-block-grid__product {
    display: block !important;
    float: none !important;
    clear: none !important;
    grid-column: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
}

/* v0.6.4 — Larger, edge-efficient mobile catalogue cards.
   The client-approved direction is a clearer two-column book display: reduce
   archive gutters/card padding, preserve cover proportions, and use the extra
   cell width for the actual source image rather than a white frame. */
@media (max-width: 768px) {
  body.post-type-archive-product .gcc-shop-main,
  body.tax-product_cat .gcc-shop-main,
  body.tax-product_tag .gcc-shop-main {
    padding-top: 22px !important;
    padding-bottom: 48px !important;
  }

  body.post-type-archive-product .gcc-shop-container,
  body.tax-product_cat .gcc-shop-container,
  body.tax-product_tag .gcc-shop-container {
    width: calc(100% - 12px) !important;
    max-width: none !important;
  }

  body.post-type-archive-product .gcc-shop-container ul.products,
  body.tax-product_cat .gcc-shop-container ul.products,
  body.tax-product_tag .gcc-shop-container ul.products {
    gap: 8px !important;
  }

  body.post-type-archive-product .gcc-shop-container ul.products > li.product,
  body.tax-product_cat .gcc-shop-container ul.products > li.product,
  body.tax-product_tag .gcc-shop-container ul.products > li.product {
    padding: 4px !important;
    border-radius: 9px !important;
  }

  body.post-type-archive-product .gcc-shop-container ul.products > li.product a img,
  body.tax-product_cat .gcc-shop-container ul.products > li.product a img,
  body.tax-product_tag .gcc-shop-container ul.products > li.product a img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 9px !important;
    padding: 0 !important;
    object-fit: contain !important;
  }

  body.post-type-archive-product .gcc-shop-container ul.products > li.product .woocommerce-loop-product__title,
  body.tax-product_cat .gcc-shop-container ul.products > li.product .woocommerce-loop-product__title,
  body.tax-product_tag .gcc-shop-container ul.products > li.product .woocommerce-loop-product__title {
    min-height: 0 !important;
    margin: 0 3px 7px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
  }

  body.post-type-archive-product .gcc-shop-container ul.products > li.product .price,
  body.tax-product_cat .gcc-shop-container ul.products > li.product .price,
  body.tax-product_tag .gcc-shop-container ul.products > li.product .price {
    margin: 0 3px 9px !important;
    font-size: 16px !important;
  }

  body.post-type-archive-product .gcc-shop-container ul.products > li.product .button,
  body.tax-product_cat .gcc-shop-container ul.products > li.product .button,
  body.tax-product_tag .gcc-shop-container ul.products > li.product .button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-height: 39px !important;
    margin: 0 3px 3px !important;
    padding: 7px 6px !important;
    font-size: 12px !important;
  }
}

/* v0.6.5 — Client-approved full-stage home-product covers on mobile.
   Home-page cover files are square but their image stage is portrait. Fill the
   complete visible stage without internal padding so books are prominent in
   the two-column mobile display. `fill` intentionally stretches source pixels
   to the stage; it is used here at the client's explicit visual direction. */
@media (max-width: 620px) {
  .gcc-product-card__image {
    overflow: hidden !important;
    background: #fffdf9 !important;
  }
  .gcc-product-card__image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: fill !important;
  }
}

/* v0.6.6 — Universal 3:4 product-image stage.
   Keep every product tile (home, Shop/category/tag, block collections and
   related grids) at a portrait 3:4 width-to-height ratio on desktop and
   mobile. Product artwork deliberately fills its image stage with no internal
   white frame; this follows the approved visual presentation direction. */
.gcc-product-card__image,
.gcc-shop-container ul.products li.product a.woocommerce-LoopProduct-link > img,
.gcc-shop-container .wc-block-components-product-image,
.gcc-shop-container .wc-block-grid__product-image {
  aspect-ratio: 3 / 4 !important;
}

.gcc-product-card__image {
  height: auto !important;
  overflow: hidden !important;
}
.gcc-product-card__image img {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: fill !important;
}

.gcc-shop-container ul.products li.product a.woocommerce-LoopProduct-link > img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: fill !important;
}

.gcc-shop-container .wc-block-components-product-image,
.gcc-shop-container .wc-block-grid__product-image {
  display: block !important;
  height: auto !important;
  overflow: hidden !important;
}
.gcc-shop-container .wc-block-components-product-image img,
.gcc-shop-container .wc-block-grid__product-image img {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: fill !important;
}

/* v0.6.7 — Original-size, flexible product thumbnails.
   A fixed 3:4 stage and `fill` can crop/distort uploaded covers. Every product
   grid now follows the source image's own aspect ratio and displays the whole
   attachment. Together with the PHP full-size image request, this stops Woo's
   300px square crop from being enlarged into a blurry thumbnail. */
.gcc-product-card__image,
.gcc-shop-container ul.products li.product a.woocommerce-LoopProduct-link > img,
.gcc-shop-container .wc-block-components-product-image,
.gcc-shop-container .wc-block-grid__product-image {
  aspect-ratio: auto !important;
}
.gcc-product-card__image {
  display: block !important;
  height: auto !important;
  overflow: visible !important;
  background: transparent !important;
}
.gcc-product-card__image img,
.gcc-shop-container ul.products li.product a.woocommerce-LoopProduct-link > img,
.gcc-shop-container .wc-block-components-product-image img,
.gcc-shop-container .wc-block-grid__product-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  image-rendering: auto;
}
.gcc-shop-container .wc-block-components-product-image,
.gcc-shop-container .wc-block-grid__product-image {
  height: auto !important;
  overflow: visible !important;
  background: transparent !important;
}


/* v0.6.8 — Archive flex ordering + natural-ratio height safety.
   v0.6.7 correctly uses the original attachment, but some archive items can
   inherit a conflicting layout and leave an excessive blank vertical card.
   Keep the browser's source aspect ratio, render every image before title/
   price, and only cap the *display* height responsively.  `contain` means
   the whole uploaded artwork remains visible — nothing is cropped or stretched. */
body.post-type-archive-product .gcc-shop-container ul.products > li.product a.woocommerce-LoopProduct-link,
body.tax-product_cat .gcc-shop-container ul.products > li.product a.woocommerce-LoopProduct-link,
body.tax-product_tag .gcc-shop-container ul.products > li.product a.woocommerce-LoopProduct-link {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  min-width: 0 !important;
}

body.post-type-archive-product .gcc-shop-container ul.products > li.product a.woocommerce-LoopProduct-link > img,
body.tax-product_cat .gcc-shop-container ul.products > li.product a.woocommerce-LoopProduct-link > img,
body.tax-product_tag .gcc-shop-container ul.products > li.product a.woocommerce-LoopProduct-link > img {
  position: static !important;
  order: -1 !important;
  align-self: center !important;
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 340px !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  margin: 0 auto 10px !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
}

body.post-type-archive-product .gcc-shop-container ul.products > li.product .woocommerce-loop-product__title,
body.post-type-archive-product .gcc-shop-container ul.products > li.product .price,
body.tax-product_cat .gcc-shop-container ul.products > li.product .woocommerce-loop-product__title,
body.tax-product_cat .gcc-shop-container ul.products > li.product .price,
body.tax-product_tag .gcc-shop-container ul.products > li.product .woocommerce-loop-product__title,
body.tax-product_tag .gcc-shop-container ul.products > li.product .price {
  position: static !important;
  order: 0 !important;
}

@media (max-width: 768px) {
  body.post-type-archive-product .gcc-shop-container ul.products > li.product a.woocommerce-LoopProduct-link > img,
  body.tax-product_cat .gcc-shop-container ul.products > li.product a.woocommerce-LoopProduct-link > img,
  body.tax-product_tag .gcc-shop-container ul.products > li.product a.woocommerce-LoopProduct-link > img {
    max-height: 255px !important;
    margin-bottom: 9px !important;
  }
}


/* v0.6.9 — Public registered-business identity for payment-gateway verification.
   These text details appear site-wide in the footer and in a clear Contact-page
   card. They are regular, crawlable HTML (not an image) so a verifier can match
   the merchant's registered identity without needing to access WordPress. */
.gcc-footer__registered-business {
  display: grid;
  gap: 4px;
  margin-top: 18px;
  padding-top: 15px;
  border-top: 1px solid rgba(255,255,255,.16);
  color: #c8d5e1;
  font-size: 11px;
  line-height: 1.45;
}
.gcc-footer__registered-business b { color: #ffd076; font-size: 11px; }
.gcc-footer__registered-business span,
.gcc-footer__registered-business a { display: block; }
.gcc-footer__registered-business a { color: #e4edf5; text-decoration: underline; text-underline-offset: 2px; }
.gcc-footer__registered-business a:hover { color: #ffd076; }
.gcc-registered-business-section { padding-top: 12px; padding-bottom: 12px; }
.gcc-registered-business-card {
  padding: clamp(22px, 4vw, 34px);
  border: 1px solid #e6d4a5;
  border-radius: 13px;
  background: linear-gradient(135deg, #fffdf7, #fff6e4);
  box-shadow: 0 9px 22px rgba(6,42,76,.05);
}
.gcc-registered-business-card h2 { margin: 7px 0 8px; color: var(--gcc-navy); font-family: var(--gcc-head); font-size: clamp(24px, 3vw, 32px); letter-spacing: -1.4px; line-height: 1.12; }
.gcc-registered-business-card > p:not(.gcc-info-kicker) { max-width: 670px; margin: 0; color: #566579; font-size: 14px; line-height: 1.55; }
.gcc-registered-business-card dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; margin: 22px 0 0; }
.gcc-registered-business-card dl > div { min-width: 0; padding: 14px; border: 1px solid #eadfca; border-radius: 8px; background: rgba(255,255,255,.82); }
.gcc-registered-business-card dt { margin: 0 0 5px; color: #8a7454; font-size: 10px; font-weight: 900; letter-spacing: .65px; text-transform: uppercase; }
.gcc-registered-business-card dd { margin: 0; overflow-wrap: anywhere; color: var(--gcc-navy); font-size: 13px; font-weight: 800; line-height: 1.45; }
.gcc-registered-business-card dd a { color: var(--gcc-navy); text-decoration: underline; text-underline-offset: 2px; }
.gcc-registered-business-card dd a:hover { color: var(--gcc-gold-dark); }
@media (max-width: 700px) {
  .gcc-registered-business-section { padding-top: 8px; padding-bottom: 8px; }
  .gcc-registered-business-card dl { grid-template-columns: 1fr; gap: 8px; margin-top: 18px; }
}


/* v0.6.11 — One representative book inside every main category card.
   The book preview is naturally contained, never cropped, while the separate
   View All Books action continues to lead to the matching category archive. */
.gcc-category-directory__preview {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 15px 23px;
  border-top: 1px solid #f0eee9;
  background: #fffdf9;
}
.gcc-category-directory__preview-image {
  display: grid;
  place-items: center;
  width: 84px;
  height: 112px;
  overflow: hidden;
  border: 1px solid #eee5d5;
  border-radius: 7px;
  background: #fff;
}
.gcc-category-directory__preview-image img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain;
}
.gcc-category-directory__preview-image > span {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: var(--gcc-navy);
  background: #fff4dc;
}
.gcc-category-directory__preview-image .gcc-icon { width: 29px; height: 29px; }
.gcc-category-directory__preview-copy { min-width: 0; }
.gcc-category-directory__preview-copy > p {
  margin: 0 0 4px;
  color: #8a7454;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .75px;
  line-height: 1.25;
}
.gcc-category-directory__preview-copy h3 {
  margin: 0;
  color: var(--gcc-navy);
  font-size: 13px;
  line-height: 1.36;
}
.gcc-category-directory__preview-copy h3 a:hover { color: var(--gcc-gold-dark); }
.gcc-category-directory__preview-price {
  margin-top: 6px;
  color: var(--gcc-navy);
  font-size: 14px;
  font-weight: 900;
}
.gcc-category-directory__preview-price del { margin-right: 4px; color: #788396; font-size: 11px; font-weight: 500; }
.gcc-category-directory__preview-price ins { text-decoration: none; }
.gcc-category-directory__preview--empty {
  display: block;
  grid-template-columns: none;
  padding: 16px 23px;
  color: #718096;
  font-size: 12px;
}
@media (max-width: 500px) {
  .gcc-category-directory__preview { grid-template-columns: 72px minmax(0, 1fr); gap: 12px; padding: 13px 16px; }
  .gcc-category-directory__preview-image { width: 72px; height: 98px; }
  .gcc-category-directory__preview-copy h3 { font-size: 12px; }
  .gcc-category-directory__preview--empty { padding: 14px 16px; }
}

/* v0.6.12 — Home category thumbnails read the same WooCommerce category image
   as the All Categories directory. `contain` protects all artwork edges at
   every breakpoint, irrespective of the uploaded image's shape. */
.gcc-category-directory__mark img {
  object-fit: contain;
  padding: 4px;
  background: #fff;
}
@media (max-width: 800px) {
  .gcc-exam-card { min-height: 111px; }
}
@media (max-width: 470px) {
  .gcc-exam-card { min-height: 118px; }
}

/* v0.6.13 — Category cards now deliberately reuse the exact homepage product
   grid, image container and title styles. This keeps their card width, borders,
   type treatment and responsive column count identical to a product card.
   Images retain the product-grid's natural-ratio, full-artwork behaviour. */
.gcc-category-products-grid .gcc-category-product-card { min-width: 0; }
.gcc-category-product-card__fallback {
  display: grid;
  place-items: center;
  min-height: 220px;
  color: var(--gcc-navy);
  background: linear-gradient(145deg, #fffdf9, #f5f4ef);
}
.gcc-category-product-card__fallback .gcc-icon { width: 38px; height: 38px; stroke-width: 1.65; }
@media (max-width: 800px) {
  .gcc-category-product-card__fallback { min-height: 165px; }
}
@media (max-width: 470px) {
  .gcc-category-product-card__fallback { min-height: 150px; }
}

/* v0.6.28 — Manual BharatPe UPI checkout with concise guidance and a Gujarati video guide.
   This intentionally communicates a verification-pending state instead of
   imitating an automatically approved card/UPI gateway transaction. */
.gcc-commerce-page .woocommerce form.checkout .payment_box:has(.gcc-manual-upi-panel) {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.gcc-commerce-page .woocommerce form.checkout .payment_box:has(.gcc-manual-upi-panel)::before { display: none !important; }
.gcc-manual-upi-panel { overflow: hidden; margin-top: 11px; border: 1px solid #dce4ea; border-radius: 10px; color: var(--gcc-text); background: white; box-shadow: 0 5px 13px rgba(6,42,76,.05); }
.gcc-manual-upi-panel__top { display: flex; align-items: center; gap: 10px; padding: 13px 14px; color: #eaf4ff; background: linear-gradient(115deg, #062a4c, #0b4776); }
.gcc-manual-upi-panel__lock { display: grid; place-items: center; flex: 0 0 25px; width: 25px; height: 25px; border-radius: 50%; color: #06355e; background: #ffd26d; font-size: 14px; font-weight: 900; }
.gcc-manual-upi-panel__top b,.gcc-manual-upi-panel__top small { display: block; }.gcc-manual-upi-panel__top b { color: white; font-size: 12px; line-height: 1.25; }.gcc-manual-upi-panel__top small { margin-top: 2px; color: #c9dced; font-size: 10px; line-height: 1.3; }
.gcc-manual-upi-amount { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 13px 15px; border-bottom: 1px solid #edf0f2; background: #fffaf0; }.gcc-manual-upi-amount span { color: #6d5e42; font-size: 11px; font-weight: 800; }.gcc-manual-upi-amount strong { color: var(--gcc-navy); font-size: 19px; font-weight: 900; }
.gcc-manual-upi-qr-wrap { display: grid; place-items: center; width: min(210px, calc(100% - 30px)); aspect-ratio: 1; margin: 17px auto 9px; padding: 9px; border: 1px solid #dbe2e8; border-radius: 11px; background: white; box-shadow: 0 4px 11px rgba(6,42,76,.07); }.gcc-manual-upi-qr-wrap img { display: block; width: 100%; height: 100%; object-fit: contain; }
.gcc-manual-upi-download { display: flex; align-items: center; justify-content: center; width: max-content; min-height: 32px; margin: 0 auto 16px; padding: 0 11px; border: 1px solid #dce4ea; border-radius: 6px; color: var(--gcc-navy); background: #f8fafc; font-size: 11px; font-weight: 850; }.gcc-manual-upi-download:hover { border-color: #e5a01e; color: var(--gcc-navy); background: #fff6df; }
.gcc-manual-upi-id { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 5px 9px; margin: 0 15px; padding: 11px 12px; border: 1px dashed #b9c8d6; border-radius: 8px; background: #f7fafc; }.gcc-manual-upi-id span { grid-column: 1 / -1; color: #718096; font-size: 9px; font-weight: 900; letter-spacing: .65px; text-transform: uppercase; }.gcc-manual-upi-id b { overflow: hidden; color: var(--gcc-navy); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }.gcc-manual-upi-copy { min-height: 28px; padding: 0 9px; border: 1px solid #c9d7e4; border-radius: 5px; color: var(--gcc-navy); background: white; font-size: 10px; font-weight: 850; cursor: pointer; }.gcc-manual-upi-copy:hover { border-color: var(--gcc-gold); background: #fff7e6; }
.gcc-manual-upi-merchant { margin: 8px 15px 0; color: #6b7c90; font-size: 10px; text-align: center; }.gcc-manual-upi-steps { display: grid; gap: 7px; margin: 15px; padding: 0; list-style: none; counter-reset: gcc-upi-step; }.gcc-manual-upi-steps li { position: relative; min-height: 24px; padding: 4px 0 4px 32px; color: #43566f; font-size: 11px; line-height: 1.42; counter-increment: gcc-upi-step; }.gcc-manual-upi-steps li::before { content: counter(gcc-upi-step); position: absolute; left: 0; top: 1px; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; color: var(--gcc-navy); background: #ffe0a0; font-size: 10px; font-weight: 900; }
.gcc-manual-upi-gujarati-copy { display: block; margin: 4px 0 0; color: #28716d; font-size: 10px; font-weight: 650; line-height: 1.52; }.gcc-manual-upi-gujarati-copy--intro { margin: -3px 0 12px; color: #28716d; font-size: 11px; }.gcc-manual-upi-gujarati-copy--upload { margin: 10px 0 0; padding-top: 9px; border-top: 1px solid #deebe9; }.gcc-manual-upi-gujarati-copy--support { margin: 0 15px 14px; color: #28716d; font-size: 11px; text-align: center; }
.gcc-manual-upi-video-guide { display: grid; grid-template-columns: 35px minmax(0, 1fr) auto; align-items: center; gap: 9px; margin: 0 0 12px; padding: 10px 11px; border: 1px solid #b9dce0; border-radius: 9px; color: #0a4b58; background: linear-gradient(120deg, #eefafb, #f7fffb); box-shadow: 0 4px 12px rgba(16,91,104,.08); }.gcc-manual-upi-video-guide__play { display: grid; place-items: center; width: 35px; height: 35px; padding-left: 2px; border-radius: 50%; color: white; background: #0d7e83; font-size: 13px; box-shadow: 0 3px 7px rgba(13,126,131,.24); }.gcc-manual-upi-video-guide__copy { min-width: 0; }.gcc-manual-upi-video-guide__copy b,.gcc-manual-upi-video-guide__copy small { display: block; }.gcc-manual-upi-video-guide__copy b { color: #124f59; font-size: 11px; line-height: 1.35; }.gcc-manual-upi-video-guide__copy small { margin-top: 2px; color: #4a7180; font-size: 9px; line-height: 1.35; }.gcc-manual-upi-video-guide__button { min-height: 32px; padding: 0 10px; border: 1px solid #0d747a; border-radius: 6px; color: white; background: #0d747a; font-size: 10px; font-weight: 850; cursor: pointer; white-space: nowrap; }.gcc-manual-upi-video-guide__button:hover,.gcc-manual-upi-video-guide__button:focus-visible { border-color: #075e63; background: #075e63; }
body.gcc-upi-video-modal-open { overflow: hidden; }.gcc-manual-upi-video-modal[hidden] { display: none !important; }.gcc-manual-upi-video-modal { position: fixed; z-index: 10050; inset: 0; display: grid; place-items: center; padding: 16px; }.gcc-manual-upi-video-modal__backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgba(2,22,37,.73); cursor: default; }.gcc-manual-upi-video-modal__content { position: relative; z-index: 1; width: min(calc(100vw - 32px), 400px); padding: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.45); border-radius: 12px; background: #092c4e; box-shadow: 0 20px 60px rgba(0,0,0,.42); }.gcc-manual-upi-video-modal__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; padding: 0 10px 0 14px; color: white; }.gcc-manual-upi-video-modal__head b { font-size: 12px; line-height: 1.35; }.gcc-manual-upi-video-modal__close { display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; border: 1px solid rgba(255,255,255,.42); border-radius: 50%; color: white; background: rgba(255,255,255,.13); font-size: 23px; line-height: 1; cursor: pointer; }.gcc-manual-upi-video-modal__close:hover,.gcc-manual-upi-video-modal__close:focus-visible { background: rgba(255,255,255,.25); }.gcc-manual-upi-video-modal__frame { width: auto; height: min(68vh, 640px); max-width: 100%; aspect-ratio: 9 / 16; margin: 0 auto; background: #000; }.gcc-manual-upi-video-modal__frame video { display: block; width: 100%; height: 100%; background: #000; object-fit: contain; }
.gcc-manual-upi-warning { margin: 0 15px 15px; padding: 10px 11px; border: 1px solid #f1d69d; border-left: 4px solid var(--gcc-gold); border-radius: 0 7px 7px 0; color: #705525; background: #fff8e8; font-size: 11px; line-height: 1.45; }.gcc-manual-upi-warning b { color: #6a4300; }
.gcc-manual-upi-upload { margin: 13px 15px 15px; padding: 12px; border: 1px dashed #aebdca; border-radius: 8px; background: #fbfcfd; text-align: center; }.gcc-manual-upi-upload__privacy { margin: 9px 0 0; color: #6a7888; font-size: 9px; line-height: 1.45; }.gcc-manual-upi-upload label { display: grid!important; place-items: center; gap: 3px; margin: 0!important; cursor: pointer; }.gcc-manual-upi-upload__icon { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; color: white; background: var(--gcc-navy); font-size: 20px; font-weight: 400; line-height: 1; }.gcc-manual-upi-upload label b { color: var(--gcc-navy); font-size: 12px; }.gcc-manual-upi-upload label small { color: #6d7d91; font-size: 10px; }.gcc-manual-upi-upload input[type="file"] { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; }.gcc-manual-upi-upload__status { margin: 9px 0 0; color: #728095; font-size: 10px; line-height: 1.35; }.gcc-manual-upi-preview { width: min(250px, 100%); margin: 11px auto 0; padding: 8px; border: 1px solid #d7e1e8; border-radius: 7px; background: white; }.gcc-manual-upi-preview[hidden] { display: none; }.gcc-manual-upi-preview b { display: block; margin: 0 0 7px; color: #63758a; font-size: 10px; text-align: left; }.gcc-manual-upi-preview img { display: block; width: 100%; max-height: 330px; border-radius: 4px; object-fit: contain; background: #f4f7f9; }.gcc-commerce-page .woocommerce #place_order:disabled { cursor: not-allowed; opacity: .58; }.gcc-manual-upi-upload.is-uploading { border-color: #e5ad43; background: #fff9ec; }.gcc-manual-upi-upload.is-uploaded { border-color: #86cfa6; background: #f2fff7; }.gcc-manual-upi-upload.is-uploaded .gcc-manual-upi-upload__status { color: #1c7546; font-weight: 750; }.gcc-manual-upi-upload.is-error { border-color: #e29c91; background: #fff5f3; }.gcc-manual-upi-upload.is-error .gcc-manual-upi-upload__status { color: #a53727; font-weight: 750; }
.gcc-manual-upi-thankyou { display: flex; align-items: flex-start; gap: 12px; max-width: 760px; margin: 21px auto; padding: 18px 20px; border: 1px solid #e7ca8a; border-radius: 10px; color: #554520; background: #fff8e6; }.gcc-manual-upi-thankyou > span { display: grid; place-items: center; flex: 0 0 31px; width: 31px; height: 31px; border-radius: 50%; color: #0f5a36; background: #b8e8ca; font-weight: 900; }.gcc-manual-upi-thankyou b { display: block; color: var(--gcc-navy); font-size: 14px; }.gcc-manual-upi-thankyou p { margin: 4px 0 0; color: #5d5c51; font-size: 12px; line-height: 1.5; }
@media (max-width: 470px) { .gcc-manual-upi-panel__top { padding: 12px; }.gcc-manual-upi-qr-wrap { width: min(190px, calc(100% - 26px)); }.gcc-manual-upi-id,.gcc-manual-upi-steps,.gcc-manual-upi-warning,.gcc-manual-upi-upload { margin-right: 12px; margin-left: 12px; }.gcc-manual-upi-thankyou { padding: 15px; }.gcc-manual-upi-video-guide { grid-template-columns: 35px minmax(0, 1fr); }.gcc-manual-upi-video-guide__button { grid-column: 1 / -1; width: 100%; }.gcc-manual-upi-video-modal { padding: 10px; }.gcc-manual-upi-video-modal__content { width: min(calc(100vw - 20px), 380px); }.gcc-manual-upi-video-modal__frame { height: min(70vh, 620px); } }
