/* Shared visual language, aligned with the interior style guide. */
:root{--paper:#f5f3ed;--ink:#252a24;--muted:#62665e;--forest:#354735;--sage:#778362;--line:#cccec2;--surface:#fff;--serif:"Noto Serif SC","SimSun",serif}
html{scroll-padding-top:24px}body{background:var(--paper);color:var(--ink);font-family:"Microsoft YaHei",sans-serif;font-size:16px;line-height:1.8}
a{color:inherit;text-underline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #a06f36;outline-offset:4px}button,input,textarea,select{font:inherit}img{max-width:100%}
.nav{position:relative;top:auto;padding:24px 5%;gap:24px;background:var(--paper);backdrop-filter:none;border-bottom:1px solid var(--line);align-items:center}.logo{font-weight:400;color:var(--ink);font-size:24px;letter-spacing:3px;white-space:nowrap;flex-shrink:0}.logo-img{height:30px}.nav-links{gap:12px 24px;flex-wrap:wrap;justify-content:flex-end}.nav-links a{color:var(--muted);font-size:14px;border-bottom:1px solid transparent}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--forest);border-color:var(--forest)}
.hero,.about-header,.detail-header,.service-header,.pricing-header,.contact-header,.testimonials-header,.deliverables-header{padding:76px max(5%,calc((100% - 1296px)/2)) 54px;background:var(--paper);text-align:left;border-bottom:1px solid var(--line)}
.hero h1,.about-header h1,.detail-header h1,.service-header h1,.pricing-header h1,.contact-header h1,.testimonials-header h1,.deliverables-header h1{font-family:var(--serif);font-weight:400;font-size:clamp(34px,4.6vw,68px);line-height:1.4;letter-spacing:1px;color:var(--forest);margin-bottom:24px;overflow-wrap:anywhere}
.hero p{font-size:18px;color:var(--muted);font-weight:400;letter-spacing:2px}.hero-buttons{justify-content:flex-start;gap:12px}.hero .cta{padding:10px 24px}.hero .cta.secondary{border-color:var(--line)}
.detail-header .meta,.subtitle,.service-header .subtitle,.pricing-header .subtitle,.contact-header .subtitle{color:var(--muted);font-size:14px;line-height:1.9}.section{max-width:1440px;padding:64px 5%}.section.gray{background:#eceee4;padding-left:max(5%,calc((100% - 1296px)/2));padding-right:max(5%,calc((100% - 1296px)/2))}.section.gray>*{max-width:1296px}.section h2{font:400 clamp(28px,3vw,40px)/1.5 var(--serif);color:var(--forest);margin-bottom:12px}.section .subtitle{margin-bottom:30px}
.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px}.case-card{border-radius:0;box-shadow:none;border:1px solid transparent;background:var(--surface)}.case-card:hover{box-shadow:none;transform:none;border-color:var(--line)}.case-img{height:auto;aspect-ratio:3/2;object-fit:cover;background:#e3e2db}.case-content{padding:26px 28px 30px}.case-content h3{font:400 clamp(22px,2vw,28px)/1.5 var(--serif);color:var(--ink);margin-bottom:10px}.case-content p{font-size:14px;color:var(--muted);line-height:1.9}
.cta,.cta-btn,.submit-btn,.wechat-btn{background:var(--forest);color:#fff;border:1px solid var(--forest);border-radius:3px;box-shadow:none;font-weight:400}.cta:hover,.cta-btn:hover,.submit-btn:hover,.wechat-btn:hover{background:#455b43;color:#fff;transform:none;box-shadow:none}.cta.secondary{color:var(--forest);background:transparent;border:1px solid var(--line)}.cta.secondary:hover{background:var(--forest);color:#fff}.back-link{color:var(--forest);border-bottom:1px solid var(--line);padding-bottom:4px}
.about-content,.detail-content,.service-content,.pricing-content,.contact-content,.testimonials-content,.deliverables-content,.gallery-content{padding:48px 5% 64px}.detail-content,.gallery-content{max-width:1296px}.about-content{max-width:960px}.service-content,.pricing-content,.contact-content{max-width:1296px}
.about-section h2,.process-section h2,.pricing-section h2,.payment-section h2,.money-section h2,.faq-section h2{font:400 28px/1.5 var(--serif);color:var(--forest);border-color:var(--sage)}.about-section p,.detail-content p{color:var(--ink);font-size:16px;line-height:2}.profile-photo{border-radius:0;box-shadow:none}
.gallery{gap:24px;margin:36px 0;align-items:start}.gallery img{height:auto;aspect-ratio:auto;object-fit:contain;border-radius:0;background:#e3e2db}.gallery-grid{gap:24px}.gallery-item,.testimonial-card,.deliverable-item{border-radius:0;box-shadow:none;border:1px solid var(--line);background:var(--surface)}.testimonial-image,.gallery-item img,.photo-placeholder{border-radius:0}
.step,.pricing-card,.mode-card,.form-card,.payment-item,.faq-item{background:var(--surface);border:1px solid var(--line);border-radius:0;box-shadow:none}.step,.pricing-card,.mode-card,.form-card{padding:28px}.step:hover,.pricing-card:hover,.mode-card:hover,.payment-item:hover{transform:none;box-shadow:none;border-color:var(--sage)}.mode-card.mode-1,.mode-card.mode-2,.mode-card.mode-3{border-top:3px solid var(--sage)}.step-number,.payment-step,.phase-number{background:var(--forest);color:#fff}.step-tag{background:#eceee4;color:var(--forest)}.price,.payment-amount,.mode-card .price{color:var(--forest)}.step h3,.pricing-card h3,.mode-card h3,.form-card h3,.phase-title{font-family:var(--serif);font-weight:400;color:var(--forest)}
.highlights-section,.highlight-box,.pricing-note,.note-section,.legend,.upload-notice{background:#e9ecdf;border-color:var(--line);border-radius:0;color:var(--ink)}.highlights-section h2{color:var(--forest)}.highlight-box{border-left:3px solid var(--sage)}.faq-question{color:var(--ink)}.faq-question:hover{background:#f0f1e9}.faq-answer{color:var(--muted)}
.form-group input,.form-group textarea,.form-group select{background:#fff;color:var(--ink);border:1px solid #b8c1aa;border-radius:3px}.form-group label{color:var(--ink)}.submit-btn:disabled{opacity:.55;cursor:wait}.contact-info,.cta-section{background:var(--forest);color:#fafbf5;border-radius:0}.contact-info h3,.contact-info p,.contact-method p,.cta-section h3,.cta-section p{color:inherit}.contact-info a{color:inherit}.cta-section .cta-btn{background:#f5f3ed;color:var(--forest);border-color:#f5f3ed}
.responsibility-section{overflow-x:auto;border-radius:0;border:1px solid var(--line);background:var(--surface)}.responsibility-table th{background:var(--forest);color:#fff}.responsibility-table td{border-color:#e0e3d7}.responsibility-table .stage-header td{background:#e9ecdf;color:var(--forest)}
.tips-header{padding:76px 5% 54px;background:var(--paper);text-align:left;color:var(--forest);border-bottom:1px solid var(--line)}.tips-header h1{font:400 clamp(34px,4.6vw,68px)/1.4 var(--serif);margin-bottom:24px}.tips-header .subtitle{color:var(--muted)}.tips-content{padding:48px 5% 64px}.phase-card{border-radius:0;box-shadow:none;border:1px solid var(--line);border-left:3px solid var(--line)}.phase-card.active{border-left-color:var(--forest)}.phase-card.active .phase-arrow{color:var(--forest)}.phase-card:hover{box-shadow:none;transform:none}.intro-section{border-radius:0;background:#e9ecdf}
.tip-section{border-radius:0;box-shadow:none;border-left-color:var(--forest)}.tip-number{background:var(--forest)}.tip-section.warning{border-left-color:#a06f36}.tip-section.danger{border-left-color:#b4473b}.tip-section.success{border-left-color:var(--sage)}
@media(max-width:700px){.tips-header{padding:48px 5% 36px}.tips-content{padding:32px 5% 44px}.tip-section{padding:22px}.phase-card{padding:20px}}
/* Keep responsibility badges, validation states, QR codes and overlays functional. */
.dark{background:var(--forest)!important;color:#fafbf5!important}.dark h2,.dark .subtitle{color:inherit}.dark .contact-form input,.dark .contact-form textarea{background:#2d3d2d;border-color:#839279;color:#fff}.dark .contact-form input::placeholder,.dark .contact-form textarea::placeholder{color:#c6d1b9}.dark .contact-form button{background:var(--paper);color:var(--forest)}.wechat-modal-content{background:var(--paper);border-radius:4px}.footer{padding:40px 5%;text-align:left;background:var(--paper);color:var(--muted);border-top:1px solid var(--line)}.footer p:first-child{color:var(--forest);font-family:var(--serif);font-size:24px}.footer p:last-child{font-size:13px}
@media(max-width:900px){.nav{align-items:flex-start;flex-direction:column;gap:16px}.nav-links{justify-content:flex-start}.hero,.about-header,.detail-header,.service-header,.pricing-header,.contact-header,.testimonials-header,.deliverables-header{padding:48px 5% 36px}}
@media(max-width:700px){.nav{padding:20px 5%}.nav-links{gap:10px 18px}.hero h1{font-size:36px}.hero p{font-size:16px}.hero-buttons{gap:10px}.hero .cta{padding:9px 16px;font-size:14px}.grid,.gallery{grid-template-columns:minmax(0,1fr);gap:24px}.section{padding:40px 5%}.case-content{padding:22px}.about-content,.detail-content,.service-content,.pricing-content,.contact-content,.testimonials-content,.deliverables-content,.gallery-content{padding:32px 5% 44px}.step,.pricing-card,.mode-card,.form-card{padding:22px}.responsibility-table{min-width:650px}.footer{padding:28px 5%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Pricing discovery: shared entrances and service summary. */
.nav-links .pricing-nav{color:var(--forest);border-bottom-color:var(--sage);white-space:nowrap}
.fee-entry{display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid var(--line)}
.fee-entry>div{max-width:780px}.fee-entry>.cta{flex-shrink:0}.fee-eyebrow{font-size:12px;letter-spacing:2px;color:var(--muted);margin-bottom:12px}
.fee-caption{font-size:13px;color:var(--muted);margin-top:12px}.fee-boundary{padding:20px 24px;background:#e9ecdf;color:var(--ink);margin:0 0 24px;line-height:1.9}
.fee-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin:24px 0}.fee-actions a{min-height:44px;display:inline-flex;align-items:center}.fee-actions .cta{justify-content:center}
.fee-overview{margin-bottom:64px}.fee-overview h2{text-align:left;margin-bottom:24px}.fee-overview .mode-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:24px}
.fee-overview .mode-card h3{font-size:20px;margin-bottom:16px}.fee-overview .price{font-size:36px;margin-bottom:12px}.fee-overview .price-unit{font-size:16px}.fee-overview .desc{font-size:14px;color:var(--muted)}
.fee-scope{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;border-top:1px solid var(--line);padding-top:32px}.fee-scope h3{font:400 24px/1.5 var(--serif);color:var(--forest);margin-bottom:16px}.fee-scope p{margin-bottom:16px}
.project-next{border-top:1px solid var(--line);padding-top:32px;margin-top:48px}.project-next h2{font:400 28px/1.5 var(--serif);color:var(--forest);margin-bottom:16px}.project-next .fee-actions{margin-bottom:0}
.consultation-entry{padding:32px;border:1px solid var(--line)}.consultation-entry p{margin:16px 0}.payment-amount{font-size:clamp(20px,2.2vw,30px)}
@media(max-width:700px){.fee-entry{align-items:stretch;flex-direction:column;gap:20px}.fee-overview .mode-cards,.fee-scope{grid-template-columns:minmax(0,1fr)}.fee-actions{gap:12px}.fee-actions .cta{width:100%;padding:12px 18px}.fee-boundary{padding:18px}.consultation-entry{padding:22px}.fee-overview{margin-bottom:40px}}
