/*
Theme Name: Hoghoogh Tasviri
Author: OpenAI
Description: Mobile-first Persian legal education and digital products theme
Version: 1.0.0
Text Domain: hoghoogh-tasviri
*/
@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;500;600;700;800;900&display=swap');
:root{
 --c-primary:#0b5bd3;--c-primary2:#164e8c;--c-accent:#17b3bd;--c-bg:#f6f9fc;--c-surface:#fff;--c-text:#132238;--c-muted:#6b7a90;--c-border:#dbe5ef;--radius:18px;--shadow:0 12px 35px rgba(12,54,96,.10);
}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:var(--c-bg);color:var(--c-text);font-family:"Vazirmatn",Tahoma,Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.95;letter-spacing:-.12px;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:"Vazirmatn",Tahoma,Arial,sans-serif;font-weight:800;line-height:1.4;letter-spacing:-.55px}p,li{font-weight:400}a{text-decoration:none;color:inherit}button,input,textarea,select{font-family:"Vazirmatn",Tahoma,Arial,sans-serif}small{font-weight:400}img{max-width:100%;height:auto}
.container{width:min(1180px,calc(100% - 32px));margin:auto}
.site-header{position:sticky;top:0;z-index:999;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--c-border)}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0}.brand{display:flex;align-items:center;gap:12px;font-weight:900;font-size:21px;letter-spacing:-.45px}.brand-mark{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--c-primary),var(--c-accent));display:grid;place-items:center;color:#fff;font-size:24px}.searchbox{flex:1;max-width:520px;position:relative}.searchbox input{width:100%;height:46px;border:1px solid var(--c-border);border-radius:999px;padding:0 18px;background:#f9fbfd;font:inherit;font-weight:400}.header-actions{display:flex;gap:8px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:12px;border:1px solid transparent;font-weight:700;letter-spacing:-.2px;cursor:pointer}.btn-primary{background:var(--c-primary);color:#fff}.btn-light{background:#fff;border-color:var(--c-border);color:var(--c-text)}
.main-nav{border-top:1px solid #edf2f6}.main-nav .container{display:flex;align-items:center;gap:22px;min-height:52px;overflow:auto}.main-nav a{white-space:nowrap;font-weight:600;font-size:14px;letter-spacing:-.15px}
.hero{padding:58px 0 34px;background:linear-gradient(135deg,#eef6ff 0,#fff 52%,#e9fbfb 100%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center}.hero h1{font-size:clamp(34px,5vw,64px);font-weight:900;line-height:1.32;letter-spacing:-1.2px;margin:0 0 16px}.hero h1 span{color:var(--c-primary)}.hero p{font-size:17px;font-weight:400;line-height:2.05;color:var(--c-muted);max-width:720px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.hero-card{background:#fff;border:1px solid var(--c-border);border-radius:26px;padding:26px;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero-card:before{content:"⚖";position:absolute;left:-20px;bottom:-40px;font-size:190px;opacity:.06}.notebook{background:repeating-linear-gradient(#fff,#fff 30px,#d8e7f8 31px);border-right:4px solid #ef4444;border-radius:18px;padding:26px 30px;min-height:340px}.notebook h3{color:var(--c-primary);font-size:30px;margin-top:10px}.notebook ul{list-style:none;padding:0}.notebook li{margin:14px 0;font-size:18px;font-weight:700}.notebook li:before{content:"✓";color:#0f9f6e;margin-left:8px}
.section{padding:46px 0}.section-title{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px}.section-title h2{margin:0;font-size:30px}.section-title p{margin:0;color:var(--c-muted)}
.categories{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.cat-card{background:#fff;border:1px solid var(--c-border);border-radius:18px;padding:20px 14px;text-align:center;box-shadow:0 6px 20px rgba(12,54,96,.06);transition:.2s}.cat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.cat-icon{width:58px;height:58px;border-radius:16px;background:#edf5ff;display:grid;place-items:center;margin:0 auto 12px;font-size:28px}.cat-card b{display:block}.cat-card small{color:var(--c-muted)}
.feature-strip{display:grid;grid-template-columns:repeat(6,1fr);background:#fff;border:1px solid var(--c-border);border-radius:20px;overflow:hidden}.feature{padding:18px;text-align:center;border-left:1px solid var(--c-border)}.feature:last-child{border-left:0}.feature strong{display:block}.feature span{display:block;font-size:12px;color:var(--c-muted)}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:#fff;border:1px solid var(--c-border);border-radius:18px;padding:14px;box-shadow:0 8px 24px rgba(12,54,96,.06)}.product-thumb{aspect-ratio:4/5;border-radius:14px;background:linear-gradient(135deg,#f1e9df,#fff);display:grid;place-items:center;font-size:58px}.product-card h3{font-size:17px}.price{font-weight:900;color:var(--c-primary);font-size:18px}.product-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.product-actions a{min-height:42px;border-radius:10px;display:grid;place-items:center;font-weight:800}.buy{background:var(--c-primary);color:#fff}.sample{border:1px solid var(--c-primary);color:var(--c-primary)}
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.article-card{background:#fff;border:1px solid var(--c-border);border-radius:18px;overflow:hidden}.article-cover{height:160px;background:linear-gradient(135deg,#102b4c,#8c633d);display:grid;place-items:center;color:#fff;font-size:54px}.article-body{padding:18px}.article-body p{color:var(--c-muted);font-size:14px}
.site-footer{background:#0d2b4c;color:#fff;margin-top:50px;padding:48px 0 20px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:30px}.site-footer h3{margin-top:0}.site-footer a{display:block;color:#dce8f5;margin:8px 0;font-size:14px}.trust-row{display:flex;gap:10px;flex-wrap:wrap}.trust{width:86px;height:86px;background:#fff;border-radius:14px;color:#607080;display:grid;place-items:center;text-align:center;font-size:12px}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:16px;color:#c3d3e4;font-size:13px;text-align:center}
.floating-tools{position:fixed;right:14px;top:50%;transform:translateY(-50%);z-index:998;background:#0c4a7f;border-radius:22px;padding:8px;box-shadow:var(--shadow)}.floating-tools a,.floating-tools button{width:44px;height:44px;border:0;background:transparent;color:#fff;display:grid;place-items:center;border-radius:12px;font-size:19px;cursor:pointer}.floating-tools a:hover,.floating-tools button:hover{background:rgba(255,255,255,.12)}
.theme-panel{position:fixed;left:14px;bottom:20px;z-index:999}.theme-toggle{width:46px;height:46px;border-radius:50%;border:0;background:#fff;box-shadow:var(--shadow);font-size:21px}.theme-colors{display:none;position:absolute;left:0;bottom:54px;background:#fff;padding:10px;border-radius:16px;box-shadow:var(--shadow);gap:8px;grid-template-columns:repeat(3,30px)}.theme-panel.open .theme-colors{display:grid}.theme-colors button{width:30px;height:30px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #ccd6e0}
[data-theme="orange"]{--c-primary:#f05a14;--c-primary2:#c7460f;--c-accent:#f5a45e;--c-bg:#fff9f5}
[data-theme="green"]{--c-primary:#0f8a5f;--c-primary2:#086c49;--c-accent:#5dc29c;--c-bg:#f5fcf8}
[data-theme="purple"]{--c-primary:#5b38a8;--c-primary2:#3f267e;--c-accent:#9b7ce1;--c-bg:#faf8ff}
[data-theme="turquoise"]{--c-primary:#0f9fa8;--c-primary2:#0a7c84;--c-accent:#55c7ce;--c-bg:#f4ffff}
[data-theme="wood"]{--c-primary:#7b4b2a;--c-primary2:#5c351c;--c-accent:#c99562;--c-bg:#fbf7f1}
.content-wrap{background:#fff;border:1px solid var(--c-border);border-radius:20px;padding:28px;margin-top:30px}.entry-title{font-size:36px}.entry-content{font-size:16px}.entry-content h2{margin-top:32px}
@media(max-width:1050px){.categories{grid-template-columns:repeat(3,1fr)}.product-grid{grid-template-columns:repeat(3,1fr)}.feature-strip{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.hero-grid{grid-template-columns:1fr}.floating-tools{right:8px}}
@media(max-width:780px){.searchbox{display:none}.main-nav .container{gap:14px}.categories{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,1fr)}.article-grid{grid-template-columns:1fr}.feature-strip{grid-template-columns:repeat(2,1fr)}.hero{padding-top:34px}.notebook{min-height:280px}.floating-tools{top:auto;bottom:82px;transform:none}.footer-grid{grid-template-columns:1fr}}
@media(max-width:480px){.container{width:min(100% - 20px,1180px)}.brand{font-size:18px}.brand-mark{width:40px;height:40px}.hero h1{font-size:34px}.hero p{font-size:16px}.hero-actions .btn{width:100%}.site-footer{padding-bottom:80px}}


@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;500;600;700;800;900&display=swap');


/* === Typography system: clean modern Persian === */
:root{
  --font-fa:"Vazirmatn",Tahoma,Arial,sans-serif;
  --text-xs:12px;
  --text-sm:13px;
  --text-base:15px;
  --text-md:16px;
  --text-lg:18px;
  --text-xl:22px;
  --text-2xl:28px;
  --text-3xl:36px;
  --lh-tight:1.35;
  --lh-normal:1.75;
  --lh-relaxed:1.95;
}

html,body,button,input,select,textarea{
  font-family:var(--font-fa)!important;
}

body{
  font-size:var(--text-base);
  line-height:var(--lh-normal);
  font-weight:400;
  letter-spacing:-0.012em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

p,li,input,textarea,select,label{
  font-size:var(--text-base);
  line-height:var(--lh-relaxed);
  font-weight:400;
}

a{font-weight:500}

h1,h2,h3,h4,h5,h6{
  margin-top:0;
  color:var(--c-text);
  line-height:var(--lh-tight);
  letter-spacing:-0.045em;
  font-weight:800;
}

h1{font-size:clamp(32px,4vw,56px)}
h2{font-size:clamp(26px,3vw,36px)}
h3{font-size:clamp(21px,2.2vw,28px)}
h4{font-size:19px}

.brand-text strong{
  font-size:21px;
  font-weight:900;
  letter-spacing:-0.04em;
}
.brand-text small{
  font-size:10px;
  font-weight:500;
  letter-spacing:-0.01em;
}

.main-nav a,
.drawer-nav b{
  font-size:14px;
  font-weight:600;
  letter-spacing:-0.02em;
}

.btn,
button,
.header-cart,
.header-icon,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
  font-family:var(--font-fa)!important;
  font-size:14px!important;
  font-weight:700!important;
  letter-spacing:-0.015em!important;
}

.hero>div p:first-child{
  font-size:16px!important;
  font-weight:700!important;
  letter-spacing:-0.02em;
}
.hero h1{
  font-weight:900;
  line-height:1.3;
  letter-spacing:-0.055em;
}
.hero p{
  font-size:17px;
  line-height:2;
  color:var(--c-muted);
  font-weight:400;
}

.section-title h2{
  font-weight:800;
  letter-spacing:-0.04em;
}
.section-title p{
  font-size:14px;
  font-weight:400;
  color:var(--c-muted);
}

.cat-card b,
.feature strong,
.product-card h3{
  font-weight:700;
  letter-spacing:-0.025em;
}
.cat-card small,
.feature span{
  font-weight:400;
}

.price{
  font-weight:800;
  letter-spacing:-0.02em;
}

.entry-title{
  font-weight:900;
  letter-spacing:-0.05em;
}
.entry-content{
  font-size:16px;
  line-height:2.05;
}
.entry-content h2{
  font-weight:800;
  letter-spacing:-0.035em;
}

.site-footer h3{
  font-size:17px;
  font-weight:800;
}
.site-footer p,
.site-footer a{
  font-size:13px;
  line-height:1.9;
  font-weight:400;
}

.woocommerce form .form-row label,
.woocommerce table,
.woocommerce-checkout,
.woocommerce-cart{
  font-family:var(--font-fa)!important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--font-fa)!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.7!important;
  letter-spacing:-0.025em!important;
}

.woocommerce div.product .product_title{
  font-family:var(--font-fa)!important;
  font-weight:900!important;
  letter-spacing:-0.04em!important;
}

@media(max-width:780px){
  body{font-size:15px}
  .brand-text strong{font-size:17px}
  .main-nav a,.drawer-nav b{font-size:15px}
  .hero h1{font-size:clamp(31px,9vw,41px);line-height:1.35}
  .hero p{font-size:15px;line-height:1.95}
  .section-title h2{font-size:26px}
  .cat-card b{font-size:15px}
  .cat-card small{font-size:11px}
}

/* Clean Persian typography inspired by modern Iranian agency/hosting sites */
html,body,button,input,select,textarea{
  font-family:"Vazirmatn",Tahoma,Arial,sans-serif!important;
}
body{font-weight:400;letter-spacing:-.01em}
p,li,a,small,input,textarea,select{font-weight:400}
.main-nav a,.drawer-nav b,.btn,.header-cart,.cat-card b,.feature strong{font-weight:600}
h1,h2,h3,h4,h5,h6,.brand-text strong,.section-title h2,.entry-title{font-weight:800;letter-spacing:-.035em}
.hero h1{font-weight:800;letter-spacing:-.045em}
.hero p,.entry-content{font-weight:400}
.brand-text{display:flex;flex-direction:column;line-height:1.25}
.brand-text strong{font-size:20px}
.brand-text small{font-size:10px;color:var(--c-muted);margin-top:3px;white-space:nowrap}

/* Header controls */
.header-icon,.header-cart{
  min-height:44px;border:1px solid var(--c-border);border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--c-text);font-weight:600
}
.header-icon{width:44px}
.header-cart{padding:0 14px;background:var(--c-primary);color:#fff;border-color:var(--c-primary);gap:7px}
.mobile-menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--c-border);border-radius:12px;background:#fff;color:var(--c-text);font-size:22px;align-items:center;justify-content:center}

/* Mobile drawer like professional hosting sites */
.mobile-drawer-overlay{position:fixed;inset:0;background:rgba(9,25,44,.48);backdrop-filter:blur(2px);z-index:10020}
.mobile-drawer{position:fixed;top:0;right:0;width:min(88vw,370px);height:100dvh;background:#fff;z-index:10030;transform:translateX(105%);transition:transform .25s ease;box-shadow:-22px 0 50px rgba(7,35,67,.18);overflow-y:auto;overscroll-behavior:contain;direction:rtl;padding-bottom:max(16px,env(safe-area-inset-bottom))}
.mobile-drawer.open{transform:translateX(0)}
.mobile-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:18px 16px 14px;border-bottom:1px solid var(--c-border);position:sticky;top:0;background:#fff;z-index:2}
.drawer-brand{display:flex;gap:10px;align-items:center}.drawer-brand>span:last-child{display:flex;flex-direction:column;line-height:1.3}.drawer-brand strong{font-size:20px;font-weight:800}.drawer-brand small{font-size:10px;color:var(--c-muted);margin-top:3px}
.drawer-close{width:40px;height:40px;border:1px solid var(--c-border);border-radius:50%;background:#f7f9fc;color:#23364d;font-size:25px;line-height:1}
.drawer-account-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 14px;border-bottom:1px solid var(--c-border)}
.drawer-account,.drawer-cart{min-height:44px;border-radius:11px;display:flex;align-items:center;justify-content:center;gap:6px;font-weight:600;font-size:13px}
.drawer-account{border:1px solid var(--c-border);background:#fff}.drawer-cart{background:var(--c-primary);color:#fff}
.drawer-nav{padding:8px 14px}
.drawer-nav a{display:grid;grid-template-columns:28px 1fr 18px;align-items:center;gap:8px;min-height:50px;border-bottom:1px solid #edf2f6;color:#1a2e45;font-size:15px;padding:0 6px}
.drawer-nav a.active{background:var(--c-soft,#edf5ff);border-radius:12px;color:var(--c-primary);border-bottom-color:transparent;margin-bottom:3px}
.drawer-nav a span{font-size:18px;text-align:center}.drawer-nav a i{font-style:normal;color:#738399;font-size:24px}.drawer-nav b{font-weight:600}
.drawer-social{margin:14px;background:#f5f9fd;border:1px solid var(--c-border);border-radius:16px;padding:15px}.drawer-social h4{margin:0 0 4px;font-size:17px}.drawer-social p{margin:0;color:var(--c-muted);font-size:12px}.drawer-social-icons{display:flex;gap:9px;align-items:center;margin-top:12px;font-size:25px;flex-wrap:wrap}
body.drawer-open{overflow:hidden!important}

@media(max-width:780px){
  .desktop-nav{display:none!important}
  .mobile-menu-toggle{display:inline-flex}
  .site-header{position:sticky;top:0}
  .topbar{min-height:66px;padding:9px 0;gap:8px}
  .brand{margin-left:auto}
  .brand-text strong{font-size:17px}
  .brand-text small{display:none}
  .brand-mark{width:40px;height:40px;font-size:20px}
  .header-cart{width:46px;padding:0}.header-cart span{display:none}
  .header-icon{width:44px}
  .header-actions{gap:6px}
}
@media(max-width:390px){
  .brand-text strong{font-size:16px}
  .header-icon,.header-cart,.mobile-menu-toggle{width:40px;height:40px;min-height:40px}
  .brand-mark{width:38px;height:38px}
  .mobile-drawer{width:92vw}
}

/* Mobile UX refinement */
.mobile-menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--c-border);border-radius:12px;background:#fff;color:var(--c-text);font-size:22px;align-items:center;justify-content:center}
@media(max-width:780px){
  .topbar{padding:10px 0;gap:10px}
  .brand{font-size:18px;gap:8px}
  .brand-mark{width:40px;height:40px;border-radius:12px;font-size:21px}
  .header-actions{gap:6px}
  .header-actions .btn{min-width:44px;height:44px;padding:0 12px}
  .header-actions .btn span{display:none}
  .mobile-menu-toggle{display:inline-flex}
  .main-nav{display:none;position:absolute;top:100%;right:0;left:0;background:#fff;border-top:1px solid var(--c-border);box-shadow:0 18px 35px rgba(10,42,78,.12)}
  .main-nav.open{display:block}
  .main-nav .container{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:8px 12px;max-height:70vh;overflow:auto}
  .main-nav a{padding:12px 8px;border-bottom:1px solid #edf2f6;font-size:14px}
  .hero{padding:28px 0 20px}
  .hero-grid{gap:18px}
  .hero h1{font-size:clamp(30px,9vw,40px);line-height:1.35}
  .hero p{font-size:15px;line-height:1.9}
  .hero-card{padding:14px;border-radius:18px}
  .notebook{min-height:240px;padding:20px 22px}
  .notebook h3{font-size:24px}
  .notebook li{font-size:16px;margin:10px 0}
  .section{padding:30px 0}
  .section-title{align-items:flex-start;gap:6px;margin-bottom:16px}
  .section-title h2{font-size:26px}
  .section-title p{font-size:14px}
  .categories{grid-template-columns:1fr 1fr;gap:10px}
  .cat-card{padding:14px 10px;border-radius:16px}
  .cat-icon{width:48px;height:48px;border-radius:13px;font-size:24px;margin-bottom:8px}
  .cat-card b{font-size:15px}
  .cat-card small{font-size:11px}
  .feature-strip{grid-template-columns:1fr 1fr}
  .feature{padding:14px 10px;min-height:112px;display:flex;flex-direction:column;justify-content:center}
  .feature strong{font-size:15px}.feature span{font-size:11px}
  .product-grid{grid-template-columns:1fr 1fr;gap:10px}
  .product-card{padding:10px;border-radius:15px}
  .product-card h3{font-size:14px;line-height:1.6}
  .product-actions{grid-template-columns:1fr;gap:6px}
  .article-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr;gap:18px}
  .site-footer{padding:34px 0 90px}
  .floating-tools{right:8px;left:8px;bottom:10px;top:auto;transform:none;display:flex;justify-content:space-around;border-radius:18px;padding:6px}
  .floating-tools a,.floating-tools button{width:40px;height:40px}
  .theme-panel{left:10px;bottom:72px}
  #wpvibe-preview-banner{font-size:11px!important;min-height:auto!important;padding:6px 8px!important;opacity:.94}
  #wpvibe-preview-banner .wpvibe-info{display:none!important}
  #wpvibe-preview-banner .wpvibe-btn{padding:6px 8px!important;font-size:11px!important}
}
@media(max-width:480px){
  .container{width:min(100% - 16px,1180px)}
  .categories{grid-template-columns:1fr 1fr}
  .feature-strip{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr}
  .hero-actions .btn{width:100%}
}
@media(max-width:360px){
  .main-nav .container{grid-template-columns:1fr}
  .categories{grid-template-columns:1fr}
}

