:root{--orange: #f05a1a;--orange-dark: #d8480d;--black: #1f1f1f;--text: #555555;--muted: #8b8b8b;--line: #e9e5e0;--soft: #f8f7f5;--white: #ffffff;--max: 1200px;--compact-home-section-padding: 26px 0 24px;color:var(--black);font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,Heiti SC,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;background:var(--white)}html{scroll-behavior:smooth;scroll-padding-top:96px}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:26px;height:76px;padding:0 max(0px,calc((100vw - var(--max)) / 2));border-bottom:1px solid rgba(233,229,224,.9);background:#fffffff0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:12px;min-width:154px}.brand-mark{width:104px;height:auto}.brand-text{display:inline-block;padding-left:12px;border-left:1px solid var(--line);color:var(--orange);font-size:13px;font-weight:700;white-space:nowrap}.main-nav{display:flex;justify-content:flex-end;gap:clamp(14px,1.8vw,28px);color:var(--text);font-size:15px}.main-nav a{position:relative;padding:28px 0;white-space:nowrap}.main-nav a.is-active,.main-nav a:hover{color:var(--orange)}.main-nav a.is-active:after,.main-nav a:hover:after{position:absolute;right:0;bottom:20px;left:0;height:2px;background:var(--orange);content:""}.header-phone{color:var(--black);font-size:13px;font-weight:700;white-space:nowrap}.menu-button{display:none;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--black);padding:9px 14px}.hero{display:grid;grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr);gap:clamp(26px,4vw,54px);align-items:center;max-width:var(--max);min-height:auto;margin:0 auto;padding:var(--compact-home-section-padding)}.eyebrow{margin:0 0 16px;color:var(--orange);font-size:13px;font-weight:800;letter-spacing:0}.hero h1{margin:0;color:var(--black);font-size:clamp(38px,4.2vw,56px);font-weight:800;line-height:1.05}.hero-subtitle{margin:14px 0 0;color:var(--black);font-size:clamp(18px,1.8vw,24px);font-weight:700}.hero-text{max-width:560px;margin:14px 0 0;color:var(--text);font-size:16px;line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:20px}.primary-button,.secondary-button,.text-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;border-radius:8px;padding:0 22px;font-size:14px;font-weight:800;transition:transform .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease}.primary-button{border:1px solid var(--orange);background:var(--orange);color:var(--white)}.primary-button:hover{background:var(--orange-dark);transform:translateY(-1px)}.secondary-button{border:1px solid var(--line);background:var(--white);color:var(--black)}.secondary-button:hover,.text-button:hover{border-color:var(--orange);color:var(--orange)}.text-button{border:1px solid transparent;color:var(--orange)}.hero-gallery{display:grid;grid-template-columns:1.08fr .92fr;grid-template-rows:112px 84px 108px;gap:10px}.hero-tile{overflow:hidden;margin:0;border-radius:8px;background:var(--soft)}.hero-tile img{width:100%;height:100%;object-fit:cover;transition:transform .24s ease}.hero-tile:hover img,.work-card:hover img,.story-card:hover img{transform:scale(1.035)}.tile-1,.tile-3{grid-row:span 2}.tile-6,.tile-5{display:none}.section,.business-section,.problem-section,.contact-section{max-width:var(--max);margin:0 auto;padding:88px 0}section[id],.filter-bar[id]{scroll-margin-top:96px}.page-intro{max-width:var(--max);margin:0 auto;padding:72px 0 46px;border-bottom:1px solid var(--line)}.page-intro h1{max-width:820px;margin:0;color:var(--black);font-size:clamp(42px,5vw,72px);font-weight:900;line-height:1.08}.page-intro p:not(.eyebrow){max-width:720px;margin:24px 0 0;color:var(--text);font-size:17px;line-height:1.9}.marketing-page-intro{padding-bottom:30px;border-bottom:0}.section-heading{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);gap:52px;align-items:end;margin-bottom:36px}.section-heading.compact{display:block;max-width:720px}.section-heading h2,.filter-bar h2,.business-copy h2,.contact-copy h2,.problem-section h2{margin:0;color:var(--black);font-size:clamp(30px,3.3vw,46px);font-weight:800;line-height:1.18}.section-heading p:not(.eyebrow),.business-copy p,.contact-copy p{margin:0;color:var(--text);font-size:16px;line-height:1.9}.story-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.case-story-section{padding:var(--compact-home-section-padding)}.case-story-section .section-heading{align-items:center;gap:30px;margin-bottom:16px}.case-story-section .section-heading h2{font-size:clamp(28px,2.8vw,38px)}.case-story-section .section-heading p:not(.eyebrow){display:none;font-size:14px;line-height:1.6}.story-card{display:grid;grid-template-columns:1fr;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--white)}.story-card img{width:100%;height:100%;min-height:0;aspect-ratio:16 / 5.5;object-fit:cover;transition:transform .24s ease}.story-content{padding:14px}.case-story-section .story-content{padding:12px 14px}.tag{display:inline-flex;margin-bottom:18px;border-radius:999px;background:#fff3ed;color:var(--orange);padding:7px 12px;font-size:13px;font-weight:800}.case-story-section .tag{display:none}.story-content h3,.work-meta h3,.business-columns h3{margin:0;color:var(--black);font-size:24px;line-height:1.3}.case-story-section .story-content h3{font-size:18px}.story-content .scope{margin:6px 0 8px;color:var(--muted);font-size:14px;font-weight:700}.case-story-section .story-content .scope{font-size:13px;line-height:1.45}.story-content p{color:var(--text);line-height:1.68}.case-story-section .story-content p:not(.scope){margin:0 0 8px;font-size:14px;display:none}.story-result{border-left:3px solid var(--orange);padding-left:14px}.case-story-section .story-result{display:none}.story-content a{color:var(--orange);font-size:14px;font-weight:800}.service-detail-grid{display:grid;gap:16px;margin-top:32px}.service-detail-grid article{min-height:188px;border:1px solid var(--line);border-radius:8px;background:var(--white);padding:26px}.service-detail-grid span{display:block;color:var(--orange);font-size:13px;font-weight:900}.service-detail-grid h3{margin:34px 0 12px;color:var(--black);font-size:22px;line-height:1.28}.service-detail-grid p{margin:0;color:var(--text);font-size:14px;line-height:1.75}.service-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portfolio-section{padding-top:48px}.filter-bar{display:grid;grid-template-columns:minmax(240px,.42fr) minmax(0,.58fr);gap:28px;align-items:end;margin-bottom:32px;padding-top:20px;border-top:1px solid var(--line)}.filter-list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.marketing-filter-bar.is-compact{grid-template-columns:1fr;margin-bottom:28px;padding-top:0;border-top:0}.marketing-filter-bar.is-compact .filter-list{justify-content:flex-start}.filter-chip{min-height:38px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--text);padding:0 15px;cursor:pointer}.filter-chip:hover,.filter-chip.is-active{border-color:var(--orange);background:#fff3ed;color:var(--orange);font-weight:800}.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.work-card{display:block;width:100%;overflow:hidden;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;padding:0;text-align:left;cursor:pointer}.work-card:focus-visible,.filter-chip:focus-visible,.problem-card-header a:focus-visible,.problem-row:focus-visible{outline:3px solid rgba(240,90,26,.28);outline-offset:4px}.work-card img{width:100%;aspect-ratio:4 / 3;border-radius:8px;object-fit:cover;transition:transform .24s ease}.work-card.is-active img{outline:3px solid rgba(240,90,26,.78);outline-offset:-3px}.work-card.is-active .work-meta h3{color:var(--orange)}.work-meta{padding:15px 0 20px}.work-meta h3{font-size:18px}.work-meta p{margin:7px 0 0;color:var(--muted);font-size:14px}.work-meta span{display:inline-flex;margin-top:12px;color:var(--orange);font-size:13px;font-weight:900}.portfolio-count{margin:28px 0 0;color:var(--muted);font-size:14px}.friend-link-section{display:grid;grid-template-columns:minmax(180px,.28fr) minmax(0,.72fr);gap:28px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:36px;padding-bottom:36px}.friend-link-section h2{margin:8px 0 0;color:var(--black);font-size:26px;line-height:1.25}.friend-link-list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.friend-link-list a{display:inline-flex;min-height:38px;align-items:center;border:1px solid var(--line);border-radius:999px;color:var(--text);padding:0 15px;font-size:14px;font-weight:800}.friend-link-list a:hover,.friend-link-list a:focus-visible{border-color:var(--orange);background:#fff3ed;color:var(--orange)}.marketing-case-section{padding-top:48px}.marketing-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.marketing-case-card{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--white);color:inherit}.marketing-case-card:focus-visible{outline:3px solid rgba(240,90,26,.28);outline-offset:4px}.marketing-case-card img{width:100%;aspect-ratio:16 / 10;object-fit:cover;transition:transform .24s ease}.marketing-case-card:hover img{transform:scale(1.035)}.marketing-case-meta{display:grid;align-content:start;min-height:286px;padding:22px}.marketing-case-meta span{display:inline-flex;width:fit-content;border-radius:999px;background:#fff3ed;color:var(--orange);padding:7px 10px;font-size:12px;font-weight:900}.marketing-case-meta h3{margin:18px 0 0;color:var(--black);font-size:22px;line-height:1.28}.marketing-case-meta .scope{margin:10px 0 0;color:var(--muted);font-size:14px;font-weight:800}.marketing-case-meta p:not(.scope){margin:14px 0 0;color:var(--text);line-height:1.75}.marketing-case-meta strong{display:block;margin-top:18px;border-top:1px solid var(--line);color:var(--black);padding-top:16px;font-size:14px;line-height:1.65}.work-detail-panel{display:grid;grid-template-columns:minmax(260px,.64fr) minmax(0,1.36fr);gap:32px;align-items:center;margin-top:36px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0}.work-detail-media img{width:100%;aspect-ratio:16 / 10;border-radius:8px;object-fit:cover}.work-detail-copy h3,.problem-answer h2{margin:0;color:var(--black);font-size:clamp(24px,2.3vw,34px);line-height:1.25}.work-detail-copy .scope{margin:12px 0 14px;color:var(--muted);font-size:14px;font-weight:800}.work-detail-copy p,.problem-answer p{color:var(--text);line-height:1.85}.detail-result{border-left:3px solid var(--orange);padding-left:16px}.detail-result strong{color:var(--black)}.work-detail-copy a,.problem-answer a{display:inline-flex;min-height:42px;align-items:center;margin-top:8px;border-bottom:2px solid var(--orange);color:var(--orange);font-size:14px;font-weight:900}.work-detail-hero{display:grid;grid-template-columns:minmax(300px,.74fr) minmax(0,1.26fr);gap:clamp(28px,5vw,70px);align-items:center;max-width:var(--max);margin:0 auto;padding:70px 0 52px}.work-detail-hero-copy h1{max-width:760px;margin:0;color:var(--black);font-size:clamp(40px,5.2vw,74px);font-weight:900;line-height:1.08}.work-detail-hero-copy p:not(.eyebrow){margin:24px 0 0;color:var(--text);font-size:17px;line-height:1.9}.back-link{display:inline-flex;margin-bottom:28px;color:var(--orange);font-size:14px;font-weight:900}.work-detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.work-detail-hero-image{overflow:hidden;margin:0;border-radius:8px;background:var(--soft)}.work-detail-hero-image img{width:100%;aspect-ratio:16 / 10;object-fit:cover}.work-detail-hero-image figcaption{border:1px solid var(--line);border-top:0;background:var(--white);color:var(--muted);padding:14px 16px;font-size:14px;font-weight:800}.work-detail-two-column{display:grid;grid-template-columns:minmax(0,.68fr) minmax(320px,.32fr);gap:36px;border-top:1px solid var(--line);padding-top:44px}.work-image-column{min-width:0}.work-article-column>p:not(.eyebrow){margin:16px 0 0;color:var(--text);line-height:1.85}.work-gallery-title{max-width:980px;margin:0;color:var(--black);font-size:clamp(42px,4.4vw,64px);font-weight:900;line-height:1.08}.work-image-stack{display:grid;gap:24px;margin-top:34px}.work-image-stack figure{overflow:hidden;margin:0;border:1px solid var(--line);border-radius:8px;background:var(--white)}.work-image-stack img{width:100%;aspect-ratio:16 / 10;object-fit:cover}.work-image-stack figcaption{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);color:var(--text);padding:15px 16px;font-size:14px;font-weight:800}.work-image-stack figcaption span{color:var(--orange);font-size:12px;font-weight:900}.work-article-column{position:sticky;top:104px;align-self:start;border:1px solid #d7ebf1;border-radius:8px;background:var(--white);padding:24px}.work-article-column h2{margin:18px 0 0;color:var(--black);font-size:clamp(26px,2.5vw,36px);line-height:1.2}.work-article-list{display:grid;gap:0;margin-top:28px;padding:0;list-style:none}.work-article-list li{position:relative;border-top:1px solid #d7ebf1;padding:20px 0 20px 26px}.work-article-list li:first-child{border-top:0;padding-top:0}.work-article-list li:before{position:absolute;top:30px;left:0;width:8px;height:8px;border-radius:50%;background:#15758a;content:""}.work-article-list li:first-child:before{top:10px}.work-article-list a{display:block;color:#263d4b;font-size:18px;font-weight:900;line-height:1.7}.work-article-list a:hover,.work-article-list a:focus-visible{color:var(--orange)}.business-section{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:54px;border-top:1px solid var(--line)}.business-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.business-columns article{border:1px solid var(--line);border-radius:8px;padding:34px}.number{display:block;margin-bottom:42px;color:var(--orange);font-size:14px;font-weight:900}.business-columns p{color:var(--text);line-height:1.85}.service-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.service-tags span{border:1px solid var(--line);border-radius:999px;color:var(--text);padding:7px 10px;font-size:12px}.ip-news-section{border-top:1px solid var(--line)}.news-section{border-top:0}.news-filter-bar{margin-bottom:34px}.ip-news-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.34fr);gap:28px;align-items:start}.ip-news-list{display:grid;gap:20px}.ip-news-card{display:grid;grid-template-columns:minmax(210px,.34fr) minmax(0,1fr);gap:24px;align-items:stretch;border:1px solid var(--line);border-radius:8px;background:var(--white);padding:20px}.ip-news-image{display:block;overflow:hidden;border-radius:8px;background:var(--soft)}.ip-news-image img{width:100%;height:100%;min-height:176px;object-fit:cover}.ip-news-content{display:grid;align-content:start;min-width:0}.ip-news-content>span{width:fit-content;border-radius:999px;background:#fff3ed;color:var(--orange);padding:7px 12px;font-size:13px;font-weight:900}.ip-news-content h3{margin:18px 0 0;color:var(--black);font-size:clamp(24px,2.4vw,34px);font-weight:900;line-height:1.35}.ip-news-content p{margin:18px 0 0;color:var(--text);font-size:16px;line-height:1.85}.ip-news-card-footer{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;margin-top:24px}.ip-news-card-footer strong{color:#21768d;font-size:14px;font-weight:900}.ip-news-card-footer a{border:1px solid #dbe8ed;border-radius:999px;color:#21768d;padding:10px 18px;font-size:14px;font-weight:900}.ip-news-sidebar{position:sticky;top:96px;border:1px solid var(--line);border-radius:8px;background:var(--white);padding:26px}.ip-news-sidebar h2{margin:0;color:var(--black);font-size:28px;font-weight:900}.ip-hot-list{display:grid;margin-top:18px}.ip-hot-list a{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;border-bottom:1px solid var(--line);padding:18px 0}.ip-hot-list a:last-child{border-bottom:0}.ip-hot-list span{color:#21768d;font-size:24px;line-height:1}.ip-hot-list strong{color:#2f4c57;font-size:16px;line-height:1.75}.credential-list-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.credential-list{display:grid;margin-top:34px;border-top:1px solid var(--line)}.credential-list article{display:grid;grid-template-columns:96px minmax(0,1fr) minmax(220px,.48fr);gap:28px;align-items:start;border-bottom:1px solid var(--line);padding:28px 0}.credential-list-index{display:grid;gap:8px}.credential-list-index span{color:var(--orange);font-size:14px;font-weight:900}.credential-list-index strong{color:var(--black);font-size:28px;font-weight:900;line-height:1}.credential-list-main p{display:inline-flex;margin:0 0 14px;border-radius:999px;background:#fff3ed;color:var(--orange);padding:8px 14px;font-size:13px;font-weight:900}.credential-list-main h3{margin:0;color:var(--black);font-size:24px;font-weight:900;line-height:1.3}.credential-list-main>span{display:block;max-width:680px;margin-top:12px;color:var(--text);font-size:15px;line-height:1.8}.credential-trust-point{border:1px solid var(--line);border-radius:8px;background:var(--white);padding:18px}.credential-trust-point span{display:block;margin-bottom:10px;color:var(--muted);font-size:13px;font-weight:900}.credential-trust-point strong{display:block;color:var(--black);font-size:15px;line-height:1.75}.profile-section{border-top:1px solid var(--line)}.profile-points{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.profile-points span{min-height:120px;border:1px solid var(--line);border-radius:8px;padding:24px;color:var(--black);font-size:18px;font-weight:900}.problem-section{max-width:none;padding:0 0 88px;background:var(--white)}.problem-map-hero{display:grid;min-height:226px;place-items:center;background:#fff3ed;box-shadow:inset 0 -1px #f3d4c4;padding:44px 0;text-align:center}.problem-map-hero h1{margin:0;color:#142033;font-size:clamp(44px,5vw,72px);font-weight:900;line-height:1.08}.problem-map-hero p{margin:22px 0 0;color:#526477;font-size:18px;font-weight:800;line-height:1.7}.problem-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:var(--max);margin:80px auto 0;padding:0}.problem-card,.problem-answer{overflow:hidden;border:1px solid #f3d4c4;border-radius:12px;background:var(--white);box-shadow:0 18px 42px #f05a1a14}.problem-card-header{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;min-height:78px;border-bottom:1px solid #f3d4c4;background:#fff3ed;padding:0 24px}.problem-card-header h2{margin:0;color:#142033;font-size:24px;font-weight:900;line-height:1.25}.problem-card-header a{color:var(--orange);font-size:15px;font-weight:900;text-decoration:none}.problem-question-list{padding:22px 24px 26px}.problem-row{display:flex;width:100%;min-height:64px;align-items:center;gap:16px;border:0;border-bottom:1px solid #e8f0f3;background:var(--white);color:#27364a;padding:0;text-align:left;text-decoration:none;cursor:pointer}.problem-row:last-child{border-bottom:0}.problem-row span{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border-radius:8px;background:#fff3ed;color:var(--orange);font-size:15px;font-weight:900}.problem-row strong{flex:1;font-size:17px;line-height:1.45}.problem-row i{color:#d0a08d;font-size:28px;font-style:normal;line-height:1}.problem-row:hover,.problem-row.is-active{color:var(--orange)}.problem-row.is-active span{background:#fff3ed;color:var(--orange)}.problem-answer{display:grid;min-height:238px;align-content:space-between;padding:32px}.problem-answer p{max-width:720px;margin:14px 0 0;color:var(--text);font-size:16px;line-height:1.85}.problem-detail-page{max-width:var(--max);margin:0 auto;padding:96px 0 110px}.problem-detail-page h1{max-width:820px;margin:16px 0 0;color:var(--black);font-size:clamp(44px,5.2vw,76px);font-weight:900;line-height:1.08}.problem-detail-lead{max-width:760px;margin:30px 0 0;color:var(--text);font-size:19px;font-weight:700;line-height:1.9}.problem-detail-meta{display:inline-grid;grid-template-columns:auto auto;gap:18px;align-items:center;margin-top:38px;border:1px solid #f3d4c4;border-radius:8px;background:#fff3ed;padding:16px 20px}.problem-detail-meta span{color:#8a5a48;font-size:14px;font-weight:900}.problem-detail-meta strong{color:#142033;font-size:18px;font-weight:900}.problem-detail-body{display:grid;gap:18px;margin-top:54px}.problem-detail-body section{border-top:1px solid var(--line);padding-top:26px}.problem-detail-body h2{margin:0;color:var(--black);font-size:28px;font-weight:900;line-height:1.25}.problem-detail-body p{max-width:780px;margin:14px 0 0;color:var(--text);font-size:17px;line-height:1.9}.problem-detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:46px}.contact-section{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(320px,.65fr);gap:66px;align-items:start;max-width:none;padding-right:max(0px,calc((100vw - var(--max)) / 2));padding-left:max(0px,calc((100vw - var(--max)) / 2));background:#111;color:var(--white)}.contact-copy h2,.contact-copy p{color:var(--white)}.contact-copy p{opacity:.72}.phone-link{display:inline-block;margin-top:34px;color:var(--orange);font-size:clamp(30px,4vw,52px);font-weight:900;line-height:1}.address{margin-top:18px}.contact-form{display:grid;gap:16px;border-radius:8px;background:var(--white);padding:30px;color:var(--black)}.contact-form label{display:grid;gap:8px;color:var(--black);font-size:13px;font-weight:800}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--black);padding:13px 14px;outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--orange);background:var(--white)}.form-status{margin:0;border-radius:8px;background:#fff3ed;color:var(--orange);padding:12px 14px;font-size:14px;font-weight:800}.site-footer{background:radial-gradient(circle at 12% 0%,rgba(240,90,26,.16),transparent 28%),#211a16;color:#ffffffc7;padding:56px max(0px,calc((100vw - var(--max)) / 2)) 28px}.site-footer-inner{display:grid;grid-template-columns:minmax(300px,1fr) minmax(260px,.62fr) minmax(280px,.52fr);gap:44px;align-items:start}.footer-brand-panel p{max-width:620px;margin:28px 0 0;color:#ffffffb8;font-size:16px;font-weight:700;line-height:1.95}.footer-brand{display:inline-flex;align-items:center;gap:14px}.footer-brand img{width:116px;filter:brightness(0) invert(1);opacity:.92}.footer-brand span{border-left:1px solid rgba(255,255,255,.18);color:#ff8a52;padding-left:14px;font-size:15px;font-weight:900}.footer-link-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.footer-link-row a{display:inline-flex;min-height:34px;align-items:center;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:#ffffffc2;padding:0 13px;font-size:13px;font-weight:800}.footer-link-row a:hover,.footer-link-row a:focus-visible{border-color:#f05a1aad;background:#f05a1a24;color:#ff8a52}.footer-contact-panel{display:grid;gap:18px}.footer-contact-item{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;align-items:center}.footer-contact-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:8px;background:#ffffff1a;color:#ff8a52;font-size:16px;font-weight:900}.footer-contact-item strong{display:block;color:var(--white);font-size:22px;font-weight:900;line-height:1.18;overflow-wrap:anywhere}.footer-contact-item small{display:block;margin-top:8px;color:#ffffff8c;font-size:13px;font-weight:800}.footer-address{margin:8px 0 0;border-top:1px solid rgba(255,255,255,.12);color:#ffffffad;padding-top:18px;font-size:14px;font-weight:700;line-height:1.8}.footer-address span{display:block;color:#ff8a52;font-size:13px;font-weight:900}.footer-qr-card{display:grid;grid-template-columns:118px minmax(0,1fr);gap:18px;align-items:center;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#ffffff0f;padding:18px}.footer-qr-card img{width:118px;height:118px;border-radius:8px;background:var(--white);padding:8px}.footer-qr-card strong{display:block;color:var(--white);font-size:22px;font-weight:900;white-space:nowrap}.footer-qr-card span{display:block;margin-top:10px;color:#ffffff94;font-size:14px;font-weight:800}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;margin-top:48px;border-top:1px solid rgba(255,255,255,.14);color:#ffffff85;padding-top:24px;font-size:13px;font-weight:800}.footer-bottom a:hover,.footer-bottom a:focus-visible{color:#ff8a52}.floating-consult{position:fixed;right:22px;bottom:112px;z-index:20;display:grid;width:56px;height:56px;place-items:center;border-radius:50%;background:var(--orange);color:var(--white);font-size:14px;font-weight:900;box-shadow:0 14px 34px #f05a1a47}.mobile-actions{display:none}@media(max-width:1100px){.site-header{grid-template-columns:auto 1fr auto}.header-phone{display:none}.hero{grid-template-columns:1fr}.hero-gallery{min-height:330px}.portfolio-grid,.marketing-case-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.work-detail-hero,.work-detail-two-column{grid-template-columns:1fr}.work-article-column{position:static}.business-section,.contact-section,.ip-news-layout{grid-template-columns:1fr}.ip-news-sidebar{position:static}.problem-card-grid,.service-detail-grid,.profile-points{grid-template-columns:repeat(2,minmax(0,1fr))}.credential-list article{grid-template-columns:82px minmax(0,1fr)}.credential-trust-point{grid-column:2 / -1}.friend-link-section{grid-template-columns:1fr}.friend-link-list{justify-content:flex-start}.site-footer-inner{grid-template-columns:minmax(0,1fr) minmax(220px,.48fr)}.footer-contact-panel{grid-column:1 / 2}.footer-qr-card{grid-column:2 / 3;grid-row:1 / span 2}}@media(max-width:820px){.site-header{height:68px;grid-template-columns:1fr auto;gap:12px;padding:0 20px}.brand-mark{width:88px}.brand{min-width:0}.brand-text{font-size:12px}.menu-button{display:inline-flex;min-height:40px;align-items:center;border-color:#f3d4c4;background:#fff3ed;color:var(--orange);font-weight:900}.main-nav{position:fixed;top:76px;right:14px;left:14px;z-index:40;display:none;border:1px solid #f3d4c4;border-radius:8px;background:#fffffffa;padding:10px;box-shadow:0 20px 52px #14203329;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.main-nav.is-open{display:grid;grid-template-columns:1fr;gap:6px}.main-nav a{display:flex;min-height:44px;align-items:center;justify-content:space-between;border-radius:8px;padding:0 12px}.main-nav a:after{display:none}.main-nav a.is-active,.main-nav a:hover{background:#fff3ed}.hero{min-height:auto;padding-top:32px}.hero-gallery{grid-template-rows:repeat(3,110px);min-height:0}.section-heading,.filter-bar,.business-columns,.ip-news-card,.profile-points,.problem-card-grid,.problem-layout,.problem-grid,.service-detail-grid,.work-detail-panel{grid-template-columns:1fr}.filter-list{justify-content:flex-start}.story-card{grid-template-columns:1fr}.portfolio-grid,.marketing-case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.credential-list article{grid-template-columns:1fr;gap:16px;padding:24px 0}.credential-list-index{grid-template-columns:auto 1fr;align-items:end}.credential-list-index strong{font-size:24px}.credential-trust-point{grid-column:auto}.work-detail-hero{padding:48px 20px 36px}.work-detail-hero-copy h1{font-size:42px}.work-detail-two-column{padding-right:20px;padding-left:20px}.ip-news-image img{aspect-ratio:16 / 9;min-height:0}.contact-section{padding-bottom:64px}.floating-consult{display:none}.mobile-actions{position:fixed;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));left:12px;z-index:50;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;border:1px solid #f3d4c4;border-radius:8px;background:#fffffff5;padding:10px;box-shadow:0 16px 44px #14203324;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}html{scroll-padding-top:84px}section[id],.filter-bar[id]{scroll-margin-top:84px}.mobile-actions a{display:grid;min-height:44px;place-items:center;border-radius:8px;background:var(--orange);color:var(--white);font-weight:900}.site-footer{padding:46px 20px 28px}.site-footer-inner{grid-template-columns:1fr;gap:28px}.footer-contact-panel,.footer-qr-card{grid-column:auto;grid-row:auto}.footer-brand-panel p{margin-top:22px;font-size:15px}.footer-contact-item strong{font-size:20px}.footer-qr-card{max-width:360px}}@media(max-width:560px){body{padding-bottom:88px}.site-header{padding:0 16px}.brand-mark{width:82px}.hero{gap:22px;padding:30px 20px 0}.page-intro{padding:52px 20px 36px}.page-intro h1{font-size:42px}.hero-copy,.hero-gallery,.hero-actions{width:100%;max-width:none}.hero h1{font-size:36px;line-height:1.08}.hero-subtitle{font-size:18px;line-height:1.45}.hero-text{max-width:100%;font-size:15px;line-height:1.75;overflow-wrap:anywhere}.hero-gallery{display:flex;grid-template-columns:none;grid-template-rows:none;gap:10px;overflow-x:auto;padding-bottom:2px;scroll-snap-type:x mandatory}.hero-tile{width:76vw;min-width:76vw;height:168px;scroll-snap-align:start}.tile-1,.tile-3{grid-row:auto}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.hero-actions .primary-button,.hero-actions .secondary-button,.hero-actions .text-button{width:100%;min-height:44px;padding:0 12px}.hero-actions .text-button{border-color:var(--line)}.portfolio-grid,.marketing-case-grid{grid-template-columns:1fr}.filter-bar{gap:16px;margin-bottom:24px;padding-top:16px}.filter-bar h2{font-size:28px}.filter-list{flex-wrap:nowrap;justify-content:flex-start;gap:8px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory}.filter-chip{min-width:max-content;scroll-snap-align:start}.work-card,.marketing-case-card{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--white)}.work-card{border-bottom:1px solid var(--line)}.work-card img{border-radius:0;aspect-ratio:16 / 10}.work-meta{padding:16px}.work-meta h3{font-size:20px}.work-meta span{margin-top:10px}.marketing-case-meta{min-height:auto;padding:18px}.marketing-case-meta h3{font-size:20px}.ip-news-card{padding:16px}.ip-news-content h3{font-size:24px}.ip-news-content p,.ip-hot-list strong{font-size:15px}.work-detail-actions,.problem-detail-actions{display:grid;grid-template-columns:1fr}.work-detail-actions .primary-button,.work-detail-actions .secondary-button,.problem-detail-actions .primary-button,.problem-detail-actions .secondary-button{width:100%}.case-story-section .story-list{display:flex;overflow-x:auto;gap:14px;padding-bottom:6px;scroll-snap-type:x mandatory}.case-story-section .story-card{min-width:78vw;scroll-snap-align:start}.mobile-actions{grid-template-columns:1fr 1fr}.footer-link-row{display:grid;grid-template-columns:1fr 1fr}.footer-link-row a{justify-content:center}.footer-qr-card{grid-template-columns:98px minmax(0,1fr);gap:14px;padding:14px}.footer-qr-card img{width:98px;height:98px}.footer-qr-card strong{font-size:20px}.footer-bottom{justify-content:flex-start;margin-top:34px}.section,.business-section,.credential-section,.contact-section{padding-top:64px;padding-bottom:64px}.work-detail-two-column{padding-top:32px}.case-story-section{padding-top:0;padding-bottom:76px}.problem-section{padding:0 0 64px}.problem-detail-page{padding:56px 20px 84px}.problem-detail-page h1{font-size:40px}.problem-detail-lead{font-size:16px}.problem-detail-meta{width:100%;grid-template-columns:1fr;gap:8px}.problem-detail-body{margin-top:42px}.problem-detail-body h2{font-size:24px}.problem-map-hero{min-height:188px;padding:36px 20px}.problem-map-hero h1{font-size:42px}.problem-card-grid{margin-top:42px;padding:0 20px}.problem-card-header{min-height:auto;padding:18px}.problem-card-header h2{font-size:21px}.problem-question-list{padding:12px 18px 16px}.problem-row strong{font-size:16px}.phone-link{font-size:34px}}
