/* Deliberate line breaks, full Vietnamese accent clearance, consistent nav baselines. */
h1,h2,h3{font-synthesis:none;text-rendering:optimizeLegibility}
.flow-section h2,.scene h1,.scene h2{line-height:1.3;letter-spacing:-.022em;overflow:visible;text-wrap:initial}
.headline-line{display:block;white-space:nowrap;padding:.06em 0;line-height:1.25}
#intro h2{font-size:clamp(28px,3.35vw,54px);line-height:1.3;letter-spacing:-.025em;margin:15px 0 20px}
#contact h2{font-size:clamp(34px,5.5vw,82px);line-height:1.3;letter-spacing:-.025em;margin-bottom:28px}
#artist h2{line-height:1.35}
.topnav{display:flex;align-items:center;justify-content:center;gap:23px}
.topnav button,.topnav a,.topnav .nav-viral,.topnav .nav-tvc{display:inline-flex;align-items:center;justify-content:center;align-self:auto;height:40px;min-height:40px;padding:0;line-height:1;font:500 11px/1 var(--type);white-space:nowrap;color:#aaa;vertical-align:middle}
.topnav button:after,.topnav a:after{bottom:4px}
.topnav button:hover,.topnav a:hover{color:#fff}
.chips button{border:1px solid #ffffff30;border-radius:24px;background:#08060655;color:#c8bfba;font:500 10px/1.6 var(--type);padding:8px 13px;transition:background .25s,border-color .25s,scale .25s}
.chips button:hover,.chips button:focus-visible{background:#ff3d2020;border-color:#ff665c;color:#fff}
.service-row{padding-top:31px;padding-bottom:31px}
.service-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 10px;margin-top:18px;transform-origin:left center}
.price-from{font:500 9px/1.8 var(--type);letter-spacing:.1em;color:#ff8a76}
.service-price strong{font:600 25px/1.5 var(--type);letter-spacing:-.02em;color:#fff}
.price-unit{font:400 12px/1.8 var(--type);color:#c2b5ad}
.service-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:10px}
.service-actions .service-project-link{margin-top:0}
.service-details{background:transparent;border:0;border-bottom:1px solid #ffffff30;color:#ded3ce;font:500 12px/1.8 var(--type);padding:5px 0;min-height:36px}
.service-details:hover{border-color:#ff8a76;color:#ff8a76}
.bulk-note{font:400 12px/1.85 var(--type);color:#d3b5a5;border-left:2px solid #f54d32;padding:11px 18px;margin-top:26px;background:linear-gradient(90deg,#ff4f1610,transparent)}
.section-pricing{display:flex;align-items:baseline;gap:8px 13px;flex-wrap:wrap;padding:20px 23px;border:1px solid #ff73512b;border-radius:8px;background:#0b07076e;margin:24px 0 32px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.section-pricing strong{font:600 27px/1.6 var(--type);letter-spacing:-.02em;color:#fff}
.section-pricing small{flex-basis:100%;font:400 11px/1.9 var(--type);color:#b7a59d}
#tvc{padding-left:6%;padding-right:6%}#tvc .aigc-inner{max-width:1440px}
#tvc .works-head h2{font-size:clamp(52px,7vw,100px);margin-bottom:15px}
#tvcGrid{margin-top:35px}.tvc-card .aigc-art{aspect-ratio:var(--video-aspect,16/9)}
#tvcGrid .aigc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 28px}
#tvcGrid .aigc-card h3{font-size:17px;margin:14px 0 6px}#tvcGrid .aigc-card small{font-size:11px}
#serviceDetail{width:min(680px,92vw);max-height:90svh;padding:40px;border:1px solid #ffffff26;border-radius:16px;background:radial-gradient(ellipse at 100% 0,#6d211730,transparent 60%),#110c0c;overflow:auto;box-shadow:0 40px 120px #0008}
#serviceDetail .close{position:absolute;float:none;right:17px;top:17px}
#serviceDetail h2{font:700 clamp(28px,4vw,44px)/1.35 var(--type);margin:20px 0 22px;letter-spacing:-.02em}
#serviceDetail .dialog-label{display:block;margin-right:38px;font:500 10px/1.8 var(--type)}
.modal-service-price{display:flex;align-items:baseline;gap:8px 12px;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid #ffffff24}
.modal-service-price strong{font:600 clamp(28px,4.5vw,39px)/1.5 var(--type);letter-spacing:-.025em}
.modal-service-price .price-unit{flex-basis:100%;font-size:13px}
#serviceDetail p{font:400 14px/1.9 var(--type);color:#d0c0ba;margin:20px 0 0}
#serviceDetail .modal-price-note{font-size:11px;color:#a99b93}
#serviceDetail .bulk-note{margin-top:22px;font-size:12px}
#serviceDetail .cta{border-radius:30px;margin-top:25px}
dialog[open]{animation:dialog-pop .34s cubic-bezier(.18,.82,.25,1) both}
dialog[open]::backdrop{animation:backdrop-in .25s ease both}
#serviceDetail.is-closing{animation:dialog-out .16s ease both}
@keyframes dialog-pop{from{opacity:0;transform:translate3d(0,24px,0) scale(.95)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes dialog-out{to{opacity:0;transform:translateY(12px) scale(.975)}}
@keyframes backdrop-in{from{background-color:#0000;backdrop-filter:blur(0)}to{background-color:#000b;backdrop-filter:blur(12px)}}
@media(max-width:1150px){.topnav{gap:15px}.topnav button,.topnav a,.topnav .nav-viral,.topnav .nav-tvc{font-size:10px}.topbar{padding-left:4%;padding-right:4%}}
@media(max-width:940px){.topnav{display:none}}
@media(max-width:700px){
 #intro h2{font-size:clamp(23px,6vw,34px);line-height:1.35;margin-bottom:15px}#contact h2{font-size:clamp(23px,6.5vw,36px);line-height:1.35;margin-bottom:22px}
 .headline-line{padding:.08em 0;line-height:1.3}
 .chips{gap:7px}.chips button{font-size:9px;padding:7px 11px}
 .service-row{padding-top:25px;padding-bottom:25px}.service-price{margin-top:14px;gap:4px 8px}.service-price strong{font-size:22px}.price-unit{font-size:11px}.price-from{font-size:8px}
 .service-actions{gap:8px 18px}.service-details{font-size:11px}.bulk-note{font-size:11px;padding:10px 13px;margin-top:22px}
 .section-pricing{padding:15px 17px;gap:5px 9px;margin-top:20px;margin-bottom:25px;backdrop-filter:none}.section-pricing strong{font-size:24px}.section-pricing small{font-size:10px}
 #tvc .works-head h2{font-size:54px}#tvcGrid{margin-top:26px}#tvcGrid .aigc-grid{grid-template-columns:minmax(0,1fr);gap:28px}#tvcGrid .aigc-card h3{font-size:15px}#tvcGrid .aigc-card small{font-size:10px}
 #serviceDetail{padding:28px 22px;border-radius:12px;max-height:92svh}#serviceDetail h2{font-size:31px;margin-top:23px}.modal-service-price strong{font-size:28px}#serviceDetail p{font-size:13px}.modal-service-price .price-unit{font-size:12px}#serviceDetail .cta{font-size:12px}
}
@media(prefers-reduced-motion:reduce){dialog[open],dialog[open]::backdrop,#serviceDetail.is-closing{animation:none}.chips button{transition:none}}
