/* ============ FONTS (self-hosted) ============ */
/* Body / UI — Vazirmatn */
@font-face{font-family:'Vazirmatn';src:url('../fonts/Vazirmatn-Light.woff2') format('woff2');font-weight:300;font-display:swap;}
@font-face{font-family:'Vazirmatn';src:url('../fonts/Vazirmatn-Regular.woff2') format('woff2');font-weight:400;font-display:swap;}
@font-face{font-family:'Vazirmatn';src:url('../fonts/Vazirmatn-Medium.woff2') format('woff2');font-weight:500;font-display:swap;}
@font-face{font-family:'Vazirmatn';src:url('../fonts/Vazirmatn-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap;}
@font-face{font-family:'Vazirmatn';src:url('../fonts/Vazirmatn-Bold.woff2') format('woff2');font-weight:700;font-display:swap;}
@font-face{font-family:'Vazirmatn';src:url('../fonts/Vazirmatn-Black.woff2') format('woff2');font-weight:900;font-display:swap;}
/* Display — Amiri (classical naskh, scholarly) */
@font-face{font-family:'Amiri';src:url('../fonts/Amiri-Regular.ttf') format('truetype');font-weight:400;font-display:swap;}
@font-face{font-family:'Amiri';src:url('../fonts/Amiri-Bold.ttf') format('truetype');font-weight:700;font-display:swap;}
/* Numerals — Lalezar (heavy display, for the ledger figures) */
@font-face{font-family:'Lalezar';src:url('../fonts/Lalezar-Regular.ttf') format('truetype');font-weight:400;font-display:swap;}

/* ============ TOKENS ============ */
:root{
  --ink:#15130D;        /* deep warm near-black */
  --ink-2:#1D1A11;
  --ink-3:#0F0D08;
  --gold:#C9A24B;
  --gold-soft:#D7B873;
  --gold-bright:#ECD7A0;
  --cream:#ECE5D2;
  --cream-dim:#A79C81;
  --parchment:#E9DFC6;  /* warm, slightly saturated ledger paper */
  --parchment-2:#EFE7D2;
  --ink-on-paper:#1B190F;
  --paper-dim:#6E664E;
  --seal:#8C2B1B;       /* oxblood */
  --seal-2:#A6402C;
  --line-gold:rgba(201,162,75,.30);
  --line-paper:rgba(110,102,72,.28);
  --maxw:1180px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;background:var(--ink);color:var(--cream);
  font-family:'Vazirmatn',system-ui,sans-serif;font-weight:400;
  line-height:2;letter-spacing:-.1px;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(20px,5vw,56px);}

/* display helpers */
.amiri{font-family:'Amiri',serif;font-weight:700;line-height:1.4;}
.num{font-family:'Lalezar',cursive;font-weight:400;line-height:1;font-feature-settings:"ss01";}

.eyebrow{
  font-size:.78rem;font-weight:600;letter-spacing:1.5px;
  color:var(--gold);display:inline-flex;align-items:center;gap:.6rem;
}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--gold);opacity:.7;display:inline-block;}

/* ============ NAV ============ */
header.nav{
  position:sticky;top:0;z-index:50;
  backdrop-filter:blur(10px);
  background:linear-gradient(to bottom,rgba(21,19,13,.92),rgba(21,19,13,.72));
  border-bottom:1px solid var(--line-gold);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:14px;}
.brand{display:flex;flex-direction:column;line-height:1.2;}
.brand b{font-family:'Amiri',serif;font-weight:700;font-size:1.35rem;color:var(--gold-bright);letter-spacing:.5px;white-space:nowrap;}
.brand span{font-size:.72rem;color:var(--cream-dim);font-weight:500;}
.nav-links{display:flex;align-items:center;gap:clamp(14px,2.4vw,30px);}
.nav-links a.lnk{font-size:.95rem;color:var(--cream);opacity:.82;transition:opacity .2s,color .2s;}
.nav-links a.lnk:hover{opacity:1;color:var(--gold-soft);}
.btn{
  display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;border:0;
  font-family:inherit;font-size:.98rem;font-weight:600;
  padding:.72rem 1.5rem;border-radius:2px;transition:transform .18s ease,box-shadow .25s ease,background .25s;
}
.btn-gold{background:var(--gold);color:#1a160c;box-shadow:0 0 0 1px var(--gold) inset,0 8px 26px -12px rgba(201,162,75,.7);}
.btn-gold:hover{background:var(--gold-bright);transform:translateY(-2px);box-shadow:0 14px 30px -12px rgba(201,162,75,.85);}
.btn-ghost{background:transparent;color:var(--cream);box-shadow:0 0 0 1px var(--line-gold) inset;}
.btn-ghost:hover{color:var(--gold-bright);box-shadow:0 0 0 1px var(--gold) inset;transform:translateY(-2px);}
.nav-cta{display:inline-flex;}
@media(max-width:760px){.nav-links a.lnk{display:none;}}

/* ============ HERO ============ */
.hero{position:relative;padding-block:clamp(56px,9vw,120px) clamp(60px,9vw,118px);overflow:hidden;}
.hero::before{ /* ambient gold glow */
  content:"";position:absolute;inset:auto -10% -40% 30%;width:60vw;height:60vw;border-radius:50%;
  background:radial-gradient(circle,rgba(201,162,75,.14),transparent 62%);filter:blur(8px);pointer-events:none;
}
.hero-grid{position:relative;display:grid;grid-template-columns:1fr;gap:48px;align-items:center;}
@media(min-width:920px){.hero-grid{grid-template-columns:1.25fr .85fr;gap:56px;}}

.hero h1{
  font-family:'Amiri',serif;font-weight:700;
  font-size:clamp(3.4rem,11vw,7.6rem);line-height:1.02;margin:.5rem 0 0;
  color:var(--cream);letter-spacing:-1px;
}
.hero h1 .accent{color:var(--gold);}
.hero .lede{
  font-size:clamp(1.05rem,1.7vw,1.28rem);color:var(--cream);opacity:.86;
  max-width:42ch;margin:1.4rem 0 0;font-weight:400;line-height:1.95;
}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:2.1rem;}
.hero-meta{
  display:flex;flex-wrap:wrap;gap:0 28px;margin-top:2.4rem;
  border-top:1px solid var(--line-gold);padding-top:1.3rem;
}
.hero-meta .stat{display:flex;align-items:baseline;gap:.5rem;}
.hero-meta .stat b{font-family:'Lalezar',cursive;font-size:2rem;color:var(--gold-bright);line-height:1;}
.hero-meta .stat span{font-size:.92rem;color:var(--cream-dim);}

/* Secession ornament panel (signature) */
.crest{position:relative;justify-self:center;width:min(360px,80vw);aspect-ratio:3/4;}
.crest svg{width:100%;height:100%;display:block;filter:drop-shadow(0 18px 40px rgba(0,0,0,.5));}
.crest .crest-label{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.2rem;
}
.crest .crest-label .mono{font-family:'Amiri',serif;font-weight:700;font-size:2.6rem;color:var(--gold-bright);}
.crest .crest-label small{font-size:.74rem;letter-spacing:2px;color:var(--cream-dim);}

/* ============ SECTION SHELL ============ */
section{position:relative;}
.band{padding-block:clamp(64px,9vw,118px);}
.sec-head{max-width:62ch;}
.sec-head h2{font-family:'Amiri',serif;font-weight:700;font-size:clamp(2.1rem,5vw,3.3rem);line-height:1.15;margin:.7rem 0 0;color:var(--cream);}
.sec-head p{color:var(--cream-dim);margin:1rem 0 0;font-size:1.05rem;}

/* divider rule with secession squares */
.rule{display:flex;align-items:center;gap:10px;margin:0;}
.rule i{display:block;height:1px;background:var(--line-gold);flex:1;}
.rule b{width:7px;height:7px;background:var(--gold);transform:rotate(45deg);flex:none;}

/* ============ THESIS ============ */
.thesis{background:var(--ink-2);border-block:1px solid var(--line-gold);}
.thesis-grid{display:grid;grid-template-columns:1fr;gap:40px;}
@media(min-width:880px){.thesis-grid{grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;}}
.pullquote{
  font-family:'Amiri',serif;font-weight:700;font-size:clamp(1.55rem,3.4vw,2.5rem);line-height:1.5;color:var(--gold-bright);
  position:relative;padding-inline-start:1.4rem;
}
.pullquote::before{content:"";position:absolute;inset-block:.2em;inset-inline-start:0;width:4px;background:var(--gold);}
.thesis-grid p{color:var(--cream);opacity:.85;font-size:1.06rem;}
.thesis-grid p + p{margin-top:1.1rem;}

/* ============ PILLARS ============ */
.pillars{display:grid;grid-template-columns:1fr;gap:18px;margin-top:48px;}
@media(min-width:760px){.pillars{grid-template-columns:repeat(3,1fr);}}
.pillar{
  background:linear-gradient(180deg,var(--ink-2),var(--ink-3));
  border:1px solid var(--line-gold);border-radius:3px;padding:30px 26px;position:relative;overflow:hidden;
  transition:transform .25s ease,border-color .25s ease;
}
.pillar:hover{transform:translateY(-5px);border-color:var(--gold);}
.pillar .pn{font-family:'Lalezar',cursive;font-size:3.4rem;color:var(--gold);opacity:.34;line-height:.8;}
.pillar h3{font-family:'Amiri',serif;font-weight:700;font-size:1.5rem;color:var(--cream);margin:.4rem 0 .6rem;}
.pillar p{color:var(--cream-dim);font-size:.98rem;margin:0;}

/* ============ CURRICULUM — THE LEDGER ============ */
.ledger{background:var(--parchment);color:var(--ink-on-paper);}
.ledger::before{ /* subtle paper grain */
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background:
   radial-gradient(circle at 18% 12%,rgba(140,43,27,.04),transparent 40%),
   radial-gradient(circle at 85% 80%,rgba(201,162,75,.07),transparent 45%);
}
.ledger .wrap{position:relative;}
.ledger .eyebrow{color:var(--seal);}
.ledger .eyebrow::before{background:var(--seal);}
.ledger h2{color:var(--ink-on-paper);}
.ledger .lead{color:var(--paper-dim);max-width:60ch;margin:1rem 0 0;font-size:1.05rem;}

.part{margin-top:clamp(40px,5vw,64px);}
.part-head{display:flex;align-items:baseline;gap:1rem;border-bottom:2px solid var(--seal);padding-bottom:.6rem;}
.part-head .pidx{font-family:'Lalezar',cursive;font-size:1.5rem;color:var(--seal);}
.part-head h3{font-family:'Amiri',serif;font-weight:700;font-size:clamp(1.5rem,3vw,2.1rem);margin:0;color:var(--ink-on-paper);}
.part-head .count{margin-inline-start:auto;font-size:.85rem;color:var(--paper-dim);font-weight:500;}

.row{
  display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1.1rem;
  padding:1.05rem .25rem;border-bottom:1px solid var(--line-paper);
  transition:background .2s ease,padding-inline .2s ease;
}
.row:hover{background:rgba(201,162,75,.13);}
.row .rn{
  font-family:'Lalezar',cursive;font-size:1.7rem;color:var(--seal);
  width:2.4ch;text-align:center;line-height:1;opacity:.92;
}
.row .rt{font-size:clamp(1.05rem,2vw,1.3rem);font-weight:500;color:var(--ink-on-paper);}
.row .session-tag{font-size:.74rem;color:var(--paper-dim);font-weight:500;margin-inline-start:.6rem;}

/* ============ INSTRUCTOR ============ */
.instructor{background:var(--ink);}
.inst-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:center;}
@media(min-width:860px){.inst-grid{grid-template-columns:.8fr 1.2fr;gap:60px;}}
.portrait{
  position:relative;aspect-ratio:4/5;border-radius:4px;overflow:hidden;
  background:
    repeating-linear-gradient(135deg,rgba(201,162,75,.05) 0 14px,transparent 14px 28px),
    linear-gradient(160deg,var(--ink-2),var(--ink-3));
  border:1px solid var(--line-gold);
  display:flex;align-items:center;justify-content:center;
}
.portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.portrait .corner{position:absolute;width:26px;height:26px;border:2px solid var(--gold);opacity:.7;}
.portrait .corner.tl{top:14px;inset-inline-start:14px;border-inline-end:0;border-bottom:0;}
.portrait .corner.br{bottom:14px;inset-inline-end:14px;border-inline-start:0;border-top:0;}
.inst-body h2{font-family:'Amiri',serif;font-weight:700;font-size:clamp(2rem,4vw,2.9rem);margin:.4rem 0 0;color:var(--cream);}
.inst-body .role{color:var(--gold-soft);font-weight:600;font-size:1rem;margin-top:.3rem;}
.inst-body p{color:var(--cream);opacity:.85;margin:1.1rem 0 0;font-size:1.05rem;}
.editable{background:rgba(201,162,75,.10);border:1px dashed var(--line-gold);border-radius:3px;padding:.15rem .5rem;color:var(--gold-soft);font-size:.92rem;}

/* ============ ENROLL ============ */
.enroll{background:linear-gradient(155deg,var(--ink-2),var(--ink-3));border-block:1px solid var(--line-gold);}
.enroll-card{
  max-width:760px;margin-inline:auto;text-align:center;
  border:1px solid var(--gold);border-radius:6px;padding:clamp(34px,6vw,56px);position:relative;
  background:radial-gradient(circle at 50% 0%,rgba(201,162,75,.12),transparent 60%),var(--ink);
}
.enroll-card .ek{justify-content:center;}
.enroll-card h2{font-family:'Amiri',serif;font-weight:700;font-size:clamp(1.9rem,4vw,2.7rem);margin:.7rem 0 0;}
.price{display:flex;align-items:baseline;justify-content:center;gap:.8rem;margin:1.6rem 0 .3rem;flex-wrap:wrap;}
.price .now{font-family:'Lalezar',cursive;font-size:clamp(2.6rem,7vw,3.8rem);color:var(--gold-bright);line-height:1;}
.price .unit{font-size:1.05rem;color:var(--cream-dim);}
.price .was{color:var(--cream-dim);text-decoration:line-through;font-size:1.15rem;opacity:.7;}
.incl{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 18px;margin:1.6rem 0 2rem;}
.incl span{display:inline-flex;align-items:center;gap:.45rem;font-size:.95rem;color:var(--cream);opacity:.9;}
.incl span::before{content:"";width:7px;height:7px;background:var(--gold);transform:rotate(45deg);flex:none;}
.enroll-card .btn-gold{font-size:1.1rem;padding:.95rem 2.4rem;}
.guarantee{margin-top:1.1rem;font-size:.85rem;color:var(--cream-dim);}

/* ============ FAQ ============ */
.faq-list{margin-top:40px;border-top:1px solid var(--line-gold);}
details.q{border-bottom:1px solid var(--line-gold);}
details.q summary{
  list-style:none;cursor:pointer;padding:1.25rem .2rem;display:flex;align-items:center;gap:1rem;
  font-size:1.12rem;font-weight:600;color:var(--cream);transition:color .2s;
}
details.q summary::-webkit-details-marker{display:none;}
details.q summary:hover{color:var(--gold-soft);}
details.q summary .pm{margin-inline-start:auto;width:24px;height:24px;flex:none;position:relative;}
details.q summary .pm::before,details.q summary .pm::after{content:"";position:absolute;background:var(--gold);transition:transform .25s ease;}
details.q summary .pm::before{inset-block:0;inset-inline-start:50%;width:2px;transform:translateX(-50%);}
details.q summary .pm::after{inset-inline:0;inset-block:50%;height:2px;transform:translateY(-50%);}
details.q[open] summary .pm::before{transform:translateX(-50%) scaleY(0);}
details.q .ans{padding:0 .2rem 1.4rem;color:var(--cream-dim);font-size:1.02rem;max-width:70ch;}

/* ============ FOOTER ============ */
footer{background:var(--ink-3);border-top:1px solid var(--line-gold);padding-block:48px;}
.foot-grid{display:flex;flex-wrap:wrap;justify-content:space-between;gap:28px;align-items:flex-start;}
.foot-brand b{font-family:'Amiri',serif;font-weight:700;font-size:1.5rem;color:var(--gold-bright);}
.foot-brand p{color:var(--cream-dim);font-size:.92rem;margin:.5rem 0 0;max-width:34ch;}
.foot-links{display:flex;flex-wrap:wrap;gap:14px 26px;}
.foot-links a{color:var(--cream);opacity:.78;font-size:.95rem;transition:.2s;}
.foot-links a:hover{opacity:1;color:var(--gold-soft);}
.copy{margin-top:34px;border-top:1px solid var(--line-gold);padding-top:20px;color:var(--cream-dim);font-size:.85rem;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;}

/* ============ REVEAL ANIM ============ */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none;}
  html{scroll-behavior:auto;}
  .btn:hover,.pillar:hover{transform:none;}
}
:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px;border-radius:2px;}

/* ============ WOOCOMMERCE ============ */
.price .now .woocommerce-Price-amount,
.price .now .woocommerce-Price-currencySymbol{font-family:'Lalezar',cursive;font-size:inherit;color:inherit;}
.price .was .woocommerce-Price-amount,
.price .was .woocommerce-Price-currencySymbol{font-size:inherit;color:inherit;}

.zk-woocommerce{min-height:50vh;}
.zk-woocommerce .woocommerce,
.zk-woocommerce .woocommerce-checkout,
.zk-woocommerce .woocommerce-order,
.zk-woocommerce .woocommerce-account{
  color:var(--cream);
}
.zk-woocommerce h1,
.zk-woocommerce h2,
.zk-woocommerce h3,
.zk-woocommerce .woocommerce-order-details__title,
.zk-woocommerce .woocommerce-column__title{
  font-family:'Amiri',serif;font-weight:700;color:var(--cream);
}
.zk-woocommerce a{color:var(--gold-soft);}
.zk-woocommerce a:hover{color:var(--gold-bright);}

.zk-woocommerce .woocommerce-info,
.zk-woocommerce .woocommerce-message,
.zk-woocommerce .woocommerce-error,
.zk-woocommerce .woocommerce-notice{
  background:var(--ink-2);border:1px solid var(--line-gold);color:var(--cream);
  border-radius:3px;padding:1rem 1.2rem;
}
.zk-woocommerce .woocommerce-error{border-color:var(--seal);}

.zk-woocommerce form .form-row label,
.zk-woocommerce .woocommerce-billing-fields h3,
.zk-woocommerce .woocommerce-additional-fields h3,
.zk-woocommerce #order_review_heading{
  color:var(--cream);font-weight:600;
}
.zk-woocommerce form .input-text,
.zk-woocommerce form select,
.zk-woocommerce form textarea,
.zk-woocommerce .select2-container--default .select2-selection--single{
  background:var(--ink-2);border:1px solid var(--line-gold);color:var(--cream);
  border-radius:3px;padding:.65rem .8rem;min-height:44px;
}
.zk-woocommerce form .input-text:focus,
.zk-woocommerce form select:focus,
.zk-woocommerce form textarea:focus{
  border-color:var(--gold);outline:none;box-shadow:0 0 0 1px var(--gold);
}
.zk-woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--cream);}

.zk-woocommerce table.shop_table,
.zk-woocommerce #order_review table{
  background:var(--ink-2);border:1px solid var(--line-gold);border-radius:4px;
  border-collapse:separate;border-spacing:0;overflow:hidden;
}
.zk-woocommerce table.shop_table th,
.zk-woocommerce table.shop_table td,
.zk-woocommerce #order_review table th,
.zk-woocommerce #order_review table td{
  border-color:var(--line-gold);color:var(--cream);padding:.9rem 1rem;
}
.zk-woocommerce table.shop_table thead th{background:rgba(201,162,75,.08);}

.zk-woocommerce #payment{
  background:var(--ink-2);border:1px solid var(--line-gold);border-radius:4px;
}
.zk-woocommerce #payment ul.payment_methods{
  border-bottom:1px solid var(--line-gold);padding:1rem;
}
.zk-woocommerce #payment ul.payment_methods li{
  color:var(--cream);margin-bottom:.5rem;
}
.zk-woocommerce #payment div.payment_box{
  background:var(--ink);color:var(--cream-dim);border:1px solid var(--line-gold);
}
.zk-woocommerce #payment div.payment_box::before{border-bottom-color:var(--ink);}

.zk-woocommerce #place_order,
.zk-woocommerce .button,
.zk-woocommerce a.button,
.zk-woocommerce button.button,
.zk-woocommerce input.button{
  background:var(--gold)!important;color:#1a160c!important;border:0!important;
  border-radius:2px!important;font-family:inherit!important;font-weight:600!important;
  padding:.75rem 1.5rem!important;box-shadow:0 0 0 1px var(--gold) inset!important;
  transition:transform .18s ease,background .25s ease!important;
}
.zk-woocommerce #place_order:hover,
.zk-woocommerce .button:hover,
.zk-woocommerce a.button:hover,
.zk-woocommerce button.button:hover,
.zk-woocommerce input.button:hover{
  background:var(--gold-bright)!important;transform:translateY(-2px);
}

.zk-woocommerce .woocommerce-order-overview,
.zk-woocommerce .woocommerce-customer-details address{
  background:var(--ink-2);border:1px solid var(--line-gold);border-radius:4px;
  color:var(--cream);padding:1rem 1.2rem;
}
.zk-woocommerce .woocommerce-thankyou-order-received{
  font-family:'Amiri',serif;font-size:clamp(1.4rem,3vw,2rem);
  color:var(--gold-bright);margin-bottom:1.5rem;
}

.zk-woocommerce .woocommerce-form-login,
.zk-woocommerce .woocommerce-form-register,
.zk-woocommerce .woocommerce-MyAccount-navigation,
.zk-woocommerce .woocommerce-MyAccount-content{
  background:var(--ink-2);border:1px solid var(--line-gold);border-radius:4px;
  padding:1.2rem;margin-bottom:1rem;
}
.zk-woocommerce .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;}
.zk-woocommerce .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line-gold);}
.zk-woocommerce .woocommerce-MyAccount-navigation li:last-child{border-bottom:0;}
.zk-woocommerce .woocommerce-MyAccount-navigation a{
  display:block;padding:.75rem .5rem;color:var(--cream);opacity:.85;
}
.zk-woocommerce .woocommerce-MyAccount-navigation li.is-active a,
.zk-woocommerce .woocommerce-MyAccount-navigation a:hover{
  color:var(--gold-bright);opacity:1;
}

.zk-fallback .entry-content{color:var(--cream);opacity:.9;}
.zk-fallback .entry-content a{color:var(--gold-soft);}

@media(prefers-reduced-motion:reduce){
  .zk-woocommerce #place_order:hover,
  .zk-woocommerce .button:hover{transform:none;}
}

/* ============ CHECKOUT (enroll card layout) ============ */
.zk-checkout{margin-top:0;}
.zk-checkout-card{text-align:right;max-width:760px;}
.zk-checkout-card h2{text-align:center;}
.zk-checkout-lede{
  text-align:center;color:var(--cream-dim);font-size:1rem;
  margin:1rem auto 2rem;max-width:48ch;line-height:1.9;
}
.zk-checkout .woocommerce-form-login,
.zk-checkout .woocommerce-form-login-toggle,
.zk-checkout .woocommerce-form-coupon,
.zk-checkout .woocommerce-form-coupon-toggle,
.zk-checkout .woocommerce-additional-fields,
.zk-checkout .woocommerce-account-fields,
.zk-checkout .create-account,
.zk-checkout #ship-to-different-address,
.zk-checkout .woocommerce-shipping-fields,
.zk-checkout .woocommerce-shipping-totals,
.zk-checkout .woocommerce-billing-fields > h3{display:none!important;}
.zk-checkout .zk-order-table thead,
.zk-checkout .cart-subtotal,
.zk-checkout .woocommerce-checkout-review-order-table .cart-subtotal,
.zk-checkout .woocommerce-checkout-review-order-table .tax-total,
.zk-checkout .woocommerce-checkout-review-order-table .fee,
.zk-checkout .woocommerce-checkout-review-order-table .shipping{display:none;}
.zk-checkout .zk-order-table .product-total{text-align:left;white-space:nowrap;color:var(--gold-bright);}
.zk-checkout .zk-order-table .order-total th,
.zk-checkout .zk-order-table .order-total td{
  border-top:1px solid var(--line-gold);font-size:1.05rem;padding-top:1rem;
}
.zk-checkout .zk-order-table .order-total td{text-align:left;color:var(--gold-bright);font-weight:700;}
.zk-checkout .zk-order-review{margin-top:.5rem;}
.zk-checkout #payment{border:0;background:transparent;margin:0;}
.zk-checkout #payment .form-row.place-order{padding:0;margin-top:1.25rem;}
.zk-checkout .zk-billing-minimal .form-row:not(#billing_first_name_field):not(#billing_last_name_field):not(#billing_phone_field){display:none!important;}
.zk-checkout .zk-billing-hidden{display:none!important;}
.zk-checkout .zk-customer-details{margin-bottom:2rem;}
.zk-checkout .woocommerce-billing-fields__field-wrapper{
  display:grid;grid-template-columns:1fr;gap:0;
}
@media(min-width:640px){
  .zk-checkout .woocommerce-billing-fields__field-wrapper{
    grid-template-columns:1fr 1fr;
  }
  .zk-checkout #billing_phone_field{grid-column:1 / -1;}
}
.zk-checkout .form-row{margin:0 0 1rem;padding:0;}
.zk-checkout .form-row label{
  color:var(--cream);font-weight:600;font-size:.95rem;margin-bottom:.35rem;display:block;
}
.zk-checkout .form-row .required{color:var(--gold-bright);}
.zk-checkout .form-row .input-text,
.zk-checkout .form-row select,
.zk-checkout .form-row textarea{
  width:100%;background:var(--ink-2);border:1px solid var(--line-gold);color:var(--cream);
  border-radius:3px;padding:.75rem .85rem;min-height:48px;font-family:inherit;
}
.zk-checkout .form-row .input-text:focus{
  border-color:var(--gold);outline:none;box-shadow:0 0 0 1px var(--gold);
}
.zk-order-heading{
  font-family:'Amiri',serif;font-weight:700;font-size:clamp(1.4rem,3vw,1.9rem);
  color:var(--cream);margin:0 0 1rem;text-align:center;
}
.zk-checkout #order_review_heading{display:none;}
.zk-checkout table.shop_table,
.zk-checkout #order_review table{
  background:var(--ink-2);border:1px solid var(--line-gold);border-radius:4px;
  width:100%;margin-bottom:1.5rem;
}
.zk-checkout table.shop_table th,
.zk-checkout table.shop_table td,
.zk-checkout #order_review table th,
.zk-checkout #order_review table td{
  border-color:var(--line-gold);color:var(--cream);padding:.9rem 1rem;
}
.zk-checkout #payment{
  background:var(--ink-2);border:1px solid var(--line-gold);border-radius:4px;
  margin-top:.5rem;
}
.zk-checkout #payment ul.payment_methods,
.zk-checkout #payment ul.wc_payment_methods{
  border-bottom:1px solid var(--line-gold);padding:1rem 1.1rem;margin:0;list-style:none;
}
.zk-checkout #payment ul.payment_methods li,
.zk-checkout #payment ul.wc_payment_methods li{color:var(--cream);margin:0 0 .6rem;}
.zk-checkout #payment ul.payment_methods li:last-child,
.zk-checkout #payment ul.wc_payment_methods li:last-child{margin-bottom:0;}
.zk-checkout #payment .payment_methods label,
.zk-checkout #payment .wc_payment_methods label{
  display:flex;align-items:center;gap:.55rem;cursor:pointer;font-weight:600;color:var(--cream);
}
.zk-checkout #payment .payment_methods input[type="radio"],
.zk-checkout #payment .wc_payment_methods input[type="radio"]{
  accent-color:var(--gold);width:1.1rem;height:1.1rem;flex-shrink:0;
}
.zk-checkout #payment div.payment_box,
.zk-checkout #payment .payment_box{
  background:var(--ink);color:var(--cream-dim);border:1px solid var(--line-gold);
  border-radius:3px;padding:.85rem 1rem;margin-top:.5rem;
}
.zk-checkout #payment .zk-no-payment-methods{
  padding:1rem 1.1rem;margin:0;list-style:none;
}
.zk-checkout #payment div.form-row{padding:1rem 1.1rem 1.2rem;margin:0;}
.zk-checkout #place_order,
.zk-checkout .button.alt{
  width:100%;justify-content:center;font-size:1.05rem!important;
  padding:.95rem 1.5rem!important;margin-top:.25rem;
}
.zk-checkout .woocommerce-info,
.zk-checkout .woocommerce-message,
.zk-checkout .woocommerce-error{
  background:var(--ink-2);border:1px solid var(--line-gold);color:var(--cream);
  border-radius:3px;padding:1rem 1.1rem;margin-bottom:1.2rem;
}
.zk-checkout .woocommerce-error{border-color:var(--seal);}
.zk-checkout .product-quantity{color:var(--gold-bright);}

