/*
Theme Name: Global Qalam
Theme URI: https://yourwebsite.com/
Author: Your Name
Author URI: https://yourwebsite.com/
Description: A clean, responsive WordPress theme.
Version: 1.0
License: GPL v2 or later
Text Domain: simplepress
*/

/* ==========================================================================
   Design Tokens
   ========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Inter:wght@300;400;500;600;700&display=swap");

:root {
    --gq-cream:        #fcfbf8;
    --gq-cream-deep:   #f4f0e6;
    --gq-ink:          #1a1714;
    --gq-ink-soft:     #3a342e;
    --gq-muted:        #6b645c;
    --gq-gold:         #b8924a;
    --gq-gold-soft:    #d6b576;
    --gq-star:         #d6a84a;
    --gq-border:       #e8e2d4;

    --gq-font-serif: "Playfair Display", "Cormorant Garamond", Georgia, serif;
    --gq-font-sans:  "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

    --gq-container: 1200px;
    --gq-radius: 2px;
}

/* Base */
body.global-qalam-home,
.page-template-template-gq-home {
    font-size: .9rem;
	  font-weight: 500;
	  color: var(--gq-ink);
	  text-decoration: none;
	  position: relative;
	  transition: color .2s;
	  font-family: var(--gq-font-sans);
	  line-height: 1.6;
	}

.global-qalam-home h1,
.global-qalam-home h2,
.global-qalam-home h3,
.global-qalam-home h4 {
    font-family: var(--gq-font-serif);
    font-weight: 500;
    letter-spacing: -0.01em;
    color: var(--gq-ink);
}

p{
      font-size: 1rem !important;
	  font-weight: 400 !important;	  
	  text-decoration: none;
	  position: relative;
	  transition: color .2s;
	  font-family: var(--gq-font-serif);
	  line-height: 1.6;
}


.gq-hero.gq-section {  
  background: var(--gq-cream);
}

.gq-container {
    width: 100%;
    max-width: var(--gq-container);
    margin: 0 auto;
    padding: 0 1.25rem;
}
@media (min-width: 768px) { .gq-container { padding: 0 2rem; } }

/* Reusable bits */
.gq-eyebrow {
    display: inline-block;
    font-size: 0.72rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--gq-gold);
    font-weight: 500;
    margin-bottom: 0.75rem;
}
.gq-divider {
    display: inline-block;
    width: 56px;
    height: 1px;
    background: var(--gq-gold);
    position: relative;
    margin: 1rem 0;
}
.gq-divider::before,
.gq-divider::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 4px;
    height: 4px;
    background: var(--gq-gold);
    transform: translateY(-50%) rotate(45deg);
}
.gq-divider::before { left: -2px; }
.gq-divider::after  { right: -2px; }

/* Buttons */
.gq-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.85rem 1.6rem;
    font-size: 0.9rem;
    font-weight: 500;
    border-radius: var(--gq-radius);
    border: 1px solid transparent;
    cursor: pointer;
    transition: background .2s ease, color .2s ease, transform .2s ease;
    text-decoration: none;
}
.gq-btn-primary { background: var(--gq-ink);   color: var(--gq-cream); }
.gq-btn-primary:hover { background: #000; transform: translateY(-1px); color: var(--gq-cream); }
.gq-btn-outline { background: transparent; color: var(--gq-ink); border-color: var(--gq-ink); }
.gq-btn-outline:hover { background: var(--gq-ink); color: var(--gq-cream); }
.gq-btn-gold { background: var(--gq-gold); color: #fff; }
.gq-btn-gold:hover { background: #a07d3c; transform: translateY(-1px); color: #fff; }
.gq-btn-ghost-light { background: transparent; color: var(--gq-cream); border-color: rgba(255,255,255,.35); }
.gq-btn-ghost-light:hover { background: var(--gq-cream); color: var(--gq-ink); }

/* Topbar + Header */
.gq-topbar {
    background: var(--gq-ink);
    color: var(--gq-cream);
    font-size: 0.78rem;
}
.gq-topbar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0;
    gap: 1rem;
}
.gq-quote { font-style: italic; opacity: .9; }
.gq-quote .gq-author { color: var(--gq-gold); margin-left: .5rem; font-style: normal; }
.gq-lang { background: transparent; border: 0; color: rgba(252,251,248,.85); cursor: pointer; font-size: .78rem; }
.gq-lang:hover { color: var(--gq-cream); }

.gq-header {
    background: var(--gq-cream);
    border-bottom: 1px solid var(--gq-border);
    position: sticky;
    top: 0;
    z-index: 50;
	padding:10px 0px;
}
.gq-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
}
.gq-logo {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    text-decoration: none;
    color: var(--gq-ink);
}
.gq-logo .gq-word {
    font-family: var(--gq-font-serif);
    font-size: 1.35rem;
    letter-spacing: 0.18em;
    line-height: 1;
}
.gq-logo .gq-word + .gq-word { margin-top: 2px; }
.gq-logo .gq-tagline {
    font-size: 0.55rem;
    letter-spacing: 0.32em;
    color: var(--gq-muted);
    margin-top: 4px;
}
.gq-logo .gq-feather { color: var(--gq-gold); font-size: 1.5rem; margin-top: -4px; }

.gq-nav {
    display: none;
    gap: 2rem;
    align-items: center;
}
.gq-nav li a{
  font-size: .9rem;
  font-weight: 500;
  color: var(--gq-ink);
  text-decoration: none;
  position: relative;
  transition: color .2s;
  font-family: var(--gq-font-sans);
  line-height: 1.6;
}
.gq-nav li a:hover { color: var(--gq-gold); }
.gq-nav li a.current::after {
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: -6px;
    height: 2px;
    background: var(--gq-ink);
}

.gq-nav li {
  list-style: none;
}


@media (min-width: 1024px) { .gq-nav { display: flex; } }

.gq-header-actions { display: flex; align-items: center; gap: 1rem;  margin-right: 30px;}
.gq-icon-btn {
    background: transparent; border: 0; cursor: pointer;
    color: var(--gq-ink); padding: 4px;
}
.gq-icon-btn:hover { color: var(--gq-gold); }
.gq-signin { 
    background: var(--gq-ink); color: var(--gq-cream);
    border: 0; padding: .55rem 1.2rem;
    font-size: .85rem; font-weight: 500;
    border-radius: var(--gq-radius);
	cursor: pointer;
	font-family: var(--gq-font-sans);
    text-decoration: none;
}

.gq-signin:hover { background: #000; }


.gq-menu-toggle {
    display: inline-flex; background: transparent; border: 0;
    color: var(--gq-ink); cursor: pointer;
}
@media (min-width: 1024px) { .gq-menu-toggle { display: none; } }

.gq-mobile-nav {
    display: none;
    border-top: 1px solid var(--gq-border);
    background: var(--gq-cream);
}
.gq-mobile-nav.is-open { display: block; }
.gq-mobile-nav ul { list-style: none; margin: 0; padding: 1rem 0; }
.gq-mobile-nav a {
    display: block; padding: .6rem 0;
    color: var(--gq-ink); text-decoration: none; font-weight: 500; font-size: .9rem;
}
.gq-mobile-nav a:hover { color: var(--gq-gold); }

/* Hero */
.gq-hero { padding: 4rem 0; }
.gq-hero-grid {
    display: grid; gap: 3rem;
    grid-template-columns: 1fr;
    align-items: center;
}
@media (min-width: 900px) { .gq-hero-grid { grid-template-columns: 1.05fr 1fr; gap: 5rem; } }

.gq-hero h1 {
    font-size: clamp(2.25rem, 4.5vw, 3.75rem);
    line-height: 1.05;
    margin: .75rem 0 1.25rem;
}
.gq-hero h1 em { font-style: italic; color: var(--gq-gold); font-weight: 400; }
.gq-hero p.lede {
    color: var(--gq-muted);
    font-size: 1.05rem;
    max-width: 32rem;
    margin-bottom: 1.75rem;
}
.gq-hero-ctas { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 2.5rem; }
.gq-hero-stats { display: flex; gap: 2.5rem; flex-wrap: wrap; }
.gq-hero-stats .stat-num {
    font-family: var(--gq-font-serif);
    font-size: 3rem; color: var(--gq-ink); line-height: 1;
}
.gq-hero-stats .stat-label {
    font-size: .75rem; letter-spacing: 0.14em; text-transform: uppercase;
    color: var(--gq-muted); margin-top: .35rem;
}

.gq-hero-media {
    position: relative;
    aspect-ratio: 4 / 5;
    background: var(--gq-cream-deep);
    border-radius: var(--gq-radius);
    overflow: hidden;
    box-shadow: 0 20px 60px -30px rgba(26,23,20,.35);
}
.gq-hero-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gq-hero-badge {
    position: absolute; left: -1rem; bottom: 1.5rem;
    background: var(--gq-ink); color: var(--gq-cream);
    padding: 1rem 1.25rem; border-radius: var(--gq-radius);
    font-family: var(--gq-font-serif); font-style: italic; font-size: .95rem;
    box-shadow: 0 10px 30px -10px rgba(0,0,0,.4);
}
.gq-hero-badge strong { color: var(--gq-gold); font-style: normal; font-weight: 600; }

/* Section header */
.gq-section { padding: 4.5rem 0; }
.gq-section-head { text-align: center; margin-bottom: 3rem; }
.gq-section-head h2 { font-size: clamp(1.85rem, 3vw, 2.5rem); margin: .5rem 0; }
.gq-section-head p { color: var(--gq-muted); max-width: 36rem; margin: .5rem auto 0; }

/* Books grid */
.gq-books-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem 1.5rem;
}
@media (min-width: 640px)  { .gq-books-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1024px) { .gq-books-grid { grid-template-columns: repeat(6, 1fr); } }

.gq-book { display: flex; flex-direction: column; }
.gq-book-cover {
    aspect-ratio: 2 / 3;
    background: var(--gq-cream-deep);
    overflow: hidden;
    border-radius: var(--gq-radius);
    box-shadow: 0 4px 18px -8px rgba(0,0,0,.2);
}
.gq-book-cover img {
    width: 100%; height: 100%; object-fit: cover; display: block;
    transition: transform .5s ease;
}
.gq-book:hover .gq-book-cover img { transform: scale(1.05); }
.gq-book h3 {
    font-family: var(--gq-font-serif); font-size: 1.05rem; line-height: 1.3;
    margin: 1rem 0 .25rem;
}
.gq-book .author { font-size: .78rem; color: var(--gq-muted); margin-bottom: .5rem; }
.gq-stars { color: var(--gq-star); letter-spacing: 2px; font-size: .85rem; }
.gq-book .price { margin-top: .35rem; font-weight: 600; font-size: .9rem; }
.gq-book .price.free { color: var(--gq-gold); }

.gq-section-cta { text-align: center; margin-top: 3rem; }

/* Why choose */
.gq-why { background: var(--gq-cream-deep); }
.gq-why-grid {
    display: grid; gap: 2rem;
    grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 640px)  { .gq-why-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .gq-why-grid { grid-template-columns: repeat(4, 1fr); } }

.gq-feature { text-align: center; padding: 1rem; }
.gq-feature .icon {
    width: 56px; height: 56px; margin: 0 auto 1rem;
    border-radius: 50%;
    background: var(--gq-cream);
    border: 1px solid var(--gq-border);
    display: flex; align-items: center; justify-content: center;
    color: var(--gq-gold); font-size: 1.5rem;
}
.gq-feature h3 { font-size: 1.1rem; margin: .25rem 0 .5rem; }
.gq-feature p { color: var(--gq-muted); font-size: .9rem; }

/* For Writers (dark) */
.gq-writers { background: #000; color: var(--gq-cream); }
.gq-writers .gq-section-head h2 { color: var(--gq-cream); }
.gq-writers .gq-section-head p  { color: rgba(252,251,248,.75); }
.gq-writers-grid {
    display: grid; gap: 3rem;
    grid-template-columns: 1fr;
    align-items: center;
}
@media (min-width: 900px) { .gq-writers-grid { grid-template-columns: 1fr 1fr; gap: 4rem; } }
.gq-writers-img {
    aspect-ratio: 4/3;
    background: #2a2520;
    border-radius: var(--gq-radius);
    overflow: hidden;
}
.gq-writers-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gq-writers ul { list-style: none; padding: 0; margin: 1.5rem 0; }
.gq-writers ul li {
    padding: .5rem 0 .5rem 1.5rem;
    position: relative;
    color: rgba(252,251,248,.85);
}
.gq-writers ul li::before {
    content: ""; position: absolute; left: 0; top: 1.1rem;
    width: 8px; height: 1px; background: var(--gq-gold);
}

/* Journal */
.gq-journal-grid {
    display: grid; gap: 2rem;
    grid-template-columns: 1fr;
}
@media (min-width: 700px)  { .gq-journal-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .gq-journal-grid { grid-template-columns: repeat(3, 1fr); } }

.gq-post { display: flex; flex-direction: column; }
.gq-post-img {
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: var(--gq-radius);
    background: var(--gq-cream-deep);
}
.gq-post-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; display: block; }
.gq-post:hover .gq-post-img img { transform: scale(1.04); }
.gq-post .meta {
    font-size: .72rem; letter-spacing: .16em; text-transform: uppercase;
    color: var(--gq-gold); margin: 1.25rem 0 .5rem;
}
.gq-post h3 { font-family: var(--gq-font-serif); font-size: 1.25rem; line-height: 1.3; margin: 0 0 .5rem; }
.gq-post p  { color: var(--gq-muted); font-size: .92rem; margin: 0 0 .75rem; }
.gq-post a.read-more { color: var(--gq-ink); font-weight: 500; font-size: .85rem; text-decoration: none; border-bottom: 1px solid var(--gq-gold); padding-bottom: 2px; }
.gq-post a.read-more:hover { color: var(--gq-gold); }

/* Newsletter */
.gq-newsletter { background: var(--gq-cream-deep); }
.gq-newsletter-inner {
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
}
.gq-newsletter h2 { font-size: clamp(1.75rem, 2.6vw, 2.25rem); margin: .5rem 0 .75rem; }
.gq-newsletter p { color: var(--gq-muted); margin-bottom: 1.75rem; }
.gq-newsletter form {
    display: flex; gap: .5rem; flex-wrap: wrap; justify-content: center;
    background: var(--gq-cream);
    padding: .5rem;
    border-radius: var(--gq-radius);
    border: 1px solid var(--gq-border);
}
.gq-newsletter input[type="email"] {
    flex: 1 1 240px; min-width: 0;
    border: 0; background: transparent;
    padding: .85rem 1rem; font-size: .95rem; color: var(--gq-ink);
    outline: none;
}

/* Footer */
.gq-footer { background: var(--gq-ink); color: var(--gq-cream); padding: 4rem 0 1.5rem; }
.gq-footer-grid {
    display: grid; gap: 3rem;
    grid-template-columns: 1fr;
}
@media (min-width: 700px)  { .gq-footer-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .gq-footer-grid { grid-template-columns: 1.4fr repeat(4, 1fr); } }

.gq-footer h3 { font-family: var(--gq-font-serif); font-size: 1rem; color: var(--gq-cream); margin: 0 0 1.25rem; }
.gq-footer ul { list-style: none; padding: 0; margin: 0; }
.gq-footer ul li { margin-bottom: .65rem; }
.gq-footer a { color: rgba(252,251,248,.7); font-size: .88rem; text-decoration: none; }
.gq-footer a:hover { color: var(--gq-gold); }
.gq-footer .brand-blurb { color: rgba(252,251,248,.7); font-size: .9rem; margin: 1rem 0; max-width: 18rem; }
.gq-social { display: flex; gap: .75rem; margin-top: 1rem; }
.gq-social a {
    width: 34px; height: 34px; border-radius: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid rgba(252,251,248,.2);
    color: var(--gq-cream); transition: background .2s, border-color .2s;
    text-decoration: none;
}
.gq-social a:hover { background: var(--gq-gold); border-color: var(--gq-gold); color: #fff; }

.gq-footer-bottom {
    margin-top: 3rem; padding-top: 1.25rem;
    border-top: 1px solid rgba(252,251,248,.1);
    display: flex; flex-wrap: wrap; gap: .75rem;
    align-items: center; justify-content: space-between;
    font-size: .75rem; color: rgba(252,251,248,.6);
}

/* Hide Astra header/footer only when home template is active (if Astra exists) */
.page-template-template-gq-home .site-header,
.page-template-template-gq-home .site-footer,
.page-template-template-gq-home .entry-header {
    display: none !important;
}
.page-template-template-gq-home .site-content { padding: 0 !important; }
.page-template-template-gq-home .entry-content { margin: 0 !important; padding: 0 !important; max-width: none !important; }


.gq-mobile-nav {
    display: none;
}

.gq-mobile-nav.active {
    display: block;
}










@media (min-width: 992px) {
    .gq-mobile-nav {
        display: none !important;
    }
}

#menu-menu-1 {
  display: flex;
  gap: 46px;
}

.gq-mobile-nav,
.gq-search-form {
    display: none;
}

.gq-mobile-nav.active,
.gq-search-form.active {
    display: block;
}

.gq-menu-toggle {
    display: none;
}

.gq-book h3 a, .latest-class{
  color: oklch(16% .01 60);
  text-decoration: unset !important;
  letter-spacing: -.01em;
  font-weight: 500;
  font-size: 1.05rem;
}

.gq-book:hover .gq-book h3 a, .latest-class:hover{
  color: oklch(68% .085 70) !important;	
}
.gq-book:hover{
  color: oklch(68% .085 70) !important;	
}

@media (max-width: 991px) {

	.gq-signin {
    display: none;
	}
	
    .gq-nav {
        display: none;
    }

    .gq-menu-toggle {
        display: block;
        cursor: pointer;
        border: 0;
        background: transparent;
        font-size: 30px;
    }

    .gq-mobile-nav {
        width: 100%;
        background: #fff;
        padding: 20px;
    }

    .gq-mobile-menu {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .gq-mobile-menu li {
        margin-bottom: 12px;
    }

    .gq-mobile-menu a {
        text-decoration: none;
        display: block;
    }
}


@media (max-width: 667px) {
.gq-container {
  width: 95%;  
  padding: 0px 0px;
}
}










/* ======================================
   SINGLE PRODUCT
====================================== */

.single-product div.product{
    display:flex;
    flex-wrap:wrap;
    gap:60px;
    align-items:flex-start;
    max-width:1400px;
    margin:60px auto;
}

/* Left Column */

.single-product .woocommerce-product-gallery{
    flex:0 0 40%;
    max-width:40%;
}

.single-product .woocommerce-product-gallery img{
    width:100%;
    display:block;
    border-radius:16px;
}

/* Right Column */

.single-product .summary{
    flex:1;
}

.single-product .product_title{
    font-size:48px;
    line-height:1.15;
    margin-bottom:20px;
    font-weight:700;
}

.single-product .price{
    font-size:32px;
    font-weight:700;
    color:#92705C;
    margin-bottom:25px;
}

.single-product .price del{
    opacity:.5;
    margin-right:10px;
}

.single-product .price ins{
    text-decoration:none;
}

.single-product .woocommerce-product-details__short-description{
    font-size:18px;
    line-height:1.8;
    color:#666;
    margin-bottom:30px;
}

/* Quantity */

.single-product .quantity{
    margin-right:15px;
}

.single-product .quantity .qty{
    width:90px;
    height:52px;
    border:1px solid #ddd;
    border-radius:8px;
    text-align:center;
}

/* Cart */

.single-product form.cart{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:15px;
    margin-bottom:30px;
}

/* Add to Cart */

.single_add_to_cart_button{
    background:#92705C !important;
    color:#fff !important;
    border:none !important;
    border-radius:8px !important;
    padding:16px 35px !important;
    font-weight:600;
}

.single_add_to_cart_button:hover{
    background:#705442 !important;
}

/* Meta */

.product_meta{
    margin-top:30px;
    padding-top:20px;
    border-top:1px solid #eee;
    color:#777;
}

.product_meta span{
    display:block;
    margin-bottom:10px;
}

/* Tabs */

.woocommerce-tabs{
    margin-top:80px;
}

.woocommerce-tabs ul.tabs{
    display:flex;
    gap:10px;
    border:none;
    padding:0;
}

.woocommerce-tabs ul.tabs li{
    border:none !important;
    background:none !important;
    padding:0 !important;
}



.woocommerce-Tabs-panel{
    background:#fafafa;
    padding:30px;
    border-radius:12px;
}

/* Related Products */

.related.products{
    margin-top:100px;
}

.related.products > h2{
    text-align:center;
    margin-bottom:40px;
}

.related.products ul.products{
    display:grid !important;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.related.products li.product{
    width:100% !important;
    margin:0 !important;
    border:1px solid #eee;
    border-radius:15px;
    overflow:hidden;
    padding:15px;
}

.related.products li.product img{
    border-radius:10px;
}

.related.products .woocommerce-loop-product__title{
    font-size:18px;
    margin:15px 0;
}

.related.products .price{
    color:#92705C;
    font-weight:700;
}

/* Reviews */

#reviews{
    margin-top:20px;
}

.woocommerce-review__author{
    font-weight:700;
}


.gq-book-single{
    padding:80px 0;
}

.gq-book-layout{
    display:grid;
    grid-template-columns:420px 1fr;
    gap:80px;
    align-items:start;
}

.gq-book-cover img{
    width:100%;
    border-radius:18px;
    box-shadow:0 20px 50px rgba(0,0,0,.12);
}

.gq-book-info h1{
    font-size:56px;
    line-height:1.1;
    margin-bottom:20px;
}

.gq-price{
    font-size:38px;
    color:#92705C;
    font-weight:700;
    margin:25px 0;
}

.gq-description{
    font-size:18px;
    line-height:1.8;
    color:#666;
}

.single_add_to_cart_button{
    background:#92705C !important;
    color:#fff !important;
    border:none !important;
    border-radius:10px !important;
    padding:16px 40px !important;
    margin-top:20px;
}

.gq-book-content{
    margin-top:80px;
    padding-top:50px;
    border-top:1px solid #eee;
}

.gq-book-content h2{
    margin-bottom:20px;
}

@media(max-width:991px){

    .gq-book-layout{
        grid-template-columns:1fr;
        gap:40px;
    }

    .gq-book-info h1{
        font-size:36px;
    }
}


/* Mobile */

@media(max-width:991px){

    .single-product div.product{
        flex-direction:column;
        gap:30px;
    }

    .single-product .woocommerce-product-gallery,
    .single-product .summary{
        max-width:100%;
        flex:100%;
    }

    .single-product .product_title{
        font-size:34px;
    }

    .related.products ul.products{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:575px){

    .related.products ul.products{
        grid-template-columns:1fr;
    }

    .single-product form.cart{
        flex-direction:column;
        align-items:stretch;
    }

    .single_add_to_cart_button{
        width:100%;
    }
}


.single-product .entry-header {
  display: none;
}