/*
Theme Name: Sarkar Noor Divine
Theme URI: https://sarkarhealings.com
Description: Premium Islamic spiritual healing child theme — dark academia + illuminated manuscript aesthetic.
Author: Sarkar Healings
Template: generatepress
Version: 6.2.0
Text Domain: sarkar-noor
*/

:root {
  --emerald: #0A3D2E;
  --emerald-2: #0D4D3A;
  --emerald-deep: #05241b;
  --vellum: #FAF6EE;
  --vellum-2: #F5E6C8;
  --gold: #D4A017;
  --gold-soft: #E5C869;
  --gold-light: #F2E3B6;
  --gold-deep: #7A5D0B;
  --line: #e8dec3;
  --parchment-dim: #fcf9f2;
  --white: #ffffff;
  --ink: #1A1610;
  --ink-soft: #4A443A;
  --verdigris: #1B4D6E;
  --verdigris-strong: #123A54;
  --madder: #8C3A2B;
  --tier-a-bg: #DDEEDD; --tier-a-ink: #1E4D2B;
  --tier-b-bg: #cbe6ff; --tier-b-ink: #003957;
  --tier-c-bg: #F5E6C3; --tier-c-ink: #6B4E10;
  --tier-d-bg: #EAE6DD; --tier-d-ink: #4A443A;
  --font-display: "Playfair Display", "Times New Roman", serif;
  --font-body: "Source Serif 4", Georgia, serif;
  --font-arabic: "Amiri", "Traditional Arabic", serif;
  --font-ui: "Inter", system-ui, sans-serif;
  --step--1: clamp(.83rem,.8rem + .15vw,.9rem);
  --step-0: clamp(1rem,.95rem + .3vw,1.125rem);
  --step-1: clamp(1.2rem,1.1rem + .5vw,1.4rem);
  --step-2: clamp(1.5rem,1.3rem + .9vw,1.9rem);
  --step-3: clamp(1.9rem,1.55rem + 1.6vw,2.6rem);
  --step-4: clamp(2.3rem,1.8rem + 2.6vw,3.6rem);
  --measure: 70ch;
  --gutter: clamp(1rem,4vw,2.5rem);
  --radius: 10px;
  --arch: 999px 999px var(--radius) var(--radius);
  --shadow: 0 1px 2px rgba(34,30,23,.08),0 8px 24px rgba(34,30,23,.07);
  --khatam: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23C2A14D' d='M12 0l2.4 5.8L20.5 3.5 18.2 9.6 24 12l-5.8 2.4 2.3 6.1-6.1-2.3L12 24l-2.4-5.8-6.1 2.3 2.3-6.1L0 12l5.8-2.4L3.5 3.5l6.1 2.3z'/%3E%3C/svg%3E");
  --khatam-dim: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFFFFF' fill-opacity='.05' d='M12 0l2.4 5.8L20.5 3.5 18.2 9.6 24 12l-5.8 2.4 2.3 6.1-6.1-2.3L12 24l-2.4-5.8-6.1 2.3 2.3-6.1L0 12l5.8-2.4L3.5 3.5l6.1 2.3z'/%3E%3C/svg%3E");
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--vellum);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);line-height:1.7}
img{max-width:100%;height:auto;display:block}
a{color:var(--verdigris);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--verdigris-strong)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}

h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.15;color:var(--emerald);letter-spacing:.01em}
h1{font-size:var(--step-4);margin:0 0 .5em}
h2{font-size:var(--step-3);margin:2.2em 0 .6em}
h3{font-size:var(--step-2);margin:1.8em 0 .5em}
h4{font-family:var(--font-ui);font-size:var(--step-0);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin:1.6em 0 .4em}

.ar,[lang="ar"]{font-family:var(--font-arabic);font-size:1.35em;line-height:1.9;color:var(--emerald);direction:rtl;unicode-bidi:isolate}

.skip-link{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--emerald);padding:.6rem 1rem;z-index:200;font-family:var(--font-ui);font-weight:600}
.skip-link:focus{left:14px;top:14px}

.wrap{max-width:1240px;margin-inline:auto;padding-inline:var(--gutter)}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:var(--emerald);border-bottom:1px solid color-mix(in srgb,var(--gold) 45%,transparent)}
.site-header__inner{max-width:1240px;margin:0 auto;padding:.65rem var(--gutter);display:flex;align-items:center;gap:1.25rem}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}
.brand__mark, .custom-logo{width:34px;height:auto;max-height:34px;background:var(--khatam) center/contain no-repeat;flex:none}
.brand__name{font-family:var(--font-display);color:var(--vellum);font-size:1.25rem;letter-spacing:.03em;line-height:1.1}
.brand__name small{display:block;font-family:var(--font-ui);font-size:.62rem;color:var(--gold-soft);letter-spacing:.28em;text-transform:uppercase;margin-top:.15rem}

.nav-desktop{margin-inline-start:auto;display:none}
@media(min-width:960px){.nav-desktop{display:block}}
.nav-desktop>ul{display:flex;gap:.25rem;list-style:none;margin:0;padding:0}
.nav-desktop a,.nav-desktop button{font-family:var(--font-ui);font-size:.92rem;color:var(--vellum);text-decoration:none;background:none;border:0;cursor:pointer;padding:.7rem .85rem;border-radius:6px}
.nav-desktop li:hover>a,.nav-desktop li:hover>button,.nav-desktop a:focus-visible,.nav-desktop button[aria-expanded="true"]{background:var(--emerald-2);color:var(--gold-soft)}
.nav-desktop .has-panel{position:relative}

.nav-panel{position:absolute;top:calc(100% + 10px);inset-inline-start:50%;translate:-50% 0;min-width:720px;background:var(--vellum);border:1px solid var(--gold-soft);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem 1.4rem;opacity:0;visibility:hidden;transition:opacity .15s ease}
[dir="rtl"] .nav-panel{translate:50% 0}
.has-panel:hover .nav-panel,.has-panel:focus-within .nav-panel,.has-panel>button[aria-expanded="true"]+.nav-panel{opacity:1;visibility:visible}
.nav-panel__inner{display:grid;grid-template-columns:1fr 1.5fr;gap:1.25rem;align-items:start}
.nav-panel__search{padding-inline-end:1.25rem;border-inline-end:1px solid var(--gold-soft)}
.nav-panel__search form{display:flex;flex-direction:column;gap:.6rem}
.nav-panel__search input[type="search"]{font-family:var(--font-body);font-size:1rem;color:var(--ink);background:#fff;border:1px solid var(--gold-soft);border-radius:8px;padding:.7rem .9rem}
.nav-panel__search input[type="search"]:focus{outline:2px solid var(--gold);outline-offset:1px}
.nav-panel__hubs{min-width:0}
.nav-panel__grid{display:grid;grid-template-columns:1fr 1fr;gap:.15rem 2rem}
.nav-panel__grid a{display:block;padding:.45rem .5rem;border-radius:6px;color:var(--ink);text-decoration:none;font-size:.93rem}
.nav-panel__grid a:hover{background:var(--vellum-2);color:var(--verdigris-strong)}
.nav-panel__grid a small{display:block;color:var(--ink-soft);font-size:.78rem}
.nav-panel h4{margin:.2rem 0 .5rem}

.header-actions{display:flex;align-items:center;gap:.35rem;margin-inline-start:auto}
@media(min-width:960px){.header-actions{margin-inline-start:0}}
@media(min-width:960px){.header-actions .icon-btn[aria-label="Search"]{display:none}}
.icon-btn{width:42px;height:42px;display:grid;place-items:center;background:none;border:0;border-radius:8px;color:var(--vellum);cursor:pointer;text-decoration:none}
.icon-btn:hover{background:var(--emerald-2);color:var(--gold-soft)}
.icon-btn svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6}
.cart-count{position:absolute;translate:11px -11px;background:var(--gold);color:var(--emerald);font:700 .66rem var(--font-ui);min-width:16px;height:16px;border-radius:99px;display:grid;place-items:center;padding:0 3px}
.nav-toggle{display:grid}
@media(min-width:960px){.nav-toggle{display:none}}

/* Drawer */
.drawer{position:fixed;inset:0;z-index:150;visibility:hidden}
.drawer[data-open="true"]{visibility:visible}
.drawer__scrim{position:absolute;inset:0;background:rgba(13,43,37,.6);opacity:0;transition:opacity .2s}
.drawer[data-open="true"] .drawer__scrim{opacity:1}
.drawer__panel{position:absolute;top:0;bottom:0;inset-inline-end:0;width:min(86vw,360px);background:var(--emerald);color:var(--vellum);overflow-y:auto;translate:100% 0;transition:translate .22s ease;padding:1rem 1.2rem 2rem}
[dir="rtl"] .drawer__panel{translate:-100% 0}
.drawer[data-open="true"] .drawer__panel{translate:0 0}
.drawer__head{display:flex;align-items:center;margin-bottom:2rem;justify-content:space-between}
.drawer nav ul{list-style:none;margin:0;padding:0}
.drawer nav a,.drawer nav button{display:block;width:100%;text-align:start;color:var(--vellum);font-family:var(--font-ui);font-size:1.02rem;text-decoration:none;background:none;border:0;border-bottom:1px solid rgba(247,241,228,.12);padding:.85rem .2rem;cursor:pointer}
.drawer nav .sub a{font-size:.93rem;color:var(--gold-soft);padding-inline-start:1.1rem}
.drawer__close{margin-inline-start:auto}

/* Search modal */
.search-modal{position:fixed;inset:0;z-index:160;visibility:hidden}
.search-modal[data-open="true"]{visibility:visible}
.search-modal__scrim{position:absolute;inset:0;background:rgba(13,43,37,.7);opacity:0;transition:opacity .2s}
.search-modal[data-open="true"] .search-modal__scrim{opacity:1}
.search-modal__panel{position:absolute;top:12vh;left:50%;translate:-50% 0;width:min(92vw,640px);background:var(--vellum);border-radius:var(--radius);border:1px solid var(--gold-soft);box-shadow:var(--shadow);padding:2rem;opacity:0;transition:opacity .2s}
.search-modal[data-open="true"] .search-modal__panel{opacity:1}
.search-modal form{display:flex;gap:.6rem}
.search-modal input[type="search"]{flex:1;font-family:var(--font-body);font-size:1.05rem;color:var(--ink);background:#fff;border:1px solid var(--gold-soft);border-radius:8px;padding:.8rem 1rem}
.search-modal input[type="search"]:focus{outline:2px solid var(--gold);outline-offset:1px}
.search-modal__hint{font-family:var(--font-ui);font-size:.85rem;color:var(--ink-soft);margin:.9rem 0 0}
.search-modal__close{position:absolute;top:.7rem;inset-inline-end:.7rem;color:var(--ink-soft)}

/* Hero */
.hero{background:var(--emerald);color:var(--vellum);background-image:var(--khatam-dim);background-size:56px;padding:clamp(3rem,9vw,6.5rem) var(--gutter) clamp(3.5rem,10vw,7rem);text-align:center;position:relative;overflow:hidden}
.hero__content{position:relative;z-index:1}
.hero .ar{color:var(--gold-soft);font-size:clamp(1.4rem,3vw,2rem);margin-bottom:1.2rem;display:block}
.hero h1{color:var(--vellum);max-width:17ch;margin-inline:auto}
.hero p{max-width:52ch;margin:1rem auto 2rem;color:color-mix(in srgb,var(--vellum) 82%,transparent);font-size:var(--step-1)}

.btn{display:inline-block;font-family:var(--font-ui);font-weight:600;font-size:.95rem;letter-spacing:.04em;padding:.9rem 1.7rem;border-radius:99px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .2s,color .2s}
.btn--gold{background:var(--gold);color:var(--emerald)}
.btn--gold:hover{background:var(--gold-soft);color:var(--emerald)}
.btn--ghost{border-color:color-mix(in srgb,var(--gold) 65%,transparent);color:var(--gold-soft)}
.btn--ghost:hover{background:var(--emerald-2);color:var(--vellum)}
.btn--outline{border:1px solid var(--gold-soft);color:var(--emerald);background:transparent}
.btn--outline:hover{background:var(--emerald);color:var(--vellum)}
.hero .btn + .btn{margin-inline-start:.6rem}

/* Sections */
.section{padding-block:clamp(2.5rem,7vw,4.5rem)}
.section--tint{background:var(--vellum-2)}
.section__head{max-width:var(--measure);margin:0 auto 2.2rem;text-align:center}
.section__head p{color:var(--ink-soft)}
.eyebrow{font-family:var(--font-ui);font-size:.75rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep);display:block;margin-bottom:.6rem}
.eyebrow--emerald{color:var(--emerald)}
.hero .eyebrow,.verse-spotlight .eyebrow{color:var(--gold-soft)}

/* Hub grid */
.hub-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));list-style:none;margin:0;padding:0}
.hub-card{background:var(--vellum);border:1px solid var(--gold-soft);border-radius:var(--radius);padding:1.3rem;position:relative;transition:box-shadow .15s,translate .15s}
.hub-card:hover{box-shadow:var(--shadow);translate:0 -2px}
.hub-card::before{content:"";width:16px;height:16px;display:block;margin-bottom:.8rem;background:var(--khatam) center/contain no-repeat;opacity:.85}
.hub-card a{font-family:var(--font-display);font-size:1.18rem;color:var(--emerald);text-decoration:none}
.hub-card p{margin:.35rem 0 0;font-size:.88rem;color:var(--ink-soft);line-height:1.55}

/* Trust strip */
.trust-strip{background:var(--vellum-2);padding:3rem var(--gutter);border-top:2px solid color-mix(in srgb,var(--gold) 20%,transparent);border-bottom:2px solid color-mix(in srgb,var(--gold) 20%,transparent)}
.trust-strip__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;text-align:center}
.stat__num{display:block;font-family:var(--font-display);font-size:3rem;font-weight:700;color:var(--emerald);line-height:1.1}
.stat__label{font-family:var(--font-ui);font-size:.9rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--ink-soft)}

/* Verse spotlight */
.verse-spotlight{background:var(--emerald);color:var(--vellum);background-image:var(--khatam-dim);background-size:56px;padding:5rem var(--gutter);text-align:center}
.verse-spotlight__inner{max-width:800px}
.verse-spotlight__mark{width:44px;height:44px;display:inline-block;margin-bottom:1.2rem;background:var(--khatam) center/contain no-repeat}
.verse-spotlight__ar{font-size:clamp(2rem,4vw,3rem);color:var(--gold-soft);margin:0 0 2rem;line-height:1.8}
.verse-spotlight__tr{font-family:var(--font-body);font-style:italic;font-size:1.3rem;opacity:.92;margin:0 0 1rem}
.verse-spotlight__ref{font-family:var(--font-ui);font-weight:600;letter-spacing:.1em;font-size:.9rem;color:var(--gold-soft);margin:0}

/* CTA Ruqyah */
.cta-ruqyah{background:var(--vellum-2);padding:6rem var(--gutter);text-align:center}
.cta-ruqyah__inner{max-width:700px}
.cta-ruqyah h2{margin-top:0;margin-bottom:1.2rem}
.cta-ruqyah p{font-size:1.15rem;color:var(--ink);line-height:1.6;margin:0 0 2rem}
.feature-list{list-style:none;padding:0;margin:0 auto 2.5rem;display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;font-family:var(--font-ui);font-weight:500;font-size:.95rem;color:var(--ink-soft)}
.feature-list li{display:flex;align-items:center;gap:.5rem}
.feature-list li::before{content:"";width:12px;height:12px;flex:none;background:var(--khatam) center/contain no-repeat}

/* Card grid */
.card-grid{display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));list-style:none;margin:0;padding:0}
.card__media{border-radius:var(--arch);overflow:hidden;border:1px solid var(--gold-soft);aspect-ratio:4/4.6;background:var(--vellum-2);margin-bottom:.9rem}
.card__title{font-family:var(--font-display);font-size:1.15rem;line-height:1.3;margin:0}
.card__title a{color:var(--emerald);text-decoration:none}
.card__meta{font-family:var(--font-ui);font-size:.8rem;color:var(--ink-soft);margin-top:.3rem}

/* Ayat card */
.ayah-arabic{width:100%;height:100%;display:grid;place-items:center;padding:1.5rem;text-align:center;font-family:var(--font-arabic);font-size:1.15em;color:var(--emerald);direction:rtl}
.ayah-trans{font-size:.85rem;color:var(--ink-soft);font-style:italic;margin-top:.5rem}
.ayah-note{font-size:.8rem;color:var(--ink-soft);margin-top:.3rem}

/* Tasbih */
.tasbih{text-align:center;margin-top:2rem}
.tasbih__line{height:2px;background:linear-gradient(to right,transparent,var(--gold) 20%,var(--gold) 80%,transparent);margin:1.5rem auto;max-width:600px}
.tasbih__row{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}
.bead{background:var(--vellum);border:1px solid var(--gold-soft);border-radius:12px;padding:1rem 1.2rem;cursor:pointer;transition:all .2s;text-align:center;min-width:120px}
.bead:hover{border-color:var(--gold);box-shadow:0 2px 8px rgba(0,0,0,.08)}
.bead--complete{background:var(--gold);color:var(--emerald);border-color:var(--gold)}
.bead__ar{display:block;font-family:var(--font-arabic);font-size:1.1em;color:var(--emerald);margin-bottom:.3rem;direction:rtl}
.bead__en{display:block;font-family:var(--font-ui);font-size:.72rem;color:var(--ink-soft);letter-spacing:.02em}
.bead__count{display:block;font-family:var(--font-ui);font-size:.85rem;font-weight:600;color:var(--gold-deep);margin-top:.3rem}

/* Product cards */
.product-grid{display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.p-card{background:transparent;text-align:center}
.p-card__img{border-radius:var(--arch);overflow:hidden;border:1px solid var(--gold-soft);aspect-ratio:1/1;background:var(--vellum-2);margin-bottom:.9rem;position:relative}
.p-card__img img{width:100%;height:100%;object-fit:cover}
.p-card__sale{position:absolute;top:.8rem;right:.8rem;background:var(--madder);color:#fff;font:700 .7rem var(--font-ui);padding:.25rem .6rem;border-radius:4px}
.p-card__title{font-family:var(--font-display);font-size:1.1rem;color:var(--emerald);margin:0 0 .3rem}
.p-card__price{font-family:var(--font-ui);font-weight:600;color:var(--verdigris-strong)}
.p-card__price del{color:var(--ink-soft);font-weight:400;margin-inline-end:.4rem}
.p-card__cta{display:inline-block;margin-top:.8rem;font-family:var(--font-ui);font-weight:600;font-size:.88rem;color:var(--gold-deep);text-decoration:none;border:1px solid var(--gold-soft);border-radius:99px;padding:.6rem 1.4rem;transition:all .2s}
.p-card__cta:hover{background:var(--emerald);color:var(--vellum);border-color:var(--emerald)}

/* FAQ */
.faq-list{max-width:var(--measure);margin:0 auto}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{font-family:var(--font-display);font-size:1.15rem;color:var(--emerald);padding:1.2rem 0;cursor:pointer;list-style:none}
.faq-item summary::before{content:"+";margin-inline-end:.6rem;font-weight:700;color:var(--gold)}
.faq-item[open] summary::before{content:"−"}
.faq-item p{padding:0 0 1.2rem;color:var(--ink-soft);font-size:.95rem;line-height:1.7}

/* E-E-A-T badge */
.eeat-badge{background:var(--parchment-dim);border:1px solid var(--line);border-radius:6px;padding:.6rem 1rem;margin-bottom:1.8rem;font-family:var(--font-ui);font-size:.85rem;color:var(--ink-soft);display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.eeat-badge__verified{color:var(--emerald-deep);font-weight:600}

/* Disclaimer */
.sarkar-spiritual-disclaimer{background:var(--parchment-dim);border:1px solid var(--line);padding:1.25rem;border-radius:8px;margin:2.5rem 0 1.25rem;font-family:var(--font-ui);font-size:.9rem;line-height:1.6;color:var(--ink-soft)}
.sarkar-spiritual-disclaimer strong{color:var(--emerald-deep)}

/* Hubs footer */
.sarkar-hubs-footer{margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid var(--line)}
.sarkar-hubs-footer h3{font-family:var(--font-display);font-size:1.5rem;color:var(--emerald);margin-bottom:1rem}
.hub-list-plain{list-style:none;padding:0;margin:0}
.hub-link-plain a{padding:.25rem 0;display:block;color:var(--ink);text-decoration:none}
.hub-link-rich{display:block;padding:.45rem .5rem;border-radius:6px;color:var(--ink);text-decoration:none;font-size:.93rem;border:1px solid var(--line)}
.hub-link-rich:hover{background:var(--vellum-2);color:var(--verdigris-strong)}
.hub-link-rich small{display:block;color:var(--ink-soft);font-size:.78rem}

/* Archive headers */
.archive-hero{background:var(--emerald);color:var(--vellum);background-image:var(--khatam-dim);background-size:56px;padding:3.5rem 1rem;text-align:center;border-bottom:3px solid var(--gold);margin-bottom:2.5rem}
.archive-hero .wrap{max-width:850px}
.archive-hero h1{color:var(--vellum);font-family:var(--font-display);font-size:clamp(2rem,4vw,3.2rem);margin-bottom:1rem}
.archive-hero .ar{font-size:2.2rem;color:var(--gold-soft);display:block;margin-bottom:.8rem}
.archive-hero__sub{font-family:var(--font-body);font-size:1.25rem;color:var(--gold-light);font-style:italic;max-width:650px;margin:0 auto 1.5rem}
.archive-hero__desc{font-size:1rem;opacity:.9;max-width:700px;margin:0 auto}

/* Search results */
.search-results{max-width:var(--measure);margin:0 auto}
.search-result-item{display:block;padding:1rem;border:1px solid var(--line);border-radius:8px;margin-bottom:.75rem;text-decoration:none;color:var(--ink);transition:border-color .15s}
.search-result-item:hover{border-color:var(--gold-soft)}
.search-result-type{font-family:var(--font-ui);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--gold-deep)}
.search-result-title{display:block;font-family:var(--font-display);font-size:1.1rem;color:var(--emerald);margin:.2rem 0}
.search-result-excerpt{display:block;font-size:.88rem;color:var(--ink-soft);line-height:1.5}

/* Services */
.services-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.service-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 20px rgba(0,0,0,.05);text-align:center;display:flex;flex-direction:column;align-items:center}
.service-card__icon{font-size:3rem;margin-bottom:1rem}
.service-card__title{color:var(--emerald);font-size:1.5rem;margin:0 0 1rem;font-family:var(--font-display)}
.service-card__desc{color:var(--ink-soft);font-size:1rem;line-height:1.6;margin-bottom:1.5rem;flex-grow:1}
.service-card__link{font-family:var(--font-ui);font-weight:600;color:var(--verdigris);text-decoration:none}

/* Cart drawer */
.cart-drawer{position:fixed;inset:0;z-index:170;visibility:hidden}
.cart-drawer[data-open="true"]{visibility:visible}
.cart-drawer__scrim{position:absolute;inset:0;background:rgba(13,43,37,.6);opacity:0;transition:opacity .2s}
.cart-drawer[data-open="true"] .cart-drawer__scrim{opacity:1}
.cart-drawer__panel{position:absolute;top:0;bottom:0;right:0;width:min(90vw,420px);background:var(--vellum);box-shadow:var(--shadow);translate:100% 0;transition:translate .22s ease;display:flex;flex-direction:column}
.cart-drawer[data-open="true"] .cart-drawer__panel{translate:0 0}
.cart-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:1.2rem 1.5rem;border-bottom:1px solid var(--line)}
.cart-drawer__head h3{margin:0;font-family:var(--font-display);color:var(--emerald)}
.cart-drawer__body{flex:1;overflow-y:auto;padding:1rem 1.5rem}
.cart-drawer__footer{border-top:1px solid var(--line);padding:1.2rem 1.5rem}
.cart-drawer__subtotal{display:flex;justify-content:space-between;font-family:var(--font-ui);font-weight:600;margin-bottom:1rem;font-size:1.05rem}
.cart-item{display:flex;gap:1rem;align-items:flex-start;padding:.8rem 0;border-bottom:1px solid var(--line)}
.cart-item__media{flex:none;width:60px;height:60px;border-radius:8px;overflow:hidden}
.cart-item__media img{width:100%;height:100%;object-fit:cover}
.cart-item__details{flex:1;min-width:0}
.cart-item__title{font-family:var(--font-display);font-size:.95rem;margin:0 0 .2rem}
.cart-item__title a{color:var(--emerald);text-decoration:none}
.cart-item__price{font-family:var(--font-ui);font-size:.88rem;font-weight:600;color:var(--verdigris-strong)}
.cart-item__qty{display:flex;align-items:center;gap:.3rem;margin-top:.3rem}
.cart-item__qty button{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:4px;background:#fff;cursor:pointer;font-size:1rem}
.cart-item__qty input{width:40px;text-align:center;border:1px solid var(--line);border-radius:4px;font-family:var(--font-ui);font-size:.85rem;padding:.2rem}
.cart-item__remove{border:none;background:none;cursor:pointer;color:var(--ink-soft);padding:.2rem}
.cart-item__remove:hover{color:var(--madder)}
.cart-empty{text-align:center;padding:2rem 0;color:var(--ink-soft)}

/* Footer */
.site-footer{background:var(--emerald);color:color-mix(in srgb,var(--vellum) 78%,transparent);margin-top:4rem}
.site-footer a{color:var(--gold-soft);text-decoration:none}
.site-footer a:hover{text-decoration:underline}
.site-footer__grid{max-width:1240px;margin-inline:auto;padding:3.5rem var(--gutter) 2rem;display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.site-footer h4{color:var(--vellum);margin-top:0}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li{padding:.28rem 0;font-size:.93rem}
.footer-note{border-top:1px solid rgba(247,241,228,.14);padding:1.4rem var(--gutter) 2rem;text-align:center;font-size:.82rem;font-family:var(--font-ui)}
.footer-note .disclaimer{max-width:75ch;margin:0 auto .8rem;color:color-mix(in srgb,var(--vellum) 55%,transparent)}

/* Utility */
.screen-reader-text{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}

/* Homepage full-width */
body.home .site-content{max-width:none;padding:0;margin:0}

/* Checkout */
.checkout-minimal-header{text-align:center;padding:3rem 0 2rem;background:var(--vellum)}
.checkout-minimal-header .checkout-logo a{font-family:var(--font-display);font-size:2rem;color:var(--emerald);text-decoration:none}
.checkout-trust-signal{display:flex;align-items:center;gap:.75rem;padding:1rem;background:rgba(27,77,110,.05);border:1px solid rgba(27,77,110,.2);margin-bottom:1rem;color:var(--verdigris-strong)}
.checkout-trust-signal .trust-text{font-family:var(--font-ui);font-size:.9rem;font-weight:500}

/* WooCommerce */
.woocommerce .button,.woocommerce a.button,.added_to_cart{background:var(--verdigris)!important;color:#fff!important;border-radius:99px!important;font-family:var(--font-ui)!important;font-weight:600!important;padding:.8rem 1.5rem!important}
.woocommerce .button:hover{background:var(--verdigris-strong)!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--font-display);font-size:1.1rem;color:var(--emerald)}
.woocommerce ul.products li.product img{border-radius:var(--arch);border:1px solid var(--gold-soft)}
.woocommerce .star-rating span{color:var(--gold)}
/* ==========================================================================
   HOMEPAGE EXTENSIONS (Ayat ash-Shifa, Dhikr, Shop, FAQ)
   ========================================================================== */

/* Ayat ash-Shifa (Folio Grid) */
.folio-list {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    margin-top: 2.5rem;
}
.folio {
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 1.8rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    box-shadow: 0 4px 12px rgba(10, 61, 46, 0.03);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.folio:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(10, 61, 46, 0.08);
}
.folio__ar {
    font-family: var(--font-arabic);
    font-size: 1.6rem;
    color: var(--emerald-deep);
    direction: rtl;
    line-height: 1.8;
}
.folio__ref {
    font-family: var(--font-ui);
    font-size: 0.8rem;
    color: var(--gold-deep);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 0.5rem;
    font-weight: 600;
}
.folio__title {
    font-family: var(--font-display);
    font-size: 1.15rem;
    color: var(--emerald);
    margin: 0 0 0.5rem;
    line-height: 1.4;
}
.folio__tr {
    font-family: var(--font-body);
    font-size: 0.95rem;
    color: var(--ink-soft);
    margin: 0;
    line-height: 1.6;
}

/* Dhikr Thread */
.dhikr {
    text-align: center;
    padding: 4rem var(--gutter);
}
.dhikr__ar {
    font-family: var(--font-arabic);
    font-size: 2.2rem;
    color: var(--emerald);
    margin: 1rem 0;
}
.dhikr__tr {
    font-family: var(--font-display);
    font-size: 1.3rem;
    color: var(--ink);
    font-style: italic;
    margin: 0 0 0.5rem;
}
.dhikr__ref {
    font-family: var(--font-ui);
    font-size: 0.85rem;
    color: var(--gold-deep);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 2rem;
}
.dhikr__lede {
    max-width: 650px;
    margin: 0 auto 3rem;
    color: var(--ink-soft);
    font-size: 1.05rem;
    line-height: 1.6;
}
.tasbih {
    position: relative;
    max-width: 900px;
    margin: 0 auto;
}
.tasbih__line {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--gold-soft);
    z-index: 1;
    transform: translateY(-50%);
}
.tasbih__row {
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 2;
    gap: 1rem;
    flex-wrap: wrap;
}
.bead {
    background: var(--white);
    border: 2px solid var(--gold);
    border-radius: 99px;
    padding: 0.8rem 1.2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.2rem;
    flex: 1;
    min-width: 140px;
}
.bead strong {
    font-family: var(--font-display);
    color: var(--emerald-deep);
    font-size: 1.1rem;
}
.bead span {
    font-family: var(--font-ui);
    font-size: 0.75rem;
    color: var(--ink-soft);
}
@media (max-width: 768px) {
    .tasbih__line { display: none; }
    .tasbih__row { flex-direction: column; }
    .bead { border-radius: 8px; }
}

/* Shop / Product Cards */
.product-grid {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    margin-top: 2.5rem;
}
.p-card {
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: 8px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.p-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(10, 61, 46, 0.08);
}
.p-card__img {
    aspect-ratio: 1;
    background: var(--vellum-2);
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid var(--line);
}
.p-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.p-card__sale {
    position: absolute;
    top: 10px;
    right: 10px;
    background: var(--madder);
    color: var(--white);
    font-family: var(--font-ui);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.2rem 0.6rem;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.p-card__body {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    flex: 1;
    justify-content: space-between;
}
.p-card__title {
    font-family: var(--font-display);
    font-size: 1.1rem;
    color: var(--emerald-deep);
    margin: 0 0 0.5rem;
    line-height: 1.3;
}
.p-card__price {
    font-family: var(--font-ui);
    margin: 0 0 1rem;
    font-size: 1rem;
    color: var(--verdigris-strong);
    font-weight: 600;
}
.p-card__price del {
    color: var(--ink-soft);
    font-weight: 400;
    margin-right: 0.5rem;
}
.p-card__cta {
    display: block;
    text-align: center;
    padding: 0.6rem;
    background: transparent;
    border: 1px solid var(--gold);
    color: var(--emerald);
    border-radius: 4px;
    font-family: var(--font-ui);
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
}
.p-card:hover .p-card__cta {
    background: var(--emerald);
    color: var(--white);
    border-color: var(--emerald);
}

/* FAQ Section */
.faq-list {
    max-width: 800px;
    margin: 2.5rem auto 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.faq-item {
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 0;
    overflow: hidden;
}
.faq-item summary {
    font-family: var(--font-display);
    font-size: 1.15rem;
    color: var(--emerald-deep);
    padding: 1.25rem 1.5rem;
    cursor: pointer;
    list-style: none;
    font-weight: 600;
    position: relative;
}
.faq-item summary::-webkit-details-marker {
    display: none;
}
.faq-item summary::after {
    content: '+';
    position: absolute;
    right: 1.5rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--gold);
    font-size: 1.5rem;
    font-family: var(--font-ui);
}
.faq-item[open] summary::after {
    content: '-';
}
.faq-item p {
    padding: 0 1.5rem 1.5rem;
    margin: 0;
    color: var(--ink-soft);
    font-size: 0.95rem;
    line-height: 1.6;
}
.btn--outline {
    display: inline-block;
    padding: 0.8rem 1.6rem;
    border: 2px solid var(--emerald);
    color: var(--emerald);
    border-radius: 99px;
    font-family: var(--font-ui);
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
}
.btn--outline:hover {
    background: var(--emerald);
    color: var(--white);
}

/* ==========================================================================
   ARCHIVE HEADERS & GRID TEMPLATES
   ========================================================================== */

/* Archive Hero Header */
.archive-header {
    background: var(--emerald-deep);
    color: var(--vellum);
    background-image: var(--khatam-dim);
    background-size: 56px;
    padding: clamp(3rem, 6vw, 4.5rem) var(--gutter);
    text-align: center;
    border-bottom: 3px solid var(--gold);
    margin-bottom: 2.5rem;
}
.archive-header .wrap {
    max-width: 850px;
    margin: 0 auto;
}
.archive-header__basmalah {
    display: block;
    font-size: clamp(1.6rem, 3.5vw, 2.4rem);
    color: var(--gold-soft);
    margin-bottom: 0.8rem;
}
.archive-header__title {
    color: var(--vellum);
    font-family: var(--font-display);
    font-size: clamp(1.8rem, 4vw, 2.8rem);
    margin: 0 0 0.8rem;
    line-height: 1.2;
}
.archive-header__subtitle {
    font-family: var(--font-body);
    font-size: 1.15rem;
    color: var(--gold-light);
    font-style: italic;
    max-width: 650px;
    margin: 0 auto 1rem;
}
.archive-header__desc {
    font-size: 0.98rem;
    color: color-mix(in srgb, var(--vellum) 88%, transparent);
    max-width: 720px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Names & Surahs Index Grids */
.names-index, .surah-index {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    margin: 2.5rem 0;
}
.name-card, .surah-card {
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    position: relative;
    box-shadow: 0 2px 8px rgba(10, 61, 46, 0.04);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.name-card:hover, .surah-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(10, 61, 46, 0.08);
    border-color: var(--gold-soft);
}
.name-card__number, .surah-card__number {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--vellum-2);
    border: 1px solid var(--gold-soft);
    color: var(--gold-deep);
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 0.85rem;
    display: grid;
    place-items: center;
}
.name-card__arabic, .surah-card__arabic {
    font-family: var(--font-arabic);
    font-size: 1.8rem;
    color: var(--emerald-deep);
    line-height: 1.6;
    margin-bottom: 0.3rem;
    direction: rtl;
}
.name-card__title, .surah-card__title {
    font-family: var(--font-display);
    font-size: 1.25rem;
    color: var(--emerald);
    margin: 0 0 0.3rem;
}
.name-card__meaning, .surah-card__meaning {
    font-family: var(--font-body);
    font-size: 0.95rem;
    color: var(--ink-soft);
    font-style: italic;
    margin-bottom: 0.8rem;
}
.name-card__meta, .surah-card__meta {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 0.8rem;
    font-family: var(--font-ui);
    font-size: 0.8rem;
}
.name-meta__grade {
    display: inline-block;
    padding: 0.2rem 0.6rem;
    border-radius: 4px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.grade--a { background: var(--tier-a-bg); color: var(--tier-a-ink); }
.grade--b { background: var(--tier-b-bg); color: var(--tier-b-ink); }
.grade--c, .grade--b-c { background: var(--tier-c-bg); color: var(--tier-c-ink); }
.grade--d { background: var(--tier-d-bg); color: var(--tier-d-ink); }
.name-meta__wird, .surah-meta__ayahs, .surah-meta__type {
    color: var(--ink-soft);
    font-weight: 500;
}
.name-card__benefit, .surah-card__theme {
    font-size: 0.9rem;
    color: var(--ink);
    line-height: 1.5;
    margin-bottom: 1.2rem;
    flex-grow: 1;
}
.name-card__link, .surah-card__link {
    align-self: flex-start;
    padding: 0.5rem 1rem;
    font-size: 0.85rem;
}

/* Post Cards & Post Grid for Archive / Blog */
.post-grid {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    margin: 2.5rem 0;
}
.post-card {
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 2px 8px rgba(10, 61, 46, 0.04);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.post-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(10, 61, 46, 0.08);
}
.post-card .entry-thumbnail img {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
}
.post-card .entry-header {
    padding: 1.25rem 1.25rem 0.5rem;
}
.post-card .entry-meta {
    font-family: var(--font-ui);
    font-size: 0.8rem;
    color: var(--ink-soft);
    display: flex;
    gap: 0.6rem;
    align-items: center;
    margin-bottom: 0.5rem;
}
.post-card .entry-category {
    color: var(--gold-deep);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.post-card .entry-title {
    font-family: var(--font-display);
    font-size: 1.2rem;
    line-height: 1.35;
    margin: 0;
}
.post-card .entry-title a {
    color: var(--emerald);
    text-decoration: none;
}
.post-card .entry-title a:hover {
    color: var(--gold-deep);
}
.post-card .entry-content {
    padding: 0 1.25rem;
    font-size: 0.92rem;
    color: var(--ink-soft);
    line-height: 1.6;
    flex-grow: 1;
}
.post-card .entry-footer {
    padding: 1rem 1.25rem 1.25rem;
}

/* Pagination */
.pagination, .nav-links {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    margin: 3rem 0;
    font-family: var(--font-ui);
}
.pagination .page-numbers, .nav-links .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 0.8rem;
    border-radius: 6px;
    border: 1px solid var(--line);
    background: var(--white);
    color: var(--ink);
    text-decoration: none;
    font-weight: 500;
    font-size: 0.9rem;
    transition: all 0.2s;
}
.pagination .page-numbers.current, .nav-links .page-numbers.current {
    background: var(--emerald);
    color: var(--vellum);
    border-color: var(--emerald);
    font-weight: 700;
}
.pagination .page-numbers:hover:not(.current), .nav-links .page-numbers:hover:not(.current) {
    background: var(--vellum-2);
    border-color: var(--gold);
    color: var(--emerald);
}

