/*! ITLab step 3 – header icons, logo, single-post spacing, share box, link contrast. Loaded last. */

/* ============ HEADER: search + cart, closer together, no ghost circle ============ */
[class*="header-style"] .extras{gap:8px}
[class*="header-style"] .menu-extras{gap:6px}
[class*="header-style"] .menu-extras>li>a,
[class*="header-style"] .shopping-cart a.shopping-cart-count{width:44px;height:44px}
/* hamburger (mobile menu): same circle as search + cart, dark bars (they were white on a light circle = looked empty) */
[class*="header-style"] .extras a[data-target="off-canvas-right"]{
  width:44px;height:44px;margin:0;padding:0;border-radius:50%;background:#eef2f8;flex:none;transition:background-color .2s
}
[class*="header-style"] .extras a[data-target="off-canvas-right"]:before,
[class*="header-style"] .extras a[data-target="off-canvas-right"]:after,
[class*="header-style"] .extras a[data-target="off-canvas-right"] span:before{width:18px;height:2px;background:#0a1a2f;border-radius:2px}
[class*="header-style"] .extras a[data-target="off-canvas-right"]:before{top:calc(50% - 6px)}
[class*="header-style"] .extras a[data-target="off-canvas-right"]:after{top:calc(50% + 6px);bottom:auto}
[class*="header-style"] .extras a[data-target="off-canvas-right"]:hover{background:#156fff}
[class*="header-style"] .extras a[data-target="off-canvas-right"]:hover:before,
[class*="header-style"] .extras a[data-target="off-canvas-right"]:hover:after,
[class*="header-style"] .extras a[data-target="off-canvas-right"]:hover span:before{background:#fff}
/* desktop shows the full menu -> no hamburger there */
@media (min-width:1025px){[class*="header-style"] .extras a[data-target="off-canvas-right"]{display:none!important}}
/* mobile / tablet: search, cart and menu circles are all the same size */
@media (max-width:1024px){
  [class*="header-style"] .extras{gap:6px}
  [class*="header-style"] .menu-extras>li>a,
  [class*="header-style"] .shopping-cart a.shopping-cart-count,
  [class*="header-style"] .extras a[data-target="off-canvas-right"]{width:40px;height:40px}
  [class*="header-style"] .extras a[data-target="off-canvas-right"]:before{top:calc(50% - 5px)}
  [class*="header-style"] .extras a[data-target="off-canvas-right"]:after{top:calc(50% + 5px)}
}

/* ============ LOGO: never stretched, scales down on tablet / mobile ============ */
[class*="header-style"] .header-brand{flex:0 1 auto;min-width:0;max-width:48%;margin:10px 0}
[class*="header-style"] .header-brand a{display:flex;align-items:center;line-height:0}
.header-brand img,.site-header .header-brand img{
  display:block;width:auto!important;height:auto!important;max-width:100%;max-height:56px;
  object-fit:contain;aspect-ratio:auto
}
@media (max-width:1024px){.header-brand img,.site-header .header-brand img{max-height:48px}}
@media (max-width:600px){
  [class*="header-style"] .header-brand{max-width:58%;margin:8px 0}
  .header-brand img,.site-header .header-brand img{max-height:40px}
}

/* ============ SINGLE POSTS (also the ones written by Content Studio) ============ */
.single-post .post-content{margin-bottom:36px;font-size:15.5px;line-height:2}
@media only screen and (min-width:1025px){
  .single-post:not([class*="sidebar-"]) .main-content>.post .post-content,
  .single-post:not([class*="sidebar-"]) .main-content>.post .post-author-box,
  .single-post:not([class*="sidebar-"]) .main-content>.post .post-tags,
  .single-post:not([class*="sidebar-"]) .main-content>.post .itl-share{width:100%;max-width:880px;margin-left:auto;margin-right:auto}
}
/* wrappers pasted inside the content (article.entry, .entry-content, .breadcrumbs ...) must not add their own spacing */
.single-post .post-content article,
.single-post .post-content .entry,
.single-post .post-content .entry-content,
.single-post .post-content .entry-header,
.single-post .post-content .breadcrumbs{
  padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;background:none!important;max-width:none!important;width:auto!important
}
.single-post .post-content p{margin:0 0 .85em}
.single-post .post-content ul,.single-post .post-content ol{margin:0 0 1em;padding-inline-start:1.4em}
.single-post .post-content li{margin-bottom:.35em}
.single-post .post-content h2{font-size:22px;line-height:1.6;margin:1.3em 0 .5em}
.single-post .post-content h3{font-size:19px;line-height:1.65;margin:1.2em 0 .45em}
.single-post .post-content h4,.single-post .post-content h5{font-size:17px;line-height:1.7;margin:1em 0 .4em}
/* inline sizes left over from the generator (12pt / 14pt) are normalised */
.single-post .post-content span[style*="font-size"]{font-size:inherit!important}
.single-post .post-content img{max-width:100%;height:auto;border-radius:10px}
.single-post .post-content figure{margin:1.1em 0}
.single-post .post-content table{display:block;overflow-x:auto;max-width:100%}
.single-post .post-content pre,.single-post .post-content .wp-block-syntaxhighlighter-code{overflow-x:auto;max-width:100%;direction:ltr;text-align:left}
@media (max-width:600px){.single-post .post-content{font-size:15px;line-height:1.95}.single-post .post-content h2{font-size:20px}.single-post .post-content h3{font-size:17.5px}}

/* ============ STAR RATING (kk Star Ratings) as part of the end-of-post card ============ */
.single-post .post-content .kk-star-ratings{
  float:none!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  width:fit-content;max-width:100%;margin:28px auto 0!important;padding:14px 22px;
  background:#f4f8ff;border:1px solid #dbe7ff;border-radius:16px 16px 0 0;border-bottom:0
}
.single-post .post-content .kk-star-ratings .kksr-legend{font-family:"IRYekan","YekanBakh",sans-serif;font-size:13px;color:#4a5b73}

/* ============ SHARE BOX ============ */
.itl-share{margin:0 auto 36px;padding:18px 20px;background:linear-gradient(135deg,#0a1a2f,#123a7a);border-radius:18px;color:#fff;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;box-shadow:0 14px 40px rgba(10,26,47,.18)}
.itl-share-head{display:flex;flex-direction:column;gap:2px;min-width:200px}
.itl-share-head strong{font-family:"Dana","YekanBakh",sans-serif;font-size:17px;font-weight:700;color:#fff}
.itl-share-head span{font-size:13px;color:#c8d8f0}
.itl-share-list{display:flex;flex-wrap:wrap;gap:8px}
.itl-share-btn{display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 14px;border:0;border-radius:12px;cursor:pointer;
  background:rgba(255,255,255,.12);color:#fff!important;font:500 13px/1 "Dana","YekanBakh",sans-serif;text-decoration:none!important;
  transition:background-color .2s,transform .2s}
.itl-share-btn:hover,.itl-share-btn:focus-visible{background:#fff;color:#0a1a2f!important;transform:translateY(-2px)}
.itl-share-btn svg{flex:none}
.itl-share-btn.is-copy.done{background:#22c55e;color:#fff!important}
@media (max-width:600px){.itl-share{padding:16px}.itl-share-btn{padding:0 12px}.itl-share-btn span{font-size:12.5px}}

/* ============ LINKS NEVER DISAPPEAR INTO THEIR BACKGROUND ============ */
/* sliders: layers sit on photos / dark overlays -> light, underlined links */
rs-module a:not(.elementor-button):not(.button),
.rev_slider a:not(.elementor-button):not(.button),
.tp-caption a:not(.elementor-button):not(.button){
  color:#fff!important;text-decoration:underline;text-underline-offset:3px;text-shadow:0 1px 8px rgba(0,0,0,.45)
}
/* JS adds this class to links whose colour was too close to the background */
a.itl-fix-contrast{text-decoration:underline;text-underline-offset:3px}
