.portfolio-brand{font-size:1.15rem;letter-spacing:.025em}.portfolio-hero{padding-top:5rem;padding-bottom:4rem;background:var(--ink);color:white}.portfolio-hero .eyebrow{color:var(--accent)}.portfolio-hero h1{font-size:clamp(2.5rem,5.3vw,5.3rem);font-weight:500}.portfolio-hero h1 span{color:var(--accent)}.portfolio-hero h1 span::after{display:none}.hero-baseline{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-top:2.7rem;padding-top:1.8rem;border-top:1px solid #52776f}.hero-baseline p{color:#d4e4de}.hero-baseline a{white-space:nowrap}.work-section{background:#fff}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.work-card{border:1px solid var(--line);min-width:0}.yanxiang-cover,.cleaning-cover{height:350px;position:relative;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;overflow:hidden;padding:1.7rem}.yanxiang-cover{background:#272825;color:#eee9df}.work-index{font-size:.875rem;letter-spacing:.1em;position:relative;z-index:1}.yanxiang-type{display:block;text-align:center;font-family:"Noto Serif TC","PMingLiU",serif;font-size:4rem;letter-spacing:.24em;padding-left:.24em;font-weight:400}.yanxiang-type small{font-family:Arial,sans-serif;font-size:.75rem;display:block;letter-spacing:.35em;margin-top:1rem}.cover-bottom{font-size:.875rem;color:#ccc8bd}.cleaning-cover{color:white;background:#153e36}.cleaning-cover img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:50% 65%;opacity:.6}.cleaning-title{position:relative;z-index:1;font-size:2.5rem;line-height:1.4;letter-spacing:-.05em}.work-copy{padding:2rem}.work-label{font-size:.8rem;color:var(--muted)}.work-copy h3{margin:.5rem 0 1rem}.work-copy>p{color:var(--muted);margin-bottom:1rem}.work-copy .work-attribution{font-size:.875rem;padding-top:1rem;border-top:1px solid var(--line)}.work-copy>a{font-size:.95rem;display:inline-block;margin-top:.5rem}.offer-section{background:var(--soft);display:grid;grid-template-columns:1fr 1fr;gap:4rem}.offer-price{font-size:3.7rem;font-weight:600;line-height:1.4;letter-spacing:-.05em;margin:1.5rem 0}.offer-price>span{font-size:1.1rem;letter-spacing:0}.offer-price small{font-size:.9rem;letter-spacing:0;font-weight:400}.offer-section>div>p:not(.offer-price){color:var(--muted);font-size:.95rem}.offer-detail{border-top:1px solid var(--ink);padding-top:1.4rem}.offer-detail ul{padding-left:1.2rem;margin:1.1rem 0}.offer-detail li{margin:.5rem 0}.offer-detail>p{padding-top:1rem;border-top:1px solid var(--line)}.offer-detail>a{display:inline-block;margin-top:1.5rem}@media(max-width:900px){.portfolio-grid{gap:1rem}.yanxiang-cover,.cleaning-cover{height:300px}.work-copy{padding:1.4rem}.offer-section{gap:2rem}.offer-price{font-size:3rem}.offer-price small{display:block}}@media(max-width:640px){.portfolio-brand{font-size:1rem}.portfolio-hero{padding-top:3.5rem;padding-bottom:3rem}.portfolio-hero h1{font-size:clamp(2.15rem,8.3vw,3.5rem);line-height:1.5}.hero-baseline{display:block}.hero-baseline a{display:inline-block;margin-top:1.5rem}.portfolio-grid,.offer-section{grid-template-columns:1fr}.yanxiang-cover,.cleaning-cover{height:320px}.work-copy{padding:1.5rem}.offer-price small{display:inline;font-size:.875rem}.offer-section{gap:2.5rem}.portfolio .site-header .button-small{font-size:.75rem}.portfolio .site-header nav{justify-content:flex-start;gap:2.2rem}}

.editorial-card{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr}.editorial-cover{position:relative;min-height:350px;display:flex;flex-direction:column;justify-content:space-between;padding:1.7rem;background:#161918;color:#eeede7;text-decoration:none;overflow:hidden}.editorial-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.46}.editorial-title{position:relative;font-family:PMingLiU,serif;font-size:2.5rem;color:#f0d4a9;line-height:1.5}.editorial-title small{display:block;font-size:1.1rem;color:#fff;margin-top:.7rem}.editorial-card .work-copy{align-self:center}@media(max-width:640px){.editorial-card{display:block}.editorial-cover{min-height:320px}}
