:root{--black:#161412;--ink:#25211e;--paper:#f7f5f1;--orange:#ff5a1f;--purple:#6b52c7;--line:#dedbd5;--muted:#716c66;--radius:24px;--shadow:0 18px 50px rgba(21,17,14,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Noto Sans SC","Microsoft YaHei",sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}img{display:block;width:100%;height:100%;object-fit:cover}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 48px));margin:auto}.section{padding:112px 0}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:700;color:#827b73;margin:0 0 18px}.eyebrow.light{color:rgba(255,255,255,.72)}h1,h2,h3,p{margin-top:0}h2{font-size:clamp(36px,4vw,60px);line-height:1.08;letter-spacing:-.04em;margin-bottom:0}.lead{font-size:18px;line-height:1.8;color:var(--muted);max-width:520px}.section-head{margin-bottom:52px}.section-head.split{display:flex;justify-content:space-between;gap:50px;align-items:flex-end}.row-head{display:flex;justify-content:space-between;gap:32px;align-items:end}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 22px;font-weight:700;font-size:14px;border:1px solid transparent;transition:.25s ease;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-dark{background:#171513;color:#fff}.btn-orange{background:var(--orange);color:#fff}.btn-ghost{border-color:rgba(255,255,255,.55);color:#fff;background:rgba(0,0,0,.14);backdrop-filter:blur(10px)}.btn-outline{border-color:#bdb8b0;background:#fff}.site-header{height:76px;position:sticky;top:0;z-index:40;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(0,0,0,.06)}.nav-wrap{height:100%;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:12px;min-width:230px}.brand img{width:44px;height:44px;object-fit:contain}.brand-name{font-size:20px;font-weight:800;letter-spacing:-.04em}.brand-name small{display:block;font-size:7px;letter-spacing:.09em;font-weight:700;margin-top:2px}.nav-links{display:flex;gap:28px;align-items:center;margin-left:auto}.nav-links a{font-size:14px;color:#4e4944;position:relative}.nav-links a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--orange);transition:.2s}.nav-links a:hover:after{width:100%}.nav-cta{margin-left:6px}.menu-toggle{display:none;border:0;background:none;width:42px;height:42px;padding:9px}.menu-toggle span{display:block;height:2px;background:#222;margin:6px 0}.hero{height:min(780px,88vh);min-height:650px;position:relative;overflow:hidden;background:#1b1613;color:#fff}.hero-media{position:absolute;top:0;bottom:0;width:50%;overflow:hidden}.hero-left{left:0}.hero-right{right:0}.hero-media img{transition:transform 8s ease}.hero:hover .hero-media img{transform:scale(1.035)}.hero-left:after,.hero-right:after{content:"";position:absolute;inset:0}.hero-left:after{background:linear-gradient(90deg,rgba(11,7,5,.84) 0%,rgba(11,7,5,.52) 55%,rgba(11,7,5,.08) 100%)}.hero-right:after{background:linear-gradient(270deg,rgba(30,17,55,.18) 0%,rgba(18,9,29,.42) 100%)}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.18));z-index:1}.hero-content{position:relative;z-index:2;padding-top:150px;max-width:1180px}.hero-content h1{font-size:clamp(52px,7vw,92px);line-height:1.03;letter-spacing:-.065em;margin:0 0 28px;max-width:790px}.hero-sub{font-size:24px;font-weight:800;letter-spacing:.01em;margin-bottom:18px}.hero-sub b{color:var(--orange);padding:0 6px}.hero-copy{font-size:17px;line-height:1.8;max-width:610px;color:rgba(255,255,255,.78);margin-bottom:34px}.hero-actions{display:flex;gap:14px}.hero-tags{position:absolute;z-index:3;left:24px;right:24px;bottom:22px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.18em;color:rgba(255,255,255,.6)}.intro{background:var(--paper)}.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.business-card{border-radius:var(--radius);overflow:hidden;display:grid;grid-template-columns:48% 52%;min-height:450px;box-shadow:var(--shadow)}.business-copy{padding:40px 34px;display:flex;flex-direction:column;align-items:flex-start}.orange-card{background:#f4e2d5}.purple-card{background:#e6e0f5}.business-copy .num{font-size:14px;font-weight:800}.business-copy .en{font-size:10px;letter-spacing:.16em;margin:8px 0 26px;color:#655d58}.business-copy h3{font-size:34px;letter-spacing:-.04em;margin-bottom:16px}.business-copy>p:not(.en){line-height:1.7;color:#625b55}.business-copy ul{list-style:none;padding:0;margin:8px 0 26px;line-height:2;color:#4d4741;font-size:14px}.text-link{margin-top:auto;font-weight:800;font-size:14px}.business-image{min-height:450px}.works{background:#fff}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid #dedbd5;background:#fff;border-radius:999px;padding:9px 16px;font-size:13px;cursor:pointer}.filters button.active{background:#171513;color:#fff;border-color:#171513}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.work-card{border:1px solid #e6e2dd;border-radius:18px;overflow:hidden;background:#fff;transition:.25s;min-width:0}.work-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.work-card.wide{grid-column:span 2}.work-card>img{aspect-ratio:16/10}.work-card:not(.wide)>img{aspect-ratio:4/3}.work-meta{padding:18px 18px 20px;display:flex;justify-content:space-between;align-items:center;gap:15px}.work-meta h3{font-size:20px;margin-bottom:6px}.work-meta p{font-size:13px;color:#77716b;margin:0}.work-meta span{font-size:22px}.work-card.hidden{display:none}.process{background:#171513;color:#fff}.process .eyebrow{color:#8c8781}.process .lead{color:#aaa49c}.process-row{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:12px;align-items:center}.step{border-top:1px solid #504b46;padding-top:20px;min-height:160px}.step span{font-size:12px;color:#88827a}.step b{display:block;font-size:20px;margin:20px 0 10px}.step p{font-size:13px;color:#a9a39b;line-height:1.7}.process-row i{font-style:normal;color:#736d66}.applications{background:#f7f5f1}.masonry{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:150px;gap:14px}.app{margin:0;position:relative;overflow:hidden;border-radius:16px;background:#ddd;grid-column:span 4;grid-row:span 2}.app.tall{grid-column:span 4;grid-row:span 3}.app:nth-child(2){grid-column:span 5}.app:nth-child(3){grid-column:span 3}.app:nth-child(4){grid-column:span 3}.app:nth-child(5){grid-column:span 5}.app:nth-child(6){grid-column:span 4}.app img{transition:.35s}.app:hover img{transform:scale(1.035)}.app:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.65))}.app figcaption{position:absolute;left:18px;bottom:16px;z-index:2;color:#fff;font-size:14px;font-weight:700}.clients{background:#fff}.client-boards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.client-boards img{height:auto;object-fit:contain;background:#fff;border:1px solid #eee;border-radius:18px}.about{background:#f1efeb}.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:start}.about-text{font-size:18px;line-height:1.95;color:#625d57;max-width:650px;margin:28px 0 34px}.about-points{display:grid;gap:14px}.about-points div{background:#fff;border-radius:18px;padding:26px}.about-points b{font-size:22px;display:block;margin-bottom:7px}.about-points span{color:#6f6963;line-height:1.6}.insights{background:#fff}.insight-list{border-top:1px solid #dedbd5}.insight-list a{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding:22px 0;border-bottom:1px solid #dedbd5;transition:.2s}.insight-list a:hover{padding-left:10px}.insight-list span{font-size:12px;color:#98928b}.insight-list b{font-size:18px}.insight-list i{font-style:normal;font-size:20px}.contact{background:#171513;color:#fff;padding:90px 0}.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center}.contact h2{font-size:clamp(42px,5vw,72px);margin-bottom:20px}.contact p{max-width:650px;color:#b8b3ac;line-height:1.8}.contact-card{background:#24211e;border:1px solid #393531;border-radius:22px;padding:30px}.contact-card p{margin:0 0 8px;color:#8f8981;font-size:13px}.contact-card strong{display:block;font-size:20px;margin-bottom:12px}.contact-card span{display:block;color:#a9a39b;font-size:13px;line-height:1.7;margin-bottom:22px}.contact-card small{display:block;margin-top:10px;color:#a9a39b}.footer{background:#0f0e0d;color:#fff;padding:34px 0 20px}.footer-grid{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px}.footer-brand{display:grid;grid-template-columns:48px auto;column-gap:12px;align-items:center}.footer-brand img{width:46px;height:46px;object-fit:contain;grid-row:span 2;filter:invert(1)}.footer-brand b{font-size:18px}.footer-brand span{font-size:8px;letter-spacing:.12em;color:#777}.footer-links{display:flex;gap:18px;font-size:13px;color:#b7b2ac}.footer-meta{justify-self:end;display:flex;gap:18px;font-size:12px;color:#8d8780}.copyright{border-top:1px solid #26221f;margin-top:26px;padding-top:16px;font-size:11px;color:#6d6862}
@media (max-width:980px){.nav-links,.nav-cta{display:none}.menu-toggle{display:block;margin-left:auto}.nav-links.open{display:flex;position:fixed;top:76px;left:0;right:0;background:#fff;padding:24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid #eee}.hero{height:auto;min-height:720px}.hero-media{width:100%;height:50%}.hero-left{top:0;bottom:auto}.hero-right{top:50%;bottom:0}.hero-right:after{background:rgba(0,0,0,.25)}.hero-content{padding-top:120px;padding-bottom:120px}.business-grid,.about-grid,.contact-grid,.client-boards{grid-template-columns:1fr}.business-card{grid-template-columns:1fr;min-height:auto}.business-image{min-height:320px}.work-grid{grid-template-columns:1fr 1fr}.work-card.wide{grid-column:span 2}.process-row{grid-template-columns:1fr 1fr;gap:24px}.process-row i{display:none}.masonry{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.app,.app.tall,.app:nth-child(n){grid-column:span 1;grid-row:span 1}.section-head.split{align-items:flex-start}.footer-grid{grid-template-columns:1fr}.footer-meta{justify-self:start}.footer-links{flex-wrap:wrap}}
@media (max-width:640px){.container{width:min(100% - 28px,1180px)}.section{padding:78px 0}.site-header{height:68px}.brand{min-width:auto}.brand img{width:38px;height:38px}.brand-name{font-size:18px}.menu-toggle{margin-left:auto}.nav-links.open{top:68px}.hero{min-height:720px}.hero-content{padding-top:110px}.hero-content h1{font-size:48px}.hero-sub{font-size:19px}.hero-copy{font-size:15px}.hero-actions{flex-wrap:wrap}.hero-tags{display:none}.section-head.split,.row-head{display:block}.lead{font-size:16px;margin-top:22px}.business-grid{gap:16px}.business-copy{padding:30px 24px}.business-copy h3{font-size:30px}.business-image{min-height:260px}.work-grid{grid-template-columns:1fr}.work-card.wide{grid-column:span 1}.work-card>img,.work-card:not(.wide)>img{aspect-ratio:4/3}.process-row{grid-template-columns:1fr}.step{min-height:auto}.masonry{grid-template-columns:1fr;grid-auto-rows:250px}.client-boards{gap:14px}.client-boards img{max-height:620px;object-fit:cover;object-position:top}.about-grid,.contact-grid{gap:42px}.footer-links{gap:12px}.footer-meta{flex-direction:column;gap:6px}}


/* ===== Case detail / case index ===== */
.case-hero{padding:110px 0 72px;background:var(--paper);border-bottom:1px solid #e8e3dc}
.case-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end}
.case-hero h1{font-size:clamp(54px,7vw,96px);line-height:1;letter-spacing:-.065em;margin:12px 0 26px}
.case-kicker{font-size:13px;letter-spacing:.14em;color:#8b847c;font-weight:800}
.case-deck{font-size:21px;line-height:1.75;color:#625d57;max-width:720px}
.case-facts{display:grid;gap:1px;background:#ded9d2;border:1px solid #ded9d2;border-radius:18px;overflow:hidden}
.case-fact{background:#fff;padding:20px 22px;display:grid;grid-template-columns:105px 1fr;gap:20px}
.case-fact span{font-size:12px;color:#979087}.case-fact b{font-size:14px;font-weight:800}
.case-cover{background:#111}.case-cover img{width:100%;height:auto;max-height:760px;object-fit:cover}
.case-story{background:#fff}
.case-story-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}
.case-story h2{font-size:clamp(34px,4vw,58px);line-height:1.12;letter-spacing:-.05em;position:sticky;top:110px}
.case-story-copy{font-size:18px;line-height:2;color:#5e5852}
.case-story-copy p{margin:0 0 24px}
.case-gallery{background:#f4f1ec}
.case-gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.case-shot{margin:0;border-radius:18px;overflow:hidden;background:#ddd;grid-column:span 6}
.case-shot.wide{grid-column:span 12}.case-shot.third{grid-column:span 4}
.case-shot img{width:100%;height:100%;min-height:360px;object-fit:cover}
.case-quote{background:#171513;color:#fff;padding:95px 0}
.case-quote blockquote{margin:0;font-size:clamp(34px,4.6vw,64px);line-height:1.22;letter-spacing:-.05em;max-width:1000px}
.case-quote p{color:#a9a39b;max-width:660px;line-height:1.8;margin-top:24px}
.case-next{padding:80px 0;background:#fff}
.case-next a{display:flex;justify-content:space-between;align-items:end;border-top:1px solid #ddd6cf;padding-top:34px}
.case-next b{font-size:clamp(34px,4vw,58px);letter-spacing:-.05em}.case-next span{font-size:28px}
.case-index-hero{padding:110px 0 60px;background:#fff}
.case-index-hero h1{font-size:clamp(58px,8vw,110px);letter-spacing:-.07em;line-height:.98;margin:0 0 28px}
.case-index-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;padding-bottom:100px}
.case-index-card{border:1px solid #e5e0da;border-radius:20px;overflow:hidden;background:#fff}
.case-index-card img{aspect-ratio:16/10;object-fit:cover;transition:.35s}
.case-index-card:hover img{transform:scale(1.025)}
.case-index-card .work-meta{padding:22px}
.case-note{background:#f4f1ec;padding:24px;border-radius:16px;color:#6c655e;line-height:1.8}
@media(max-width:980px){
  .case-hero-grid,.case-story-grid{grid-template-columns:1fr;gap:40px}
  .case-story h2{position:static}
  .case-index-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .case-hero{padding:80px 0 52px}
  .case-deck{font-size:18px}
  .case-fact{grid-template-columns:86px 1fr}
  .case-shot,.case-shot.third,.case-shot.wide{grid-column:span 12}
  .case-shot img{min-height:260px}
}


/* Service pages */
.service-card-link{display:block;color:inherit;text-decoration:none;transition:.25s}
.service-card-link:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(30,25,20,.07)}
.service-more{display:inline-block;margin-top:22px;font-size:13px;font-weight:800}
.service-hero{padding:118px 0 78px;background:var(--paper);border-bottom:1px solid #e8e3dc}
.service-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:72px;align-items:end}
.service-hero h1{font-size:clamp(56px,7.5vw,106px);line-height:.97;letter-spacing:-.07em;margin:12px 0 30px}
.service-label{font-size:13px;letter-spacing:.14em;color:#8b847c;font-weight:800}
.service-aside{border:1px solid #ddd7cf;background:#fff;border-radius:20px;padding:28px}
.service-aside ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.service-aside li{display:flex;gap:10px;color:#5e5852;line-height:1.65}
.problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.problem-card{border:1px solid #e6e0d9;border-radius:18px;padding:25px;min-height:220px}
.problem-card b{display:block;font-size:17px;margin-bottom:14px}.problem-card p{color:#6e675f;line-height:1.75;margin:0}
.scope-section{background:#f4f1ec}.scope-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.scope-card{background:#fff;border-radius:20px;padding:30px}.scope-num{font-size:12px;font-weight:900;letter-spacing:.12em;color:#9a928a}
.scope-card h3{font-size:28px;margin:10px 0 12px}.scope-card p{color:#6a635c;line-height:1.8}.scope-card ul{padding-left:18px;line-height:1.9}
.process-band{background:#171513;color:#fff}.process-list{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:#383430;border:1px solid #383430;border-radius:20px;overflow:hidden;margin-top:34px}
.process-step{background:#171513;padding:28px 20px;min-height:220px}.process-step em{font-style:normal;color:#8d867f;font-size:12px;font-weight:800}
.process-step h3{font-size:20px;margin:18px 0 10px}.process-step p{font-size:14px;line-height:1.75;color:#aaa39c}
.deliverables-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.deliverable-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.deliverable-item{border:1px solid #e3ddd6;border-radius:14px;padding:17px 18px;font-weight:700}
.service-cases{background:#f4f1ec}.service-cases-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.service-case-card{background:#fff;border-radius:20px;overflow:hidden;border:1px solid #e3ddd6}.service-case-card img{aspect-ratio:16/10;object-fit:cover}.service-case-card .work-meta{padding:22px}
.faq-list{border-top:1px solid #ded8d1}.faq-item{padding:25px 0;border-bottom:1px solid #ded8d1}.faq-item h3{font-size:20px;margin:0 0 10px}.faq-item p{color:#655f58;line-height:1.85;margin:0;max-width:920px}
.service-cta{background:#f0ece6}.service-cta-box{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:55px 0}
.service-cta h2{font-size:clamp(42px,5.4vw,76px);letter-spacing:-.06em;line-height:1.05;margin:0 0 16px}
@media(max-width:980px){.service-hero-grid,.deliverables-grid{grid-template-columns:1fr;gap:40px}.problem-grid{grid-template-columns:repeat(2,1fr)}.process-list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.service-hero{padding:84px 0 56px}.problem-grid,.scope-grid,.deliverable-list,.service-cases-grid{grid-template-columns:1fr}.process-list{grid-template-columns:1fr}.service-cta-box{align-items:flex-start;flex-direction:column}}


/* ===== Insights ===== */
.insights-hero{padding:112px 0 70px;background:var(--paper);border-bottom:1px solid #e7e1da}
.insights-hero h1{font-size:clamp(56px,7vw,96px);line-height:.98;letter-spacing:-.065em;margin:12px 0 24px}
.insights-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;padding:70px 0 100px}
.insight-card{display:block;border:1px solid #e4ded7;border-radius:20px;padding:30px;background:#fff;color:inherit}
.insight-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(30,25,20,.06)}
.insight-card{transition:.25s}
.insight-card .tag{font-size:12px;letter-spacing:.1em;color:#8d867e;font-weight:800}
.insight-card h2{font-size:30px;line-height:1.3;letter-spacing:-.035em;margin:18px 0 14px}
.insight-card p{color:#68615b;line-height:1.8;margin:0 0 28px}
.insight-card span{font-weight:800;font-size:13px}
.article-hero{padding:108px 0 58px;background:var(--paper);border-bottom:1px solid #e7e1da}
.article-hero .article-meta{display:flex;gap:14px;flex-wrap:wrap;color:#8b847c;font-size:12px;font-weight:800;letter-spacing:.08em}
.article-hero h1{font-size:clamp(44px,6vw,82px);line-height:1.08;letter-spacing:-.055em;max-width:980px;margin:18px 0 24px}
.article-hero .lead{font-size:20px;line-height:1.8;max-width:820px;color:#625c56}
.article-wrap{display:grid;grid-template-columns:minmax(0,760px) 260px;gap:80px;align-items:start}
.article-body{padding:72px 0 100px}
.article-body h2{font-size:34px;letter-spacing:-.035em;margin:56px 0 18px}
.article-body h3{font-size:22px;margin:30px 0 12px}
.article-body p,.article-body li{font-size:17px;line-height:1.95;color:#4f4944}
.article-body ul{padding-left:22px}
.article-summary{border-left:4px solid #1c1917;background:#f5f2ed;padding:22px 24px;margin:10px 0 34px;border-radius:0 14px 14px 0}
.article-summary b{display:block;margin-bottom:10px}
.article-side{position:sticky;top:110px;padding-top:72px}
.article-side .side-box{border:1px solid #e2dcd5;border-radius:18px;padding:22px}
.article-side h3{font-size:16px;margin:0 0 12px}
.article-side a{display:block;margin:10px 0;font-size:14px;color:#655f58}
.article-cta{background:#171513;color:#fff;padding:70px 0}
.article-cta h2{font-size:clamp(38px,5vw,68px);letter-spacing:-.05em;margin:0 0 16px}
.article-cta p{color:#aba49d;max-width:700px;line-height:1.8}
.breadcrumbs{font-size:12px;color:#8c857e;margin-bottom:20px}
.breadcrumbs a{color:inherit}
@media(max-width:900px){.insights-grid{grid-template-columns:1fr}.article-wrap{grid-template-columns:1fr}.article-side{position:static;padding-top:0}}


/* Contact details */
.contact-lines{display:grid;gap:10px;margin:18px 0 20px}
.contact-lines a{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.16);color:inherit}
.contact-lines a span{font-size:12px;letter-spacing:.08em;opacity:.66}
.contact-lines a b{font-size:16px}
.footer-meta a{color:inherit}
.footer-meta a:hover{text-decoration:underline}

/* V1.6: replaceable consultation QR slot */
.qr-module{display:flex;align-items:center;gap:20px;padding:16px;margin:8px 0 20px;background:#302b27;border:1px solid #494039;border-radius:16px}
.qr-image{flex:0 0 148px;overflow:hidden;border-radius:10px;background:#fff;padding:6px}
.qr-image img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;display:block}
.qr-description{min-width:0;flex:1}.qr-description b{font-size:17px;color:#fff}
.contact-card .qr-description p{color:#c1b8ae;font-size:13px;line-height:1.7;margin:8px 0 10px}
.contact-card .qr-description .qr-pending{margin:0;display:block;color:#f9bd88;font-size:12px}
@media(max-width:520px){.qr-module{gap:13px;padding:12px}.qr-image{flex-basis:112px}}
@media(max-width:390px){.qr-module{align-items:flex-start}.qr-image{flex-basis:94px}.qr-description b{font-size:15px}}

/* V1.7: homepage hero readability across viewport sizes */
@media (min-width: 981px) {
  .hero-content h1 {
    font-size: clamp(58px, 5.15vw, 76px);
    max-width: 980px;
    letter-spacing: -.055em;
    line-height: 1.06;
  }
  .hero-content {padding-top: 165px;}
}
@media (max-width: 980px) {
  .hero {height: 920px; min-height: 920px;}
  .hero-left {top: 0; bottom: auto; height: 65%;}
  .hero-right {top: 65%; bottom: 0; height: 35%;}
  .hero-shade {background: linear-gradient(180deg,rgba(0,0,0,.14) 0%,rgba(0,0,0,.32) 52%,rgba(0,0,0,.01) 66%);}
  .hero-content {padding-top: 110px; padding-bottom: 20px;}
  .hero-left:after {background:linear-gradient(180deg,rgba(11,7,5,.55),rgba(11,7,5,.72));}
}
@media (max-width: 640px) {
  .hero {height: 910px; min-height: 910px;}
  .hero-left {height: 67%;}
  .hero-right {top: 67%; height: 33%;}
  .hero-content {padding-top: 100px;}
  .hero-content h1 {font-size:clamp(34px,9vw,40px);max-width:100%;line-height:1.14;letter-spacing:-.04em;margin-bottom:24px;}
  .hero-sub {font-size:17px; margin-bottom:14px; line-height:1.5;}
  .hero-copy {font-size:14px;line-height:1.75;margin-bottom:25px;}
  .hero-actions {gap:10px;}
  .hero-actions .btn {padding:12px 17px;}
}

/* V1.8: live WeChat contact QR */
.qr-module .qr-image{display:block;flex:0 0 180px;padding:8px;line-height:0;box-sizing:border-box}
.qr-module .qr-image img{width:100%;height:auto;aspect-ratio:1/1;image-rendering:auto}
.qr-module .qr-link{color:#ffc3a0;font-size:13px;font-weight:750;text-decoration:underline;text-underline-offset:4px}
.qr-module .qr-link:hover{color:#fff}
@media(max-width:640px){
 .qr-module{flex-wrap:wrap}
 .qr-module .qr-image{flex:0 0 164px}
 .qr-module .qr-description{min-width:130px}
}
