/* LingoFantasy v3: wide three-device hero, CoolIELTS method, backend journal, support tabs */
.hero-three-device{background:#f6f7fd;padding:63px 0 56px;overflow:hidden}
.hero-three-device:before{display:none}.hero-three-device .container{width:min(1336px,calc(100% - 44px))}
.hero-centered{text-align:center}.hero-heading{position:relative;z-index:1}
.hero-three-device h1{font-size:clamp(37px,4.3vw,63px);letter-spacing:-2.5px;margin:19px auto 13px;line-height:1.25}
.hero-three-device .hero-lead{max-width:740px;font-size:16px;line-height:1.9;margin:0 auto 4px}
.hero-device-art{width:100%;margin:2px auto 0}.hero-device-art img{display:block;max-width:100%;width:100%;height:auto;object-fit:contain;mix-blend-mode:multiply}
.hero-center-actions{justify-content:center;margin-top:-6px;position:relative;z-index:2}
.hero-brief{display:flex;justify-content:center;align-items:center;gap:14px;color:#969bb1;font-size:12px;margin-top:25px;font-weight:650;flex-wrap:wrap}.hero-brief i{display:block;width:3px;height:3px;border-radius:50%;background:#adb5c7}
/* CoolIELTS learning path patterns adapted to the refreshed visual language */
.cool-method{background:white}.cool-method .section-head{max-width:730px}
.cool-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.cool-step{border:1px solid #ebedf6;border-radius:22px;overflow:hidden;background:white;box-shadow:0 13px 40px rgba(55,65,140,.055);padding:25px 23px 27px;transition:transform .2s}.cool-step:hover{transform:translateY(-5px)}
.cool-step-label{font-size:12px;color:#635aeb;font-weight:820;margin-bottom:18px;display:flex;gap:13px;align-items:center;letter-spacing:.2px}.cool-step-label .zh,.cool-step-label .en{letter-spacing:0}
.cool-step-image{aspect-ratio:1.58;display:grid;place-items:center;overflow:hidden;border-radius:13px;background:#f7f8fd;border:1px solid #ecedf7}
.cool-step-image img{width:100%;height:100%;object-fit:cover;object-position:top left}
.cool-step h3{font-size:19px;line-height:1.5;letter-spacing:-.4px;margin:22px 0 10px}.cool-step p{color:#7c879d;font-size:13px;line-height:1.95;margin:0}
.cool-faq .section-head{max-width:790px}.cool-faq-list{max-width:960px;margin:0 auto;border-top:1px solid #e6e9f4}
.cool-faq-list details{border-bottom:1px solid #e5e9f4;padding:0 8px}.cool-faq-list summary{padding:21px 34px 21px 8px;font-size:16px;font-weight:730;position:relative;list-style:none;cursor:pointer;outline-offset:5px}.cool-faq-list summary::-webkit-details-marker{display:none}.cool-faq-list summary:after{content:'+';position:absolute;right:12px;font-size:26px;top:10px;color:#6259ed;font-weight:400}.cool-faq-list details[open] summary:after{content:'−'}.cool-faq-list details p{margin:0 0 23px 8px;font-size:14px;max-width:900px;color:#7e8aa0}
.journal-section{padding-top:90px}.journal-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:35px}.journal-head h2{margin:2px 0 8px;font-size:clamp(27px,3vw,39px);letter-spacing:-.9px}.journal-head p{margin:0;color:#8490a4;font-size:14px}.journal-grid,.blog-dynamic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.blog-placeholder{grid-column:1/-1;text-align:center;background:#f8faff;padding:35px 22px;border-radius:15px;color:#8b95a7}
/* Dynamic articles */
.blog-page-hero{padding:95px 0 85px;background:radial-gradient(ellipse 700px 250px at 50% 100%,#eaeafd,transparent),#f9faff}
.blog-listing-section{padding-top:58px;min-height:380px}.blog-toolbar{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:24px}.blog-filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.blog-filter-row button{border:1px solid transparent;background:transparent;border-radius:10px;padding:10px 15px;color:#78839a;font-size:13px;font-weight:750}.blog-filter-row button.is-selected{background:#f0eeff;color:#5f55e9;border-color:#e4e1ff}.blog-search-label{border:1px solid #e4e8f1;border-radius:11px;padding:0 13px;display:flex;align-items:center;gap:9px;color:#99a3b5;min-width:260px}.blog-search-label input{width:100%;outline:0;border:0;padding:10px 0;background:transparent;color:#26364e;font-size:13px}.blog-search-label:focus-within{border-color:#766dff}
.blog-status{padding:18px 20px;border:1px solid #e8ebf4;border-radius:12px;background:#fafbff;color:#8792a7;font-size:14px;text-align:center;margin:12px 0 22px}.blog-status:empty{display:none}.blog-pagination{text-align:center;padding-top:30px}.blog-pagination button{margin:0 5px}
.dynamic-blog-card{border:1px solid #eaedf4;background:#fff;border-radius:17px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .23s,box-shadow .23s;box-shadow:0 9px 24px rgba(40,52,100,.035)}.dynamic-blog-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px rgba(54,65,126,.1)}.dynamic-card-image{display:block;background:linear-gradient(145deg,#f5f4ff,#eaf4ff);aspect-ratio:1.67;overflow:hidden}.dynamic-card-image img{width:100%;height:100%;object-fit:cover}.dynamic-card-image.placeholder{display:grid;place-items:center;color:#7068ed;font-size:24px;font-weight:850;letter-spacing:-1px}.dynamic-blog-body{padding:21px;flex:1;display:flex;flex-direction:column}.dynamic-category{font-size:11px;color:#6259eb;font-weight:820;letter-spacing:.8px;text-transform:uppercase}.dynamic-blog-body h3{font-size:18px;line-height:1.48;margin:10px 0 9px;letter-spacing:-.35px}.dynamic-blog-body p{font-size:13px;line-height:1.85;color:#8691a5;margin:0 0 17px;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.dynamic-blog-meta{font-size:12px;color:#a0a9b9;padding-top:12px;border-top:1px solid #f1f2f7}.dynamic-blog-card a:focus-visible{outline:3px solid #8681f5;outline-offset:4px}
.article-dynamic-section{padding-top:75px}.article-layout{max-width:850px}.article-back{font-size:13px;color:#6259e9;font-weight:720}.article-kicker{font-size:11px;font-weight:800;color:#635bec;letter-spacing:1.5px;margin:40px 0 10px}.article-layout>h1{line-height:1.32;letter-spacing:-1.3px;font-size:clamp(28px,3vw,44px);margin:0 0 16px}.article-meta{font-size:12px;color:#9ca6b8;margin-bottom:25px}.article-layout>#dynamic-article-cover{max-width:100%;width:100%;max-height:420px;object-fit:cover;border-radius:16px;margin-bottom:40px}.rich-blog-content{font-size:15px;line-height:2.05;color:#455169;overflow-wrap:anywhere}.rich-blog-content h2,.rich-blog-content h3{line-height:1.5;color:#1c2940;margin:40px 0 13px}.rich-blog-content img,.rich-blog-content video{display:block;max-width:100%;height:auto;margin:25px auto;border-radius:13px}.rich-blog-content a{color:#6355e9;text-decoration:underline;text-underline-offset:3px}.rich-blog-content blockquote{border-left:3px solid #776cef;padding:10px 22px;color:#7b859b;background:#f8f8ff;margin:25px 0}.rich-blog-content pre{overflow:auto;background:#f7f8fc;padding:18px;border-radius:12px}.rich-blog-content table{display:block;overflow-x:auto;border-collapse:collapse;margin:18px 0;max-width:100%}.rich-blog-content td,.rich-blog-content th{border:1px solid #e4e8f2;padding:8px 13px}.article-bottom{margin-top:65px;padding:35px 0;border-top:1px solid #eaedf5}
/* Contact support: one quiet card, no company sections */
.contact-support-page{min-height:calc(100vh - 82px);background:#f6f7fe;padding:62px 0 98px}.contact-support-page .container{max-width:1130px}.support-card{border-radius:24px;border:1px solid #e8ebf5;background:#fff;padding:36px 42px 42px;box-shadow:0 14px 50px rgba(63,66,132,.025)}.support-top{display:flex;justify-content:space-between;align-items:center;gap:18px}.support-heading{display:flex;align-items:center;gap:15px}.support-heading-icon{display:grid;place-items:center;color:#665df2}.support-heading h1{margin:0;font-size:24px;letter-spacing:-.5px}.support-reset{border:0;background:transparent;color:#8d8af8;padding:9px;display:grid;place-items:center;border-radius:9px}.support-reset:hover{background:#f0efff}.support-copy{color:#626f86;margin:26px 0 22px;font-size:15px;line-height:2.05}.support-copy p{margin:0 0 10px}.support-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #e6eaf3;gap:0}.support-tabs button{border:0;border-bottom:3px solid transparent;background:none;color:#626f83;font-size:16px;font-weight:600;padding:14px 5px 15px;white-space:nowrap}.support-tabs button[aria-selected="true"]{color:#655bf1;border-bottom-color:#6f63fb;font-weight:790}.support-tabs button:focus-visible{outline:2px solid #776df9;outline-offset:-3px}.support-panels{min-height:475px;padding:29px 0 10px;display:grid;place-items:start center}.support-panels [role="tabpanel"]{width:100%;text-align:center}.support-panels [hidden]{display:none!important}.contact-qr-box{background:#f8f9ff;border:1px solid #eff0f8;border-radius:19px;max-width:350px;padding:16px;margin:0 auto}.contact-qr-box img{width:100%;height:auto;display:block;object-fit:contain;max-height:460px;background:#fff}.contact-qr-box.telegram{max-width:355px;padding:25px}.qr-instruction{font-size:13px;color:#969fb3;margin:16px auto}.contact-unavailable{max-width:520px;margin:30px auto;color:#8b94a9}.contact-unavailable .muted-circle{width:74px;height:74px;display:grid;place-items:center;margin:20px auto;background:#f0efff;border-radius:50%;font-size:34px;color:#6a62ef}.contact-unavailable h2{color:#29334a;font-size:22px}.contact-unavailable p{font-size:14px;margin-bottom:20px}.support-email-box{max-width:760px;margin:3px auto;padding:30px;border:1px solid #e9ebf5;border-radius:18px;text-align:left}.support-email-title{display:flex;align-items:center;gap:16px;font-size:18px}.support-mail-icon{background:#edeafd;color:#655aee;width:52px;height:52px;border-radius:13px;display:grid;place-items:center}.support-email-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:23px}.support-email-row>a{font-size:20px;font-weight:750;letter-spacing:-.3px;color:#6259ef;overflow-wrap:anywhere}.support-copy-button{border:0;background:transparent;color:#675ff0;font-weight:780;display:inline-flex;align-items:center;gap:10px;white-space:nowrap;padding:8px}.email-copy-status{font-size:12px;color:#6e70a5;min-height:18px;margin:4px 0 0}
@media (max-width:920px){.cool-method-grid,.journal-grid,.blog-dynamic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cool-step:last-child{grid-column:1/-1}.hero-three-device h1{font-size:44px}.blog-toolbar{align-items:flex-start;flex-direction:column}}
@media (max-width:640px){.hero-three-device{padding:43px 0 44px}.hero-three-device .container{width:calc(100% - 16px)}.hero-heading{padding:0 15px}.hero-three-device h1{font-size:35px;letter-spacing:-1.3px;margin:15px auto 12px}.hero-three-device .hero-lead{font-size:13px;line-height:1.85}.hero-device-art{margin:12px auto 8px}.hero-center-actions{gap:10px;padding:0 14px}.hero-center-actions .btn{font-size:12px;padding:12px 13px}.hero-brief{gap:9px;margin-top:22px;font-size:10px}.cool-method-grid,.journal-grid,.blog-dynamic-grid{grid-template-columns:1fr}.cool-step:last-child{grid-column:auto}.cool-method .section-head{margin-bottom:33px}.cool-step{padding:19px}.cool-step-image{aspect-ratio:1.7}.cool-faq-list summary{font-size:14px}.journal-head{align-items:flex-start;flex-direction:column;gap:11px}.blog-listing-section{padding:40px 0}.blog-page-hero{padding:70px 0 55px}.blog-filter-row{gap:3px}.blog-filter-row button{font-size:12px;padding:8px 10px}.blog-search-label{width:100%}.support-card{padding:22px 17px 25px;border-radius:17px}.contact-support-page{padding:22px 0 55px}.contact-support-page .container{width:calc(100% - 28px)}.support-heading h1{font-size:20px}.support-heading-icon svg{width:23px}.support-copy{margin:23px 0 15px;font-size:13px}.support-tabs button{font-size:12px;padding:12px 2px}.support-panels{padding-top:22px;min-height:400px}.contact-qr-box{max-width:min(330px,100%);padding:13px}.contact-qr-box.telegram{max-width:min(315px,100%)}.support-email-box{padding:20px 16px}.support-email-row{align-items:flex-start;flex-direction:column;gap:10px}.support-email-row>a{font-size:17px}.support-email-title{font-size:16px}.article-dynamic-section{padding-top:50px}.article-kicker{margin-top:24px}}

/* ── Footer enhancements: QR code, social links, ICP ── */
.footer-layout{grid-template-columns:1.4fr .6fr .7fr .6fr}
.footer-wechat-qr{margin-top:16px}.footer-qr-label{font-size:11px;color:#929eb0;margin:0 0 7px;font-weight:700}
.footer-wechat-qr img{width:130px;height:130px;object-fit:cover;border-radius:10px;border:1px solid #e8ebf4}
.footer-col-social a{display:flex;align-items:center;gap:9px;color:#8490a5;font-size:12px;margin-bottom:11px}
.footer-col-social a:hover{color:var(--primary)}.footer-col-social a svg{width:20px;height:20px;flex-shrink:0;stroke:#6259eb}
.footer-social-icon{width:72px;height:auto;object-fit:contain}.xiaohongshu-icon{width:70px}
.footer-icp a{color:#a1aab8;font-size:11px;text-decoration:underline;text-underline-offset:3px}.footer-icp a:hover{color:var(--primary)}
.footer-bottom{flex-wrap:wrap;gap:8px 20px}
@media(max-width:920px){.footer-layout{grid-template-columns:1fr 1fr;gap:30px}.footer-brand{grid-column:span 2}.footer-col-social{grid-column:span 1}}
@media(max-width:640px){.footer-layout{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-col-social{grid-column:auto}}

/* ── Blog featured section ── */
.blog-featured-section{background:#f8faff;padding:72px 0 56px}
.blog-featured-banner{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;background:#fff;border:1px solid #eaecf5;border-radius:22px;padding:30px;box-shadow:0 12px 40px rgba(55,65,130,.055);margin-bottom:56px}
.blog-featured-img img{border-radius:12px;display:block;width:100%;height:auto;object-fit:cover}
.blog-featured-body{display:flex;flex-direction:column;gap:14px}
.blog-featured-author{display:flex;align-items:center;gap:12px}
.blog-featured-author-info{display:flex;flex-direction:column;gap:2px}
.blog-featured-author-info span:first-child{font-size:14px;font-weight:700;color:#26364e}
.blog-featured-title{font-size:21px;font-weight:800;line-height:1.45;letter-spacing:-.4px;color:#18253d;margin:0;transition:color .18s}
.blog-featured-title:hover{color:var(--primary)}
.blog-featured-excerpt{font-size:13px;color:#8490a5;line-height:1.95;margin:0;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.blog-featured-btn{align-self:flex-end;gap:8px}
.blog-static-heading{font-size:22px;font-weight:800;letter-spacing:-.5px;margin:0 0 22px;color:#18253d}
.blog-static-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.blog-static-card{background:#fff;border:1px solid #eaecf5;border-radius:17px;overflow:hidden;display:flex;flex-direction:column;transition:transform .22s,box-shadow .22s;box-shadow:0 8px 24px rgba(43,55,107,.04)}
.blog-static-card:hover{transform:translateY(-4px);box-shadow:0 20px 48px rgba(54,65,126,.1)}
.blog-static-img-wrap{position:relative;overflow:hidden;aspect-ratio:1.67}
.blog-static-img-wrap img{width:100%;height:100%;object-fit:cover;display:block}
.blog-static-tag{position:absolute;top:10px;left:10px;background:rgba(99,89,235,.82);color:#fff;font-size:11px;font-weight:750;padding:4px 9px;border-radius:8px;backdrop-filter:blur(4px)}
.blog-static-body{padding:20px;display:flex;flex-direction:column;flex:1;gap:10px}
.blog-static-meta{display:flex;align-items:center;gap:10px}
.blog-static-title{font-size:16px;font-weight:800;line-height:1.5;color:#18253d;margin:0;transition:color .18s;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.blog-static-title:hover{color:var(--primary)}
.blog-static-excerpt{font-size:12px;color:#8490a5;line-height:1.95;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.blog-static-btn{align-self:flex-end;font-size:12px;padding:9px 14px;gap:7px;margin-top:auto}
@media(max-width:920px){.blog-featured-banner{grid-template-columns:1fr;gap:22px}.blog-static-grid{grid-template-columns:repeat(2,1fr)}.blog-static-card:last-child{grid-column:1/-1}}
@media(max-width:640px){.blog-featured-section{padding:48px 0 36px}.blog-featured-banner{padding:18px}.blog-featured-title{font-size:18px}.blog-static-grid{grid-template-columns:1fr}.blog-static-card:last-child{grid-column:auto}}
