/* Lạc Hồng mobile-first layout patch, 2026-11-10 */
html{scroll-padding-top:84px}body{overflow-x:clip}
.wrap,.hero-grid,.hero-copy,.apply-grid,.apply-grid>*,.apply-form-card,#application-form,.field,.field-row,.job-card{min-width:0}
:where(.apply-section,.positions-section,.values-section){scroll-margin-top:80px}
.hero-number{overflow-wrap:anywhere;line-height:1.3}
.hero-actions{flex-wrap:wrap}
.field input:not([type=checkbox]),.field select,.field textarea{display:block;max-width:100%;font-family:inherit;font-size:16px;line-height:1.4}
.field select{text-overflow:ellipsis}
.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field-row .field{min-width:0}
.apply-form-card{width:100%;max-width:690px;justify-self:end}
.apply-grid{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(25px,5vw,75px);align-items:start}
.form-heading h3,.form-alert{overflow-wrap:anywhere}
.submit-btn:disabled{opacity:.58;cursor:not-allowed;box-shadow:none;transform:none}
.submit-btn:focus-visible,.btn:focus-visible,.job-link:focus-visible,.mobile-apply a:focus-visible{outline:3px solid #e782a5;outline-offset:3px}
.consent{gap:12px}.consent input{min-width:18px}
@media(max-width:1100px){
 .hero-grid{display:block;min-height:0}
 .hero-copy{padding:58px 0 66px;max-width:750px}
 .hero h1{font-size:clamp(45px,6.7vw,68px);max-width:730px}
 .hero-art{display:none}
 .hero{background:radial-gradient(ellipse at 105% 10%,#f9dbe7 0%,transparent 45%),linear-gradient(115deg,#fffaf8,#fff1f4)}
 .apply-grid{grid-template-columns:minmax(0,1fr);gap:24px}
 .apply-intro{padding-top:0}
 .apply-intro>p:not(.overline){margin:20px 0 24px;max-width:740px}
 .apply-form-card{justify-self:center;max-width:720px}
 .apply-section{padding:68px 0 82px}
}
@media(max-width:900px){
 .toplinks{display:none}
 .topnav{gap:18px}.nav-cta{margin-left:auto}
 .values-grid{grid-template-columns:1fr;gap:20px}
 .flower-illustration{display:none}
}
@media(max-width:760px){
 .hero-copy{padding:48px 0 56px}
 .hero h1{font-size:clamp(38px,8.5vw,56px);max-width:650px;letter-spacing:-1.8px}
 .hero-lead{max-width:600px}
 .hero-salary{width:100%;max-width:550px}
 .apply-form-card{padding:32px clamp(18px,5vw,34px)}
 .apply-intro h2{font-size:clamp(38px,7vw,56px)}
 .apply-intro>p:not(.overline){max-width:620px}
 .field-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mobile-apply{transition:transform .2s ease,opacity .2s ease}
 .mobile-apply.is-hidden{opacity:0;pointer-events:none;transform:translateY(100%)}
}
@media(max-width:620px){
 .wrap{padding-inline:20px}
 .site-header .brand-name small{letter-spacing:1.1px}
 .hero-copy{padding:40px 0 46px}
 .hero h1{font-size:clamp(37px,9.8vw,48px);letter-spacing:-1.6px}
 .hero-lead{line-height:1.7;margin:18px 0 23px;font-size:14px}
 .hero-number{font-size:clamp(18px,5.3vw,22px);letter-spacing:-.55px}
 .hero-actions{gap:16px;margin-top:23px}
 .trust-row{margin-top:21px;gap:13px}.trust-row span{white-space:normal}
 .positions-grid{grid-template-columns:1fr}.job-card{padding:22px 22px 0;min-height:0}
 .section{padding:60px 0}.section h2{font-size:clamp(37px,9.2vw,43px);letter-spacing:-1.4px}
 .apply-section{padding:58px 0 74px}.apply-form-card{border-radius:13px;padding:28px 19px}
 .form-heading h3{font-size:clamp(27px,7.4vw,34px);letter-spacing:-.7px}
 .field-row{grid-template-columns:minmax(0,1fr);gap:0}.field{margin-bottom:19px}
 .field input:not([type=checkbox]),.field textarea,.field select{min-height:50px;padding:13px 14px;font-size:16px}
 .consent{font-size:13px;line-height:1.6}.submit-btn{font-size:14px;padding:17px 18px}
 .apply-note{display:flex;width:auto}
}
@media(max-width:360px){
 .wrap{padding-inline:16px}.announcement{letter-spacing:.6px;font-size:8px;gap:8px}
 .hero-number{font-size:18px}.hero-salary{padding:13px;gap:9px}
 .salary-icon{flex:0 0 auto}.brand-name strong{font-size:16px}
 .apply-form-card{padding-inline:16px}.mobile-apply{padding-inline:15px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mobile-apply{transition:none}}

/* 2026-11-10: iOS emoji rendering and headline reflow correction */
.apply-section{background:#4b1834;isolation:isolate}
.apply-section::before,.apply-section::after{display:none!important;content:none!important}
.apply-note>span{display:none!important}
.art-sun{display:none!important}
.little-star{display:block;width:17px;height:17px;border:2px solid var(--brand);border-radius:50%;margin-bottom:6px}
.hero h1{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.015em;line-height:1.16;font-weight:600;word-break:normal;overflow-wrap:normal;hyphens:none;text-wrap:pretty}
.hero-copy{min-width:0}
@media(min-width:1101px){
  .hero-grid{grid-template-columns:minmax(0,1.17fr) minmax(0,.83fr);column-gap:46px}
  .hero h1{font-size:clamp(48px,4.2vw,61px);max-width:100%;margin:20px 0 23px}
  .hero-art{width:100%;max-width:475px;min-width:0;transform:scale(.9);transform-origin:center}
}
@media(min-width:761px) and (max-width:1100px){
  .hero h1{font-size:clamp(46px,5.6vw,62px);max-width:690px}
}
@media(max-width:760px){
  .hero h1{font-size:clamp(36px,7.9vw,49px);letter-spacing:-.018em;line-height:1.2}
  .apply-section{background:#4b1834}
  .apply-intro h2{line-height:1.18;letter-spacing:-.016em;overflow-wrap:normal;word-break:normal}
}
@media(max-width:400px){
  .hero h1{font-size:clamp(35px,9vw,39px);letter-spacing:-.012em}
  .apply-intro h2{font-size:clamp(35px,9.2vw,42px)}
}
