/* Dorsan blog host repair — load the compiled Tailwind bundle without changing Blade or Vite. */

/* Dorsan blog module — carousel matched with the portfolio showcase */
.home-blog{
    position:relative;
    padding:54px 0 62px;
    overflow:hidden;
    border-top:1px solid rgba(91,235,206,.06);
    background:
        radial-gradient(circle at 15% 50%,rgba(49,226,197,.06),transparent 30%),
        radial-gradient(circle at 88% 15%,rgba(65,119,160,.06),transparent 28%),
        linear-gradient(180deg,rgba(2,16,18,.12),rgba(4,18,20,.34));
}
.home-blog:before{
    content:"";
    position:absolute;
    width:520px;
    height:260px;
    left:-180px;
    bottom:-150px;
    border-radius:50%;
    background:rgba(49,226,197,.045);
    filter:blur(75px);
    pointer-events:none;
}
.home-blog>.container{position:relative;z-index:1}
.home-blog__header{
    max-width:710px;
    margin:0 auto 28px;
    text-align:center;
}
.home-blog__header .eyebrow{margin-bottom:6px}
.home-blog__header h2{
    margin:0 0 7px;
    color:#f4ffff;
    font-size:clamp(25px,2.55vw,38px);
    line-height:1.5;
    font-weight:900;
}
.home-blog__header p{
    margin:0;
    color:#9fbcba;
    font-size:13px;
    line-height:1.9;
}
.home-blog__carousel{
    position:relative;
    padding:13px 13px 58px;
    overflow:hidden;
    border:1px solid rgba(127,231,211,.18);
    border-radius:22px;
    background:linear-gradient(145deg,rgba(10,53,55,.63),rgba(3,25,27,.82));
    box-shadow:0 24px 58px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.045);
    backdrop-filter:blur(18px);
}
.home-blog__carousel:before{
    content:"";
    position:absolute;
    width:300px;
    height:300px;
    left:-120px;
    bottom:-190px;
    border-radius:50%;
    background:rgba(49,226,197,.045);
    filter:blur(45px);
    pointer-events:none;
}
.home-blog__viewport{
    position:relative;
    z-index:1;
    width:100%;
    padding:5px 1px 12px;
    overflow-x:auto;
    overflow-y:hidden;
    overscroll-behavior-inline:contain;
    scroll-behavior:smooth;
    scrollbar-width:none;
    scroll-snap-type:x mandatory;
    direction:ltr;
    border-radius:17px;
    outline:none;
}
.home-blog__viewport::-webkit-scrollbar{display:none}
.home-blog__viewport:focus-visible{box-shadow:0 0 0 2px rgba(53,224,189,.34)}
.home-blog__track{display:flex;align-items:stretch;gap:17px;direction:ltr}
.home-blog__slide{
    flex:0 0 calc((100% - 51px)/4);
    min-width:0;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    direction:rtl;
}
.home-blog__controls{
    position:absolute;
    z-index:4;
    left:18px;
    right:18px;
    bottom:12px;
    height:32px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:13px;
}
.home-blog__controls>button{
    width:30px;
    height:30px;
    padding:0;
    display:grid;
    place-items:center;
    border:1px solid rgba(116,222,203,.15);
    border-radius:9px;
    color:#b5cecb;
    background:rgba(4,31,33,.76);
    cursor:pointer;
    appearance:none;
    transition:color .2s ease,border-color .2s ease,background .2s ease,opacity .2s ease;
}
.home-blog__controls>button:hover:not(:disabled){
    color:#42e6c9;
    border-color:rgba(66,230,201,.32);
    background:rgba(8,52,54,.92);
}
.home-blog__controls>button:disabled{cursor:default;opacity:.28}
.home-blog__controls>button.is-next .icon{transform:rotate(180deg)}
.home-blog__dots{display:flex;align-items:center;justify-content:center;gap:6px}
.home-blog__dots button{
    position:relative;
    width:8px;
    height:8px;
    padding:0;
    overflow:hidden;
    border:1px solid rgba(106,220,201,.20);
    border-radius:999px;
    background:rgba(255,255,255,.04);
    cursor:pointer;
    appearance:none;
    transition:width .25s ease,background .25s ease,border-color .25s ease;
}
.home-blog__dots button.is-active{
    width:35px;
    border-color:rgba(68,231,202,.35);
    background:rgba(49,226,197,.09);
}
.home-blog__dots button.is-active:after{
    content:"";
    position:absolute;
    inset:1px;
    width:0;
    border-radius:inherit;
    background:linear-gradient(90deg,#31e2c5,#94fff0);
    animation:homeBlogShowcaseProgress 10s linear forwards;
}
.home-blog.has-single-page .home-blog__dots{display:none}
.home-blog__footer{margin-top:18px;text-align:center}
.home-blog__footer .btn{min-width:205px}
@keyframes homeBlogShowcaseProgress{from{width:0}to{width:calc(100% - 2px)}}
.blog-card{height:100%;overflow:hidden;border:1px solid rgba(135,240,218,.12);border-radius:22px;background:linear-gradient(150deg,rgba(10,55,57,.92),rgba(4,31,33,.96));box-shadow:0 16px 42px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.035);transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,filter .28s ease}
.blog-card:hover{transform:translateY(-6px);border-color:rgba(53,224,189,.34);box-shadow:0 26px 60px rgba(0,0,0,.28),0 0 30px rgba(49,226,197,.055);filter:brightness(1.035)}
.blog-card__media{position:relative;overflow:hidden;aspect-ratio:16/10;background:#092d2f}
.blog-card__media>a:first-child{display:block;width:100%;height:100%}
.blog-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .4s ease}
.blog-card:hover .blog-card__media img{transform:scale(1.045);filter:saturate(1.08)}
.blog-card__media:after{content:"";position:absolute;inset:42% 0 0;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(2,23,25,.68))}
.blog-card__category{position:absolute;top:13px;right:13px;z-index:2;display:inline-flex;min-height:27px;align-items:center;padding:3px 10px;border:1px solid rgba(157,255,237,.22);border-radius:999px;background:rgba(3,34,36,.74);color:#a0ffe9;font-size:9.5px;font-weight:800;backdrop-filter:blur(10px);transition:background .2s ease,border-color .2s ease}
.blog-card__category:hover{border-color:rgba(157,255,237,.48);background:rgba(8,66,64,.9)}
.blog-card__body{display:flex;min-height:265px;flex-direction:column;padding:18px 18px 15px}
.blog-card__body h3{margin:0;color:#f2fffc;font-size:15.5px;line-height:1.8;font-weight:900}
.blog-card__body h3 a{transition:color .2s ease}
.blog-card__body h3 a:hover{color:#8bf7df}
.blog-card__body>p{display:-webkit-box;min-height:54px;margin:8px 0 0;overflow:hidden;color:#98b3af;font-size:11.5px;line-height:1.95;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.blog-card__engagement{display:flex;align-items:center;gap:13px;margin-top:15px;color:#8ba8a4;font-size:10px;direction:rtl}
.blog-card__engagement>span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.blog-card__engagement svg{width:14px;height:14px;fill:none;stroke:#65d9c3;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.blog-card__reading-time{margin-right:auto;color:#6f928d!important}
.blog-card__author{display:flex;align-items:center;gap:9px;margin-top:auto;padding-top:13px;border-top:1px solid rgba(139,247,223,.09);color:#d9eeeb;transition:color .2s ease}
.blog-card__author:hover{color:#8bf7df}
.blog-card__avatar{display:grid;width:34px;height:34px;flex:0 0 34px;overflow:hidden;place-items:center;border:1px solid rgba(132,247,223,.22);border-radius:50%;background:linear-gradient(135deg,#17615d,#0a393b);color:#b8fff0;font-size:10px;font-weight:900;box-shadow:inset 0 0 0 3px rgba(2,24,26,.48)}
.blog-card__avatar img{width:100%;height:100%;object-fit:cover}
.blog-card__author>span:nth-child(2){display:grid;gap:0}
.blog-card__author small{color:#6f918d;font-size:8px;line-height:1.4}
.blog-card__author strong{font-size:10.5px;line-height:1.55}
.blog-card__author-arrow{width:15px;height:15px;margin-right:auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.blog-card__author:hover .blog-card__author-arrow{transform:translateX(-3px)}
.blog-page-hero,.blog-author-hero{position:relative;padding:128px 0 78px;overflow:hidden;text-align:center;border-bottom:1px solid rgba(135,240,218,.08);background:radial-gradient(circle at 50% 0,rgba(53,224,189,.13),transparent 48%),linear-gradient(180deg,#052628,#031b1d)}
.blog-page-hero:before,.blog-author-hero:before{content:"";position:absolute;width:430px;height:430px;top:-270px;right:50%;border:1px solid rgba(53,224,189,.1);border-radius:50%;transform:translateX(50%);box-shadow:0 0 80px rgba(53,224,189,.05)}
.blog-page-hero>.container,.blog-author-hero>.container{position:relative;z-index:1}
.blog-page-hero h1,.blog-author-hero h1{margin:9px 0 11px;font-size:clamp(34px,4.3vw,58px);line-height:1.4;letter-spacing:-1px}
.blog-page-hero p,.blog-author-hero p{max-width:700px;margin:0 auto;color:#9db8b4;font-size:14px;line-height:2}
.blog-page-hero--compact{padding-bottom:62px}
.blog-back-link{display:inline-flex;margin-bottom:17px;color:#77cfc0;font-size:11px;font-weight:700}
.blog-archive{padding:72px 0 92px}
.blog-archive__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.blog-empty{padding:48px 24px;border:1px dashed rgba(135,240,218,.18);border-radius:22px;text-align:center;color:#91aaa7;background:rgba(8,47,49,.35)}
.blog-pagination{margin-top:38px}
.blog-pagination nav>div:first-child{color:#9db8b4}
.blog-pagination nav>div:last-child>div:first-child{color:#87a39f}
.blog-author-hero{text-align:right}
.blog-author-hero__profile{display:flex;max-width:760px;align-items:center;gap:24px;margin-inline:auto}
.blog-author-hero__avatar{display:grid;width:92px;height:92px;flex:0 0 92px;overflow:hidden;place-items:center;border:1px solid rgba(139,247,223,.27);border-radius:28px;background:linear-gradient(145deg,#17645f,#092f32);color:#c9fff4;font-size:25px;font-weight:900;box-shadow:0 20px 45px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.05)}
.blog-author-hero__avatar img{width:100%;height:100%;object-fit:cover}
.blog-author-hero__profile p{margin:0;text-align:right}
.blog-post__hero{padding:125px 0 55px;text-align:center;background:radial-gradient(circle at 50% 0,rgba(53,224,189,.12),transparent 48%)}
.blog-post__hero-inner{max-width:900px}
.blog-post__breadcrumbs{display:flex;justify-content:center;gap:8px;margin-bottom:17px;color:#73bcb0;font-size:10px}
.blog-post__breadcrumbs a:hover{color:#9effea}
.blog-post__hero h1{margin:0;font-size:clamp(35px,4.7vw,64px);line-height:1.48;letter-spacing:-1.4px}
.blog-post__hero>div>p{max-width:780px;margin:18px auto 0;color:#a2bbb8;font-size:14px;line-height:2.05}
.blog-post__meta{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-top:25px;color:#779590;font-size:10px}
.blog-post__meta>a{display:inline-flex;align-items:center;gap:7px;color:#bdeee4}
.blog-post__meta .blog-card__avatar{width:30px;height:30px;flex-basis:30px}
.blog-post__layout{max-width:930px;padding-bottom:90px}
.blog-post__cover{overflow:hidden;border:1px solid rgba(135,240,218,.13);border-radius:28px;background:#092d2f;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.blog-post__cover img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.blog-post__content{max-width:790px;margin:45px auto 0;color:#c4d8d5;font-size:15px;line-height:2.25}
.blog-post__content h2{margin:38px 0 10px;color:#f3fffc;font-size:25px;line-height:1.7}
.blog-post__content p{margin:0 0 20px}
.blog-post__content a{color:#72efd8;text-decoration:underline;text-underline-offset:4px}
.blog-post__author-box{display:flex;max-width:790px;align-items:center;gap:20px;margin:44px auto 0;padding:23px;border:1px solid rgba(135,240,218,.13);border-radius:23px;background:linear-gradient(145deg,rgba(9,51,53,.72),rgba(5,34,36,.76))}
.blog-post__author-box .blog-author-hero__avatar{width:72px;height:72px;flex-basis:72px;border-radius:21px;font-size:19px}
.blog-post__author-box small{color:#6e9992;font-size:9px}
.blog-post__author-box h2{margin:2px 0 5px;font-size:17px}
.blog-post__author-box p{margin:0;color:#95ada9;font-size:11px;line-height:1.9}
.blog-post__author-box a{display:inline-flex;margin-top:8px;color:#75e8d2;font-size:10px;font-weight:800}
.blog-related{padding:70px 0 90px;border-top:1px solid rgba(135,240,218,.07);background:rgba(3,20,22,.34)}
.blog-related header{text-align:center;margin-bottom:28px}
.blog-related h2{margin:6px 0 0;font-size:30px}
@media(max-width:980px){.home-blog__slide{flex-basis:calc((100% - 17px)/2)}.blog-archive__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.home-blog{padding:44px 0 52px}.home-blog__header{margin-bottom:21px}.home-blog__header p{font-size:12px}.home-blog__carousel{padding:10px 9px 57px;border-radius:18px}.home-blog__viewport{scroll-padding-inline:8px}.home-blog__slide{flex-basis:88%;scroll-snap-align:center}.blog-card__body{min-height:250px}.blog-page-hero,.blog-author-hero{padding:100px 0 58px}.blog-author-hero__profile{align-items:flex-start;flex-direction:column;text-align:center}.blog-author-hero__profile p{text-align:center}.blog-author-hero__avatar{margin-inline:auto}.blog-archive{padding:52px 0 70px}.blog-archive__grid{grid-template-columns:1fr}.blog-post__hero{padding:98px 0 42px}.blog-post__hero h1{font-size:34px}.blog-post__hero>div>p{font-size:12.5px}.blog-post__layout{padding-bottom:68px}.blog-post__cover{border-radius:19px}.blog-post__content{margin-top:31px;font-size:13.5px}.blog-post__content h2{font-size:21px}.blog-post__author-box{align-items:flex-start;flex-direction:column}.blog-related{padding:52px 0 68px}}
@media(max-width:460px){.home-blog__header h2{font-size:23px}.home-blog__header p{font-size:11.5px}.home-blog__slide{flex-basis:94%}.home-blog__controls{left:10px;right:10px;gap:9px}.home-blog__dots{gap:4px}.home-blog__dots button.is-active{width:28px}.blog-card__body{padding:16px}.blog-card__engagement{gap:10px}.blog-card__reading-time{display:none!important}.blog-page-hero h1,.blog-author-hero h1{font-size:31px}.blog-post__meta{gap:8px}.blog-post__meta>span{padding:2px 7px;border:1px solid rgba(135,240,218,.09);border-radius:99px}}
@media(prefers-reduced-motion:reduce){.home-blog__viewport{scroll-behavior:auto}.home-blog__dots button.is-active:after{animation:none!important}.blog-card,.blog-card__media img,.home-blog__controls>button{transition:none}}

/* Blog category breadcrumb — v1.1 */
.blog-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 16px;
    color: #6f9892;
    font-size: 10px;
    line-height: 1.8;
}
.blog-breadcrumb a { color: #7bd5c6; transition: color .2s ease; }
.blog-breadcrumb a:hover { color: #a8ffed; }
.blog-breadcrumb span[aria-hidden="true"] { color: #476d68; }
.blog-breadcrumb span[aria-current="page"] { color: #9db8b4; }

/* Rich article content and dynamic FAQ */
.blog-post__categories{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:18px}.blog-post__categories a{padding:6px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#dffaf4;background:rgba(255,255,255,.07);text-decoration:none;font-size:10px;font-weight:850;transition:.2s ease}.blog-post__categories a:hover{color:#062d2f;background:#65e6ce}.blog-post__content{overflow:hidden}.blog-post__content h2,.blog-post__content h3,.blog-post__content h4{margin:1.8em 0 .7em;color:#123f41;line-height:1.6}.blog-post__content h2{font-size:clamp(1.45rem,2.5vw,2rem)}.blog-post__content h3{font-size:clamp(1.2rem,2vw,1.55rem)}.blog-post__content h4{font-size:1.1rem}.blog-post__content p{margin:.85em 0}.blog-post__content ul,.blog-post__content ol{padding-right:24px}.blog-post__content blockquote{margin:25px 0;padding:18px 20px;border-right:4px solid #22b99e;border-radius:12px;color:#244c4d;background:#eefaf7}.blog-post__content pre{direction:ltr;text-align:left;overflow:auto;padding:20px;border-radius:14px;color:#ddfaf4;background:#082f31;font-family:Consolas,"Courier New",monospace;line-height:1.8}.blog-post__content code{font-family:Consolas,"Courier New",monospace}.blog-post__content img{display:block;max-width:100%;height:auto;margin:28px auto;border-radius:18px}.blog-post__content figure{margin:28px 0}.blog-post__content figcaption{text-align:center;color:#7b8b8d;font-size:11px}.blog-post__content .article-table-wrap{width:100%;overflow-x:auto;margin:28px 0;border:1px solid #d6e4e2;border-radius:15px}.blog-post__content table{width:100%;min-width:560px;border-collapse:collapse}.blog-post__content th,.blog-post__content td{padding:13px 15px;border:1px solid #d6e4e2;text-align:right;vertical-align:top}.blog-post__content th{color:#145a53;background:#e8faf5;font-weight:900}.blog-post__faq{margin-top:44px;padding:clamp(22px,4vw,38px);border:1px solid rgba(22,105,99,.12);border-radius:26px;background:linear-gradient(145deg,#f5fffc,#fff);box-shadow:0 18px 60px rgba(10,58,57,.07)}.blog-post__faq header{margin-bottom:20px}.blog-post__faq h2{margin:5px 0 0;color:#123f41;font-size:clamp(1.35rem,2.5vw,1.9rem)}.blog-post__faq-list{display:grid;gap:10px}.blog-post__faq-item{overflow:hidden;border:1px solid #dce9e7;border-radius:16px;background:#fff}.blog-post__faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;color:#24494b;cursor:pointer;list-style:none;font-size:14px;font-weight:900}.blog-post__faq-item summary::-webkit-details-marker{display:none}.blog-post__faq-icon{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;color:#0d766b;background:#e2f8f3;font-size:18px;transition:transform .2s ease}.blog-post__faq-item[open] .blog-post__faq-icon{transform:rotate(45deg)}.blog-post__faq-answer{padding:0 18px 18px;color:#587173;line-height:2;font-size:13px}
@media(max-width:640px){.blog-post__content .article-table-wrap{margin-inline:-4px}.blog-post__faq{padding:19px;border-radius:20px}.blog-post__faq-item summary{padding:14px;font-size:12px}.blog-post__faq-answer{padding:0 14px 15px;font-size:12px}}

/* Inline article media + nested blog categories — v1.1 */
.blog-post__content .article-inline-image,.blog-post__content .article-inline-video{margin:2rem 0;text-align:center}
.blog-post__content .article-inline-image img{display:block;width:auto;max-width:100%;height:auto;margin:0 auto;border-radius:18px;box-shadow:0 18px 55px rgba(7,37,40,.12)}
.blog-post__content .article-inline-image figcaption,.blog-post__content .article-inline-video figcaption{margin-top:.65rem;color:#728481;font-size:.82rem;line-height:1.8}
.blog-post__content .article-inline-video video{display:block;width:100%;max-height:720px;border-radius:18px;background:#061d20;box-shadow:0 18px 55px rgba(7,37,40,.16)}
.blog-post__content .article-pdf-card{display:flex;align-items:center;gap:1rem;margin:2rem 0;padding:1rem 1.1rem;border:1px solid rgba(20,112,101,.18);border-radius:18px;color:#153f3c;background:linear-gradient(135deg,#f4fbf9,#fff);box-shadow:0 12px 36px rgba(7,57,54,.07);text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.blog-post__content .article-pdf-card:hover{transform:translateY(-2px);border-color:rgba(20,112,101,.36);box-shadow:0 17px 44px rgba(7,57,54,.11)}
.blog-post__content .article-pdf-card__icon{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border-radius:14px;color:#fff;background:linear-gradient(145deg,#dd5063,#b82e45);font-size:.75rem;font-weight:950;letter-spacing:.04em}
.blog-post__content .article-pdf-card__copy{display:grid;gap:.2rem;min-width:0;flex:1}
.blog-post__content .article-pdf-card__copy strong{overflow:hidden;color:#183f3c;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}
.blog-post__content .article-pdf-card__copy small{color:#758884;font-size:.78rem}
.blog-post__content .article-pdf-card__action{color:#0d796d;font-size:.78rem;font-weight:900;white-space:nowrap}
.blog-subcategories{display:flex;align-items:center;justify-content:center;gap:.55rem;flex-wrap:wrap;margin-top:1.4rem}
.blog-subcategories>span{color:#69817d;font-size:.82rem;font-weight:800}
.blog-subcategories a{display:inline-flex;align-items:center;gap:.4rem;padding:.48rem .75rem;border:1px solid rgba(23,123,109,.16);border-radius:999px;color:#176b62;background:rgba(255,255,255,.72);font-size:.82rem;font-weight:850;text-decoration:none;transition:.2s ease}
.blog-subcategories a:hover{transform:translateY(-1px);border-color:rgba(23,123,109,.34);background:#fff}
.blog-subcategories a small{display:grid;place-items:center;min-width:1.4rem;height:1.4rem;padding:0 .3rem;border-radius:999px;color:#fff;background:#167a6e;font-size:.66rem}
@media(max-width:640px){.blog-post__content .article-pdf-card{align-items:flex-start;flex-wrap:wrap}.blog-post__content .article-pdf-card__action{width:100%;padding-inline-start:70px}.blog-subcategories{justify-content:flex-start}}

/* Hierarchical category landing content — v1.2 */
.blog-category-content{max-width:880px;margin:34px auto 0;padding:clamp(22px,4vw,38px);border:1px solid rgba(135,240,218,.13);border-radius:26px;text-align:right;color:#c5d8d5;background:linear-gradient(145deg,rgba(10,55,57,.7),rgba(4,31,33,.82));box-shadow:0 24px 65px rgba(0,0,0,.18);font-size:14px;line-height:2.25;backdrop-filter:blur(14px)}
.blog-category-content>:first-child{margin-top:0}.blog-category-content>:last-child{margin-bottom:0}
.blog-category-content h2,.blog-category-content h3,.blog-category-content h4{margin:1.65em 0 .65em;color:#f4fffc;line-height:1.65}.blog-category-content h2{font-size:clamp(1.35rem,2.4vw,1.9rem)}.blog-category-content h3{font-size:clamp(1.18rem,2vw,1.5rem)}.blog-category-content h4{font-size:1.08rem}
.blog-category-content p{margin:.8em 0}.blog-category-content a{color:#7bf1db;text-decoration:underline;text-underline-offset:4px}.blog-category-content ul,.blog-category-content ol{padding-right:24px}.blog-category-content blockquote{margin:24px 0;padding:17px 19px;border-right:4px solid #38d8ba;border-radius:12px;color:#d9efeb;background:rgba(255,255,255,.055)}
.blog-category-content img{display:block;max-width:100%;height:auto;margin:26px auto;border-radius:18px}.blog-category-content figure{margin:27px 0}.blog-category-content figcaption{margin-top:8px;text-align:center;color:#86a5a0;font-size:11px}.blog-category-content video{display:block;width:100%;max-height:720px;margin:26px 0;border-radius:18px;background:#041719}
.blog-category-content .article-table-wrap{width:100%;overflow-x:auto;margin:27px 0;border:1px solid rgba(135,240,218,.16);border-radius:15px}.blog-category-content table{width:100%;min-width:560px;border-collapse:collapse}.blog-category-content th,.blog-category-content td{padding:13px 15px;border:1px solid rgba(135,240,218,.14);text-align:right;vertical-align:top}.blog-category-content th{color:#cafff4;background:rgba(49,226,197,.09);font-weight:900}
.blog-category-content .article-pdf-card{color:#dff8f3;background:rgba(255,255,255,.055);border-color:rgba(135,240,218,.16)}.blog-category-content .article-pdf-card__copy strong{color:#f0fffc}.blog-category-content .article-pdf-card__copy small{color:#8eaaa5}
.blog-category-posts-heading{max-width:720px;margin:0 auto 34px;text-align:center}.blog-category-posts-heading h2{margin:6px 0 7px;color:#f3fffc;font-size:clamp(25px,3vw,38px)}.blog-category-posts-heading p{margin:0;color:#8fa9a5;font-size:12px;line-height:1.9}
@media(max-width:720px){.blog-category-content{margin-top:25px;padding:20px;border-radius:20px;font-size:13px}.blog-category-posts-heading{margin-bottom:25px}}

/* Dynamic blog author profile — v1.0 */
.blog-social-icon{width:20px;height:20px;fill:currentColor}
.blog-author-profile-hero{position:relative;padding:118px 0 54px;overflow:hidden;border-bottom:1px solid rgba(135,240,218,.08);background:radial-gradient(circle at 20% 0,rgba(61,224,189,.14),transparent 38%),linear-gradient(180deg,#05282a,#031b1d)}
.blog-author-profile-hero:before{content:"";position:absolute;width:520px;height:520px;top:-360px;left:-100px;border:1px solid rgba(93,238,210,.09);border-radius:50%;box-shadow:0 0 90px rgba(53,224,189,.05)}
.blog-author-profile-hero>.container{position:relative;z-index:1}
.blog-author-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:22px;color:#719994;font-size:9px;font-weight:800}.blog-author-breadcrumb a{color:#8dc3ba}.blog-author-breadcrumb a:hover{color:#8bf7df}
.blog-author-profile-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;padding:28px;border:1px solid rgba(139,247,223,.14);border-radius:30px;background:linear-gradient(145deg,rgba(9,55,57,.85),rgba(5,36,38,.8));box-shadow:0 28px 70px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.035);backdrop-filter:blur(14px)}
.blog-author-profile-card__avatar{display:grid;width:148px;height:148px;overflow:hidden;place-items:center;border:1px solid rgba(139,247,223,.28);border-radius:38px;color:#d2fff6;background:linear-gradient(145deg,#17645f,#092f32);font-size:36px;font-weight:950;box-shadow:0 22px 50px rgba(0,0,0,.28)}
.blog-author-profile-card__avatar img{width:100%;height:100%;object-fit:cover}
.blog-author-profile-card__content h1{margin:7px 0 3px;font-size:clamp(32px,4vw,54px);line-height:1.35}.blog-author-profile-card__job{display:block;color:#66dfca;font-size:12px}.blog-author-profile-card__content p{max-width:720px;margin:13px 0 0;color:#a7bfbb;font-size:12px;line-height:2.05}
.blog-author-profile-card__stats{display:grid;min-width:125px;place-items:center;padding:18px;border:1px solid rgba(139,247,223,.11);border-radius:22px;background:rgba(2,25,27,.35);text-align:center}.blog-author-profile-card__stats strong{color:#a9fff0;font-size:30px;line-height:1}.blog-author-profile-card__stats span{margin-top:7px;color:#759b95;font-size:8px;font-weight:900}
.blog-author-socials{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.blog-author-socials a{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(139,247,223,.15);border-radius:12px;color:#99cfc5;background:rgba(4,35,37,.6);transition:.2s ease}.blog-author-socials a:hover{color:#062c2e;border-color:#78ecd7;background:#78ecd7;transform:translateY(-2px)}.blog-author-socials svg{width:17px;height:17px}
.blog-author-biography{padding:58px 0 12px;background:#041f21}.blog-author-biography__inner{max-width:930px;margin-inline:auto;padding:30px;border:1px solid rgba(135,240,218,.1);border-radius:26px;background:linear-gradient(145deg,rgba(8,49,51,.65),rgba(4,31,33,.72))}.blog-author-biography__inner>header{margin-bottom:22px}.blog-author-biography__inner h2{margin:6px 0 0;font-size:27px}.blog-author-biography__content{margin-top:0;padding:0;background:transparent}
.blog-author-posts{padding-top:60px}.blog-author-posts__header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.blog-author-posts__header h2{margin:5px 0 0;font-size:29px}
.blog-post__author-job{display:block;margin:-1px 0 6px;color:#63d6c1;font-size:9px}
.blog-post__meta .blog-card__avatar img{width:100%;height:100%;object-fit:cover}
@media(max-width:780px){.blog-author-profile-hero{padding:98px 0 42px}.blog-author-profile-card{grid-template-columns:1fr;text-align:center}.blog-author-profile-card__avatar{width:124px;height:124px;margin-inline:auto;border-radius:32px}.blog-author-profile-card__content p{margin-inline:auto}.blog-author-socials{justify-content:center}.blog-author-profile-card__stats{min-width:0;width:100%}.blog-author-posts__header{align-items:flex-start;flex-direction:column}.blog-author-biography__inner{padding:22px}}

/* Sticky article table of contents — v1.0 */
.blog-post__layout{
    max-width:1180px;
}
.blog-post__cover{
    max-width:930px;
    margin-inline:auto;
}
.blog-post__reading-grid{
    display:grid;
    grid-template-columns:minmax(220px,255px) minmax(0,790px);
    align-items:start;
    justify-content:center;
    gap:34px;
    margin-top:45px;
    direction:rtl;
}
.blog-post__main-column{
    min-width:0;
}
.blog-post__main-column .blog-post__content{
    max-width:none;
    margin:0;
}
.blog-post__main-column .blog-post__faq,
.blog-post__main-column .blog-post__author-box{
    max-width:none;
}
.blog-post__toc{
    position:sticky;
    top:96px;
    min-width:0;
    max-height:calc(100vh - 116px);
    z-index:5;
}
.blog-post__toc[hidden]{
    display:none!important;
}
.blog-post__reading-grid.has-no-toc{
    grid-template-columns:minmax(0,790px);
}
.blog-post__toc-details{
    overflow:hidden;
    border:1px solid rgba(135,240,218,.14);
    border-radius:22px;
    color:#d8efeb;
    background:linear-gradient(145deg,rgba(9,52,54,.94),rgba(4,29,31,.97));
    box-shadow:0 20px 54px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.035);
    backdrop-filter:blur(16px);
}
.blog-post__toc-summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:16px 17px 14px;
    border-bottom:1px solid rgba(135,240,218,.1);
    cursor:pointer;
    list-style:none;
    user-select:none;
}
.blog-post__toc-summary::-webkit-details-marker{
    display:none;
}
.blog-post__toc-title{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:#edfffb;
    font-size:12px;
    font-weight:950;
}
.blog-post__toc-title svg{
    width:18px;
    height:18px;
    fill:none;
    stroke:#58e2c9;
    stroke-width:1.8;
    stroke-linecap:round;
}
.blog-post__toc-chevron{
    display:none;
    width:17px;
    height:17px;
    fill:none;
    stroke:#82b6ad;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
    transition:transform .2s ease;
}
.blog-post__toc-details[open] .blog-post__toc-chevron{
    transform:rotate(180deg);
}
.blog-post__toc-body{
    padding:12px 9px 12px 10px;
}
.blog-post__toc-progress{
    height:3px;
    margin:0 8px 10px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(255,255,255,.06);
}
.blog-post__toc-progress span{
    display:block;
    width:0;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,#31e2c5,#8effe9);
    transition:width .12s linear;
}
.blog-post__toc-nav{
    display:grid;
    max-height:calc(100vh - 205px);
    overflow-y:auto;
    overscroll-behavior-y:auto;
    touch-action:pan-y;
    -webkit-overflow-scrolling:touch;
    padding:1px 4px 2px 2px;
    scrollbar-width:thin;
    scrollbar-color:rgba(80,210,186,.32) transparent;
}
.blog-post__toc-nav::-webkit-scrollbar{
    width:5px;
}
.blog-post__toc-nav::-webkit-scrollbar-thumb{
    border-radius:99px;
    background:rgba(80,210,186,.28);
}
.blog-post__toc-link{
    position:relative;
    display:block;
    padding:8px 11px 8px 9px;
    border-right:2px solid transparent;
    border-radius:8px 0 0 8px;
    color:#8faeaa;
    font-size:10.5px;
    font-weight:750;
    line-height:1.75;
    text-decoration:none!important;
    transition:color .18s ease,background .18s ease,border-color .18s ease;
}
.blog-post__toc-link:hover{
    color:#d8fff7;
    background:rgba(255,255,255,.04);
}
.blog-post__toc-link.is-active{
    color:#90f8e5;
    border-right-color:#42dfc2;
    background:linear-gradient(90deg,transparent,rgba(49,226,197,.09));
}
.blog-post__toc-link[data-level="3"]{
    padding-right:23px;
    color:#7f9f9a;
    font-size:9.8px;
}
.blog-post__toc-link[data-level="4"]{
    padding-right:35px;
    color:#718e8a;
    font-size:9.3px;
}
.blog-post__toc-link[data-level="3"].is-active,
.blog-post__toc-link[data-level="4"].is-active{
    color:#83eeda;
}
.blog-post__content h2[id],
.blog-post__content h3[id],
.blog-post__content h4[id]{
    scroll-margin-top:112px;
}
.blog-post__content h2[id]:target,
.blog-post__content h3[id]:target,
.blog-post__content h4[id]:target{
    animation:blogHeadingTarget 1.35s ease;
}
@keyframes blogHeadingTarget{
    0%,35%{background:rgba(49,226,197,.16);box-shadow:0 0 0 7px rgba(49,226,197,.08)}
    100%{background:transparent;box-shadow:none}
}
@media(max-width:1050px){
    .blog-post__reading-grid{
        grid-template-columns:minmax(190px,220px) minmax(0,720px);
        gap:24px;
    }
}
@media(max-width:860px){
    .blog-post__reading-grid{
        display:block;
        margin-top:30px;
    }
    .blog-post__toc{
        position:relative;
        top:auto;
        max-height:none;
        margin-bottom:25px;
    }
    .blog-post__toc-chevron{
        display:block;
    }
    .blog-post__toc-nav{
        max-height:min(55vh,360px);
        overflow-y:auto;
        overscroll-behavior-y:auto;
        touch-action:pan-y;
        -webkit-overflow-scrolling:touch;
    }
    .blog-post__toc-details,
    .blog-post__toc-body{
        touch-action:pan-y;
    }
    .blog-post__toc-summary{
        border-bottom:0;
    }
    .blog-post__toc-details[open] .blog-post__toc-summary{
        border-bottom:1px solid rgba(135,240,218,.1);
    }
}
@media(max-width:640px){
    .blog-post__toc-details{
        border-radius:17px;
    }
    .blog-post__toc-summary{
        padding:14px;
    }
    .blog-post__toc-body{
        padding:10px 8px;
    }
    .blog-post__toc-link{
        padding-block:8px;
        font-size:10px;
    }
}
@media(prefers-reduced-motion:reduce){
    .blog-post__toc-link,
    .blog-post__toc-progress span{
        transition:none;
    }
    .blog-post__content h2[id]:target,
    .blog-post__content h3[id]:target,
    .blog-post__content h4[id]:target{
        animation:none;
    }
}

/* Blog comments */
.blog-comments {
  margin-top: clamp(2.5rem, 6vw, 5rem);
  padding-top: clamp(2rem, 4vw, 3.5rem);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.blog-comments__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 1.5rem;
}

.blog-comments__header h2 {
  margin: 0.35rem 0 0;
  font-size: clamp(1.65rem, 3vw, 2.35rem);
}

.blog-comments__header h2 small {
  color: var(--blog-accent, #50d6c8);
  font-size: 0.6em;
}

.blog-comments__header > p {
  max-width: 32rem;
  margin: 0;
  color: rgba(235, 247, 246, 0.68);
  line-height: 1.9;
}

.blog-comment-form {
  position: relative;
  padding: clamp(1.15rem, 3vw, 2rem);
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 1.35rem;
  background: linear-gradient(145deg, rgba(10, 48, 50, 0.88), rgba(5, 29, 31, 0.82));
  box-shadow: 0 24px 65px rgba(0, 0, 0, 0.2);
}

.blog-comment-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.blog-comment-form label {
  display: grid;
  gap: 0.55rem;
  color: rgba(238, 250, 249, 0.86);
  font-size: 0.92rem;
  font-weight: 700;
}

.blog-comment-form input,
.blog-comment-form textarea {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.9rem;
  outline: none;
  background: rgba(2, 20, 22, 0.72);
  color: #f6ffff;
  font: inherit;
  font-weight: 400;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.blog-comment-form input {
  min-height: 3.2rem;
  padding: 0 1rem;
}

.blog-comment-form textarea {
  min-height: 9rem;
  padding: 1rem;
  line-height: 1.9;
  resize: vertical;
}

.blog-comment-form input:focus,
.blog-comment-form textarea:focus {
  border-color: rgba(80, 214, 200, 0.72);
  background: rgba(2, 24, 26, 0.9);
  box-shadow: 0 0 0 4px rgba(80, 214, 200, 0.1);
}

.blog-comment-form__message {
  margin-top: 1rem;
}

.blog-comment-form__counter {
  color: rgba(232, 246, 244, 0.5);
  font-size: 0.78rem;
  font-weight: 400;
}

.blog-comment-form__error {
  color: #ffaaa4;
  font-size: 0.8rem;
  font-weight: 500;
}

.blog-comment-form__success {
  margin-top: 1rem;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(80, 214, 157, 0.3);
  border-radius: 0.85rem;
  background: rgba(80, 214, 157, 0.08);
  color: #aaf5cf;
  line-height: 1.8;
}

.blog-comment-form__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.2rem;
}

.blog-comment-form__footer p {
  margin: 0;
  color: rgba(232, 246, 244, 0.54);
  font-size: 0.8rem;
  line-height: 1.8;
}

.blog-comment-form__footer button,
.blog-comments__more {
  flex: 0 0 auto;
  min-height: 3rem;
  padding: 0 1.35rem;
  border: 0;
  border-radius: 0.9rem;
  background: linear-gradient(135deg, #4fd5c8, #58e39f);
  color: #032426;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

.blog-comment-form__footer button:hover,
.blog-comments__more:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(62, 220, 185, 0.2);
}

.blog-comment-form__footer button:disabled,
.blog-comments__more:disabled {
  cursor: wait;
  opacity: 0.62;
}

.blog-comment-form__honeypot {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  pointer-events: none !important;
}

.blog-comments__list {
  display: grid;
  gap: 1rem;
  margin-top: 2rem;
}

.blog-comment {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: 1rem;
  padding: 1.2rem;
  border: 1px solid rgba(255, 255, 255, 0.085);
  border-radius: 1.1rem;
  background: rgba(6, 33, 35, 0.54);
}

.blog-comment__avatar {
  display: grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border: 1px solid rgba(80, 214, 200, 0.35);
  border-radius: 50%;
  background: rgba(80, 214, 200, 0.09);
  color: #8eede3;
  font-weight: 900;
}

.blog-comment__content header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.blog-comment__content strong {
  color: #f4fffe;
}

.blog-comment__content time {
  color: rgba(231, 246, 244, 0.48);
  font-size: 0.78rem;
}

.blog-comment__content p {
  margin: 0.65rem 0 0;
  color: rgba(235, 247, 246, 0.74);
  line-height: 2;
  overflow-wrap: anywhere;
}

.blog-comments__empty {
  padding: 1.5rem;
  border: 1px dashed rgba(255, 255, 255, 0.13);
  border-radius: 1rem;
  text-align: center;
  color: rgba(235, 247, 246, 0.62);
}

.blog-comments__empty strong {
  display: block;
  color: #f2fffd;
}

.blog-comments__empty p {
  margin: 0.45rem 0 0;
}

.blog-comments__more {
  display: block;
  margin: 1.3rem auto 0;
  background: rgba(80, 214, 200, 0.12);
  color: #9bf2e9;
  border: 1px solid rgba(80, 214, 200, 0.25);
}

@media (max-width: 720px) {
  .blog-comments__header,
  .blog-comment-form__footer {
    align-items: stretch;
    flex-direction: column;
  }

  .blog-comment-form__grid {
    grid-template-columns: 1fr;
  }

  .blog-comment-form__footer button {
    width: 100%;
  }

  .blog-comment {
    grid-template-columns: 2.6rem minmax(0, 1fr);
    gap: 0.75rem;
    padding: 1rem;
  }

  .blog-comment__avatar {
    width: 2.6rem;
    height: 2.6rem;
  }

  .blog-comment__content header {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.25rem;
  }
}

/* Threaded blog comments */
.blog-comment-form__replying {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(80, 214, 200, 0.24);
  border-radius: 0.9rem;
  background: rgba(80, 214, 200, 0.08);
}

.blog-comment-form__replying div {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.45rem;
  color: rgba(232, 248, 246, 0.68);
  font-size: 0.82rem;
}

.blog-comment-form__replying strong {
  color: #9bf2e9;
}

.blog-comment-form__replying button {
  padding: 0.4rem 0.7rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.7rem;
  background: rgba(255, 255, 255, 0.06);
  color: #f2fffd;
  font: inherit;
  font-size: 0.78rem;
  cursor: pointer;
}

.blog-comment-thread {
  min-width: 0;
}

.blog-comment-thread + .blog-comment-thread {
  margin-top: 0.25rem;
}

.blog-comment {
  position: relative;
}

.blog-comment.is-admin {
  border-color: rgba(80, 214, 200, 0.26);
  background: linear-gradient(145deg, rgba(10, 54, 55, 0.76), rgba(6, 38, 40, 0.7));
}

.blog-comment.is-admin .blog-comment__avatar {
  border-color: rgba(88, 227, 159, 0.48);
  background: rgba(88, 227, 159, 0.12);
  color: #b0f7d5;
}

.blog-comment__author {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.blog-comment__admin-badge {
  display: inline-flex;
  align-items: center;
  min-height: 1.5rem;
  padding: 0.15rem 0.55rem;
  border: 1px solid rgba(88, 227, 159, 0.24);
  border-radius: 999px;
  background: rgba(88, 227, 159, 0.1);
  color: #aef4d2;
  font-size: 0.68rem;
  font-weight: 900;
}

.blog-comment__reply-button {
  display: inline-flex;
  align-items: center;
  margin-top: 0.8rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: #8eede3;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 800;
  cursor: pointer;
}

.blog-comment__reply-button:hover {
  color: #c5fff8;
}

.blog-comment__replies {
  display: grid;
  gap: 0.75rem;
  margin-top: 0.75rem;
  margin-right: clamp(1rem, 4vw, 3.25rem);
  padding-right: clamp(0.75rem, 2vw, 1.25rem);
  border-right: 1px solid rgba(80, 214, 200, 0.16);
}

.blog-comment__replies .blog-comment {
  background: rgba(6, 33, 35, 0.42);
}

@media (max-width: 720px) {
  .blog-comment-form__replying {
    align-items: flex-start;
  }

  .blog-comment__replies {
    margin-right: 0.45rem;
    padding-right: 0.55rem;
  }

  .blog-comment__replies .blog-comment {
    grid-template-columns: 2.25rem minmax(0, 1fr);
    padding: 0.85rem;
  }

  .blog-comment__replies .blog-comment__avatar {
    width: 2.25rem;
    height: 2.25rem;
    font-size: 0.78rem;
  }
}

/* Article star rating — v1.0 */
.blog-rating{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 1px minmax(260px,.78fr);
  gap:clamp(1.25rem,3vw,2.25rem);
  max-width:790px;
  margin:18px auto 0;
  padding:clamp(1.15rem,2.8vw,1.75rem);
  overflow:hidden;
  border:1px solid rgba(126,238,216,.16);
  border-radius:24px;
  background:
    linear-gradient(145deg,rgba(11,55,57,.92),rgba(4,30,32,.92)),
    radial-gradient(circle at 12% 15%,rgba(75,222,194,.15),transparent 34%);
  box-shadow:0 22px 65px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.035);
  isolation:isolate;
}
.blog-rating__glow{
  position:absolute;
  z-index:-1;
  width:170px;
  height:170px;
  top:-105px;
  left:-55px;
  border-radius:50%;
  background:rgba(67,224,195,.13);
  filter:blur(22px);
  pointer-events:none;
}
.blog-rating__summary{
  display:flex;
  align-items:center;
  gap:clamp(.9rem,2vw,1.25rem);
  min-width:0;
}
.blog-rating__score{
  display:grid;
  width:92px;
  height:92px;
  flex:0 0 92px;
  align-content:center;
  justify-items:center;
  border:1px solid rgba(129,242,220,.2);
  border-radius:25px;
  background:linear-gradient(150deg,rgba(34,124,113,.38),rgba(6,35,37,.58));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 14px 32px rgba(0,0,0,.18);
}
.blog-rating__score strong{
  color:#f3fffc;
  font-size:2rem;
  font-weight:950;
  line-height:1;
  letter-spacing:-.045em;
}
.blog-rating__score span{
  margin-top:.35rem;
  color:#7fb0a8;
  font-size:.68rem;
  font-weight:800;
}
.blog-rating__summary-copy{min-width:0}
.blog-rating__eyebrow{
  display:inline-block;
  margin-bottom:.28rem;
  color:#64dcc7;
  font-size:.64rem;
  font-weight:900;
  letter-spacing:.02em;
}
.blog-rating__summary-copy h2{
  margin:0;
  color:#efffFC;
  font-size:clamp(1rem,2vw,1.24rem);
  line-height:1.75;
}
.blog-rating__summary-copy p{
  margin:.32rem 0 0;
  color:#7f9f9a;
  font-size:.72rem;
}
.blog-rating__average-stars{
  position:relative;
  display:inline-block;
  margin-top:.38rem;
  direction:ltr;
  font-size:1.02rem;
  line-height:1;
  letter-spacing:.14rem;
}
.blog-rating__average-stars-base{color:rgba(255,255,255,.13)}
.blog-rating__average-stars-fill{
  position:absolute;
  inset:0 auto 0 0;
  width:var(--rating-percent);
  overflow:hidden;
  color:#ffd166;
  white-space:nowrap;
  text-shadow:0 0 18px rgba(255,194,74,.28);
}
.blog-rating__divider{
  width:1px;
  min-height:96px;
  background:linear-gradient(180deg,transparent,rgba(143,228,211,.19),transparent);
}
.blog-rating__action{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  text-align:center;
}
.blog-rating__prompt{
  color:#afc8c4;
  font-size:.72rem;
  font-weight:800;
}
.blog-rating__stars{
  display:flex;
  direction:ltr;
  align-items:center;
  justify-content:center;
  gap:.35rem;
  margin:.62rem 0 .5rem;
}
.blog-rating__star{
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  padding:0;
  border:1px solid rgba(255,255,255,.09);
  border-radius:13px;
  color:rgba(255,255,255,.22);
  background:rgba(2,21,23,.55);
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,color .18s ease,background .18s ease,box-shadow .18s ease;
  -webkit-tap-highlight-color:transparent;
}
.blog-rating__star svg{
  width:23px;
  height:23px;
  fill:transparent;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linejoin:round;
  transition:fill .18s ease,transform .18s ease;
}
.blog-rating__star:hover,
.blog-rating__star:focus-visible,
.blog-rating__star.is-active{
  border-color:rgba(255,204,87,.5);
  color:#ffd166;
  background:linear-gradient(145deg,rgba(255,190,67,.15),rgba(255,223,135,.06));
  box-shadow:0 10px 25px rgba(255,179,35,.1),inset 0 1px rgba(255,255,255,.05);
  transform:translateY(-2px);
}
.blog-rating__star.is-active svg{fill:#ffd166;transform:scale(1.04)}
.blog-rating__star:focus-visible{outline:2px solid #6be3cf;outline-offset:3px}
.blog-rating__star:disabled{cursor:wait;opacity:.65;transform:none}
.blog-rating__feedback{
  min-height:21px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.blog-rating__hint{
  color:#688d87;
  font-size:.64rem;
}
.blog-rating__message{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.35rem;
  font-size:.69rem;
  font-weight:800;
}
.blog-rating__message svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.blog-rating__message--success{color:#7ce9d3}
.blog-rating__message--error{color:#ff9caa}
.blog-rating__loading{
  position:absolute;
  inset:0;
  z-index:3;
  display:none;
  align-items:center;
  justify-content:center;
  gap:.65rem;
  color:#dffff8;
  background:rgba(3,24,26,.76);
  backdrop-filter:blur(5px);
  font-size:.74rem;
  font-weight:850;
}
.blog-rating__loading span{
  width:17px;
  height:17px;
  border:2px solid rgba(255,255,255,.2);
  border-top-color:#68e5cf;
  border-radius:50%;
  animation:blogRatingSpin .75s linear infinite;
}
@keyframes blogRatingSpin{to{transform:rotate(360deg)}}
@media(max-width:760px){
  .blog-rating{
    grid-template-columns:1fr;
    gap:1.15rem;
    margin-top:14px;
    padding:1.1rem;
    border-radius:20px;
  }
  .blog-rating__divider{
    width:100%;
    min-height:1px;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(143,228,211,.17),transparent);
  }
  .blog-rating__summary{align-items:flex-start}
  .blog-rating__score{
    width:76px;
    height:76px;
    flex-basis:76px;
    border-radius:21px;
  }
  .blog-rating__score strong{font-size:1.65rem}
  .blog-rating__action{padding-bottom:.15rem}
  .blog-rating__star{width:44px;height:44px}
}
@media(max-width:420px){
  .blog-rating__summary{gap:.75rem}
  .blog-rating__score{width:68px;height:68px;flex-basis:68px;border-radius:18px}
  .blog-rating__score strong{font-size:1.42rem}
  .blog-rating__summary-copy h2{font-size:.92rem}
  .blog-rating__summary-copy p{font-size:.66rem}
  .blog-rating__stars{width:100%;gap:.28rem}
  .blog-rating__star{width:calc((100vw - 106px)/5);max-width:44px;min-width:38px;height:42px;border-radius:12px}
  .blog-rating__star svg{width:21px;height:21px}
}
@media(prefers-reduced-motion:reduce){
  .blog-rating__star,
  .blog-rating__star svg{transition:none}
  .blog-rating__loading span{animation:none}
}

/* Article headings and FAQ visual refresh — v1.1 */
.blog-post__content h2,
.blog-post__content h3,
.blog-post__content h4,
.blog-post__content h5,
.blog-post__content h6 {
    color: #f4fffc !important;
    text-wrap: balance;
    text-shadow: 0 2px 18px rgba(99, 230, 207, .08);
}

.blog-post__content h2 {
    position: relative;
    padding-right: 17px;
}

.blog-post__content h2::before {
    content: "";
    position: absolute;
    top: .34em;
    right: 0;
    width: 4px;
    height: 1.12em;
    border-radius: 999px;
    background: linear-gradient(180deg, #8affea, #22b99e);
    box-shadow: 0 0 18px rgba(101, 230, 206, .28);
}

.blog-post__content h3 {
    color: #e7faf6 !important;
}

.blog-post__content h4,
.blog-post__content h5,
.blog-post__content h6 {
    color: #d8efeb !important;
}

.blog-post__faq {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin-top: 48px;
    padding: clamp(22px, 4vw, 36px);
    border: 1px solid rgba(128, 238, 216, .14);
    border-radius: 26px;
    background:
        radial-gradient(circle at 100% 0, rgba(80, 231, 201, .12), transparent 38%),
        linear-gradient(145deg, rgba(8, 47, 49, .94), rgba(3, 28, 30, .96));
    box-shadow:
        0 26px 70px rgba(0, 0, 0, .24),
        inset 0 1px 0 rgba(255, 255, 255, .035);
}

.blog-post__faq::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 210px;
    height: 210px;
    top: -135px;
    left: -90px;
    border-radius: 50%;
    background: rgba(91, 233, 207, .07);
    filter: blur(8px);
}

.blog-post__faq > header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(135, 240, 218, .09);
}

.blog-post__faq > header .eyebrow {
    color: #72e8d2;
}

.blog-post__faq h2 {
    margin: 5px 0 0;
    color: #f3fffc !important;
    font-size: clamp(1.4rem, 2.6vw, 2rem);
    line-height: 1.55;
    text-shadow: 0 4px 25px rgba(0, 0, 0, .16);
}

.blog-post__faq-list {
    display: grid;
    gap: 12px;
    counter-reset: blog-faq;
}

.blog-post__faq-item {
    counter-increment: blog-faq;
    overflow: hidden;
    border: 1px solid rgba(135, 240, 218, .11);
    border-radius: 17px;
    background: rgba(3, 31, 33, .66);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025);
    transition: border-color .25s ease, background .25s ease, transform .25s ease, box-shadow .25s ease;
}

.blog-post__faq-item:hover {
    border-color: rgba(118, 238, 214, .24);
    background: rgba(7, 43, 45, .78);
    transform: translateY(-1px);
}

.blog-post__faq-item[open] {
    border-color: rgba(112, 237, 212, .28);
    background:
        linear-gradient(145deg, rgba(10, 56, 57, .92), rgba(4, 36, 38, .9));
    box-shadow: 0 14px 34px rgba(0, 0, 0, .13), inset 0 1px rgba(255, 255, 255, .035);
}

.blog-post__faq-item summary {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    min-height: 68px;
    padding: 16px 18px;
    color: #eafbf7;
    cursor: pointer;
    list-style: none;
    font-size: 13.5px;
    font-weight: 900;
    line-height: 1.9;
    transition: color .2s ease;
}

.blog-post__faq-item summary::-webkit-details-marker {
    display: none;
}

.blog-post__faq-item summary > span:first-child {
    min-width: 0;
}

.blog-post__faq-item summary > span:first-child::before {
    content: counter(blog-faq, decimal-leading-zero);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    margin-left: 9px;
    color: #6be1cd;
    font-size: 9px;
    font-weight: 950;
    letter-spacing: .5px;
    opacity: .78;
}

.blog-post__faq-item[open] summary {
    color: #ffffff;
}

.blog-post__faq-icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border: 1px solid rgba(113, 235, 211, .17);
    border-radius: 11px;
    color: #80efda;
    background: rgba(79, 212, 187, .09);
    font-size: 20px;
    font-weight: 400;
    line-height: 1;
    box-shadow: inset 0 1px rgba(255, 255, 255, .04);
    transition: transform .25s ease, color .25s ease, background .25s ease, border-color .25s ease;
}

.blog-post__faq-item[open] .blog-post__faq-icon {
    color: #052d2f;
    border-color: #77e8d3;
    background: #77e8d3;
    transform: rotate(45deg);
}

.blog-post__faq-answer {
    position: relative;
    margin: 0 18px;
    padding: 17px 0 20px;
    border-top: 1px solid rgba(135, 240, 218, .08);
    color: #a9c8c3;
    font-size: 12.5px;
    line-height: 2.15;
}

.blog-post__faq-answer a {
    color: #78ead5;
}

@media (max-width: 640px) {
    .blog-post__content h2 {
        padding-right: 14px;
    }

    .blog-post__content h2::before {
        width: 3px;
    }

    .blog-post__faq {
        margin-top: 36px;
        padding: 18px 14px;
        border-radius: 20px;
    }

    .blog-post__faq > header {
        display: block;
        margin-bottom: 16px;
        padding: 0 3px 16px;
    }

    .blog-post__faq h2 {
        font-size: 1.35rem;
    }

    .blog-post__faq-list {
        gap: 9px;
    }

    .blog-post__faq-item {
        border-radius: 14px;
    }

    .blog-post__faq-item summary {
        min-height: 60px;
        gap: 10px;
        padding: 13px;
        font-size: 12px;
        line-height: 1.85;
    }

    .blog-post__faq-item summary > span:first-child::before {
        min-width: 22px;
        margin-left: 6px;
        font-size: 8px;
    }

    .blog-post__faq-icon {
        width: 30px;
        height: 30px;
        border-radius: 9px;
        font-size: 18px;
    }

    .blog-post__faq-answer {
        margin: 0 13px;
        padding: 14px 0 16px;
        font-size: 11.5px;
        line-height: 2.1;
    }
}

@media (prefers-reduced-motion: reduce) {
    .blog-post__faq-item,
    .blog-post__faq-icon {
        transition: none;
    }
}


/* ================================================================
   Dorsan blog host repair v2.7.3
   Explicit fallbacks for author, live readers and rating components.
   These rules intentionally do not depend on Tailwind arbitrary-value
   utilities, so they remain stable on shared-host/CDN caches.
   ================================================================ */

/* About-author card */
.blog-post__reading-grid > div > aside {
    display: grid !important;
    grid-template-columns: 72px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 16px !important;
    width: 100%;
    min-width: 0;
}

.blog-post__reading-grid > div > aside > span:first-child {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px;
    justify-self: center;
}

.blog-post__reading-grid > div > aside > div:last-child {
    min-width: 0;
    text-align: right !important;
}

.blog-post__reading-grid > div > aside > div:last-child p {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* Live readers card */
.blog-presence {
    position: relative;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) 58px !important;
    align-items: center !important;
    gap: 16px !important;
    min-height: 96px !important;
    width: 100%;
    padding: 18px 20px !important;
    direction: rtl;
}

.blog-presence > div:nth-of-type(1) {
    position: absolute !important;
    pointer-events: none;
}

.blog-presence > div:nth-of-type(2) {
    grid-column: 3 !important;
    width: 58px !important;
    height: 58px !important;
    min-width: 58px;
    min-height: 58px;
    display: grid !important;
    place-items: center !important;
    justify-self: end;
    border-radius: 16px !important;
}

.blog-presence > div:nth-of-type(2) svg {
    display: block;
    width: 28px !important;
    height: 28px !important;
}

.blog-presence > div:nth-of-type(3) {
    grid-column: 2 !important;
    min-width: 0;
    width: 100%;
    text-align: right;
}

.blog-presence > div:nth-of-type(3) > span,
.blog-presence > div:nth-of-type(3) > p {
    width: auto !important;
    max-width: 100%;
}

.blog-presence > div:nth-of-type(3) > p {
    margin-top: 4px !important;
    margin-bottom: 0;
}

.blog-presence > div:nth-of-type(4) {
    grid-column: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start;
    min-width: max-content;
}

.blog-presence > div:nth-of-type(5) {
    position: absolute !important;
}

/* Article rating card */
section[aria-labelledby="blog-rating-title"] > div:nth-of-type(2) {
    position: relative;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 1px minmax(260px, .8fr) !important;
    align-items: center !important;
    gap: 24px !important;
    width: 100%;
    min-width: 0;
}

section[aria-labelledby="blog-rating-title"] > div:nth-of-type(2) > div:first-child {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    min-width: 0;
    width: 100%;
}

section[aria-labelledby="blog-rating-title"] > div:nth-of-type(2) > div:first-child > div:first-child {
    display: grid !important;
    place-items: center !important;
    width: 72px !important;
    height: 72px !important;
    min-width: 72px;
    flex: 0 0 72px;
}

section[aria-labelledby="blog-rating-title"] > div:nth-of-type(2) > div:first-child > div:last-child {
    min-width: 0;
    width: 100%;
    text-align: right;
}

section[aria-labelledby="blog-rating-title"] > div:nth-of-type(2) > div:nth-child(2) {
    display: block !important;
    width: 1px !important;
    height: 100% !important;
    min-height: 94px;
}

section[aria-labelledby="blog-rating-title"] > div:nth-of-type(2) > div:last-child {
    min-width: 0 !important;
    width: 100% !important;
    text-align: right;
}

section[aria-labelledby="blog-rating-title"] > div:nth-of-type(2) > div:last-child > span:first-child {
    display: block !important;
    width: 100% !important;
    white-space: normal !important;
    writing-mode: horizontal-tb !important;
    word-break: normal !important;
}

section[aria-labelledby="blog-rating-title"] [role="group"] {
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    width: 100%;
    margin-top: 8px !important;
}

.blog-rating-star {
    display: grid !important;
    place-items: center !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border-radius: 12px !important;
    writing-mode: horizontal-tb !important;
}

.blog-rating-star svg {
    display: block !important;
    width: 26px !important;
    height: 26px !important;
    min-width: 26px;
    fill: currentColor;
    stroke: currentColor;
}

@media (max-width: 767.98px) {
    .blog-post__reading-grid > div > aside {
        grid-template-columns: 60px minmax(0, 1fr) !important;
        gap: 13px !important;
        padding: 16px !important;
    }

    .blog-post__reading-grid > div > aside > span:first-child {
        width: 56px !important;
        height: 56px !important;
        min-width: 56px;
    }

    .blog-presence {
        grid-template-columns: minmax(0, 1fr) 52px !important;
        gap: 13px !important;
        min-height: 88px !important;
        padding: 16px !important;
    }

    .blog-presence > div:nth-of-type(2) {
        grid-column: 2 !important;
        width: 52px !important;
        height: 52px !important;
        min-width: 52px;
        min-height: 52px;
    }

    .blog-presence > div:nth-of-type(3) {
        grid-column: 1 !important;
    }

    .blog-presence > div:nth-of-type(4),
    .blog-presence > div:nth-of-type(5) {
        display: none !important;
    }

    section[aria-labelledby="blog-rating-title"] > div:nth-of-type(2) {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 18px !important;
    }

    section[aria-labelledby="blog-rating-title"] > div:nth-of-type(2) > div:nth-child(2) {
        display: none !important;
    }

    section[aria-labelledby="blog-rating-title"] > div:nth-of-type(2) > div:first-child > div:first-child {
        width: 64px !important;
        height: 64px !important;
        min-width: 64px;
        flex-basis: 64px;
    }

    .blog-rating-star {
        flex-basis: 42px !important;
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
    }
}

@media (max-width: 390px) {
    section[aria-labelledby="blog-rating-title"] [role="group"] {
        gap: 4px !important;
    }

    .blog-rating-star {
        flex-basis: calc((100vw - 112px) / 5) !important;
        width: calc((100vw - 112px) / 5) !important;
        min-width: 36px !important;
        max-width: 42px !important;
    }
}

/* Blog solid background reset — v3.0 */
body.blog-route-surface,
main.main-blog-surface,
.blog-simple-surface{
    background:#031a1c !important;
    background-color:#031a1c !important;
    background-image:none !important;
}
.blog-simple-surface{
    min-height:100%;
}
.blog-simple-surface > section,
.blog-simple-surface > article,
.blog-simple-surface > article > header,
.blog-simple-surface > article > section{
    background:#031a1c !important;
    background-color:#031a1c !important;
    background-image:none !important;
}
.blog-simple-surface .blog-page-hero:before,
.blog-simple-surface .blog-page-hero:after,
.blog-simple-surface .blog-author-hero:before,
.blog-simple-surface .blog-author-hero:after,
.blog-simple-surface .blog-author-profile-hero:before,
.blog-simple-surface .blog-author-profile-hero:after,
.blog-simple-surface .blog-post__hero:before,
.blog-simple-surface .blog-post__hero:after{
    display:none !important;
    content:none !important;
    background:none !important;
    box-shadow:none !important;
}
