:root{--navy:#071524;--navy2:#0b1e31;--gold:#c9a35d;--gold2:#e0c182;--cream:#f4f0e8;--paper:#faf9f5;--ink:#14202b;--muted:#68737c;--line:rgba(18,32,43,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;width:100%}h1,h2,h3,p{margin-top:0}.site-header{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:20;top:0;width:100%;color:#fff;border-bottom:1px solid rgba(255,255,255,.18)}.brand,.footer-brand{display:flex;align-items:center;gap:12px}.brand>span:last-child{display:flex;flex-direction:column}.brand b,.footer-brand b{font:700 20px "Noto Serif SC";letter-spacing:.15em}.brand small,.footer-brand small{font-size:7px;letter-spacing:.24em;color:var(--gold2);margin-top:3px}.brand-emblem{width:43px;height:43px;border:1px solid var(--gold);display:grid;place-items:center;font:700 12px "Noto Serif SC";color:var(--gold2);transform:rotate(45deg)}.brand-emblem::first-line{transform:rotate(-45deg)}.desktop-nav{display:flex;gap:31px;font-size:13px}.desktop-nav a{padding:33px 0;position:relative}.desktop-nav a:after{content:"";position:absolute;bottom:22px;left:0;width:0;height:1px;background:var(--gold2);transition:.25s}.desktop-nav a:hover:after{width:100%}.service-button{padding:12px 18px;border:1px solid rgba(255,255,255,.5);font-size:13px}.service-button span{color:var(--gold2);margin-left:12px}.menu-button,.mobile-nav{display:none}
.hero{height:max(760px,100vh);min-height:720px;position:relative;color:#fff;overflow:hidden}.hero>img{height:100%;object-fit:cover;object-position:center 36%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,13,23,.91) 0,rgba(3,13,23,.68) 42%,rgba(3,13,23,.2) 75%),linear-gradient(0deg,rgba(3,13,23,.65),transparent 48%)}.hero-content{position:absolute;left:9vw;top:50%;transform:translateY(-44%);max-width:760px}.eyebrow,.kicker{font-size:11px;font-weight:600;letter-spacing:.28em;color:var(--gold2);margin-bottom:24px}.hero h1,.section h2,.hospitality h2{font:700 clamp(52px,6vw,88px)/1.18 "Noto Serif SC";letter-spacing:.03em;margin:0 0 27px}.hero h1 em,h2 em{font-style:normal;color:var(--gold2)}.hero-copy{font-size:17px;line-height:1.9;color:#dce1e4;letter-spacing:.08em}.hero-actions{display:flex;gap:15px;margin-top:37px}.gold-button,.ghost-button,.line-button{display:inline-flex;align-items:center;justify-content:space-between;min-width:190px;padding:16px 20px;font-size:13px;font-weight:600;transition:.25s}.gold-button{background:var(--gold);color:#101921}.gold-button:hover{background:var(--gold2);transform:translateY(-2px)}.gold-button span{font-size:18px}.ghost-button{border:1px solid rgba(255,255,255,.55);color:#fff}.ghost-button:hover{background:#fff;color:var(--ink)}.hero-stats{position:absolute;right:5vw;bottom:44px;display:flex}.hero-stats div{padding:4px 29px;border-left:1px solid rgba(255,255,255,.28);display:flex;flex-direction:column}.hero-stats strong{font:600 27px "Noto Serif SC";color:var(--gold2)}.hero-stats span{font-size:10px;color:#bdc5cb;margin-top:5px}.scroll-cue{position:absolute;left:5vw;bottom:43px;font-size:9px;letter-spacing:.16em;color:#aeb7bd;display:flex;align-items:center;gap:12px}.scroll-cue span{height:35px;width:1px;background:var(--gold)}
.section{padding:112px 7vw}.section-label{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:600;letter-spacing:.15em;margin-bottom:57px}.section-label span{color:var(--gold);font-size:10px}.section-label:after{content:"";width:45px;height:1px;background:var(--gold)}.section-label.light{color:#fff}.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:9vw}.intro-title .kicker{color:#a17a35}.intro h2{font-size:clamp(43px,4.7vw,68px)}.intro-copy{padding-top:42px}.intro-copy .lead{font:600 21px/1.75 "Noto Serif SC";color:var(--ink)}.intro-copy>p:not(.lead){font-size:14px;color:var(--muted);line-height:2}.intro-copy>a{display:inline-block;margin-top:18px;font-size:13px;font-weight:600;border-bottom:1px solid;padding-bottom:7px}.intro-copy>a span{color:#a17a35;margin-left:20px}.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:85px;border-top:1px solid var(--line)}.principles article{padding:32px 6% 10px;border-right:1px solid var(--line)}.principles article:first-child{padding-left:0}.principles article:last-child{border:0}.principles span{color:var(--gold);font-size:10px}.principles h3{font:700 20px "Noto Serif SC";margin:20px 0 12px}.principles p{color:var(--muted);font-size:13px}
.hospitality{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:#fff;min-height:830px}.hospitality-image{position:relative;min-height:720px}.hospitality-image img{height:100%;object-fit:cover}.hospitality-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(2,13,23,.7),transparent 45%)}.hospitality-image>span{position:absolute;left:40px;bottom:35px;z-index:1;font-size:11px;letter-spacing:.12em;color:#e5e6e5}.hospitality-copy{padding:90px 9%}.hospitality-copy .section-label{margin-bottom:70px}.hospitality h2{font-size:clamp(43px,4vw,65px)}.hospitality-copy>p:not(.kicker){font-size:14px;line-height:2;color:#acb6c0}.hospitality ul{list-style:none;margin:38px 0;padding:0;border-top:1px solid rgba(255,255,255,.14)}.hospitality li{display:flex;flex-direction:column;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.14)}.hospitality li b{font:600 15px "Noto Serif SC";margin-bottom:5px}.hospitality li span{font-size:11px;color:#87949f}.line-button{min-width:200px;padding-left:0;padding-right:0;border-bottom:1px solid var(--gold);color:var(--gold2)}
.section-top{display:grid;grid-template-columns:.55fr 1fr 1.1fr;gap:5vw;align-items:end}.section-top .section-label{margin:0;align-self:start}.section-top .kicker{color:#a17a35}.section-top h2{font-size:clamp(45px,5vw,71px);grid-column:2}.section-top>p:last-child{color:var(--muted);font-size:14px;line-height:1.9}.project-gallery{display:grid;grid-template-columns:1.3fr .7fr;gap:20px;margin-top:65px}.project-gallery figure{margin:0;position:relative;overflow:hidden;background:#ddd}.project-main{height:680px}.project-side{height:680px}.project-gallery img{height:100%;object-fit:cover;transition:transform .6s}.project-gallery figure:hover img{transform:scale(1.025)}.project-gallery figure:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(0deg,rgba(3,13,23,.88),transparent)}.project-gallery figcaption{position:absolute;bottom:0;left:0;right:0;padding:35px;color:#fff;z-index:1;display:flex;justify-content:space-between;align-items:end}.project-gallery small{font-size:9px;letter-spacing:.17em;color:var(--gold2)}.project-gallery h3{font:600 24px "Noto Serif SC";margin:10px 0 7px}.project-gallery p{font-size:11px;color:#c6ccd0}.project-gallery figcaption>span{font:600 32px "Noto Serif SC";color:rgba(255,255,255,.3)}.process{display:flex;align-items:center;margin-top:48px;border-top:1px solid var(--line);padding-top:28px}.process>p{width:22%;font-size:12px;font-weight:600}.process ol{flex:1;display:flex;justify-content:space-between;list-style:none;margin:0;padding:0}.process li{font-size:12px}.process li b{color:var(--gold);font-size:9px;margin-right:9px}
.history{background:var(--navy2);color:#fff}.history .section-top{grid-template-columns:.55fr 1fr}.history .section-top h2{font-size:clamp(45px,5vw,68px)}.history .kicker{color:var(--gold2)}.timeline{display:grid;grid-template-columns:1fr 120px 1fr;gap:25px;align-items:center;margin-top:66px}.history-image{height:530px;position:relative;overflow:hidden}.history-image:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(0deg,rgba(3,13,23,.8),transparent)}.history-image img{height:100%;object-fit:cover}.history-image span{position:absolute;bottom:24px;left:25px;z-index:1;font-size:10px;letter-spacing:.13em}.history-text{display:flex;gap:26px;padding:27px 0}.history-text>strong{font:600 34px "Noto Serif SC";color:var(--gold2)}.history-text h3{font:600 20px "Noto Serif SC";margin:2px 0 9px}.history-text p{font-size:12px;color:#9ba8b4;line-height:1.7}.timeline-arrow{display:flex;align-items:center;flex-direction:column;color:var(--gold);gap:10px}.timeline-arrow i{height:60px;width:1px;background:rgba(201,163,93,.5)}.timeline-arrow span{font-size:9px;writing-mode:vertical-rl;letter-spacing:.15em}
.location{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.location-photo{height:710px;position:relative}.location-photo img{height:100%;object-fit:cover}.photo-tag{position:absolute;left:-24px;bottom:30px;background:var(--navy);color:#fff;padding:18px 22px;display:flex;gap:16px;align-items:center}.photo-tag span{font:600 28px "Noto Serif SC";color:var(--gold)}.photo-tag p{margin:0;font-size:8px;line-height:1.55;letter-spacing:.12em}.location-copy{padding-right:5vw}.location-copy h2{font-size:clamp(46px,5vw,69px);margin-bottom:45px}.location-copy .kicker{color:#a17a35}.contact-row{padding:22px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:110px 1fr}.contact-row small{font-size:11px;color:var(--muted)}.contact-row p,.contact-row a{margin:0;font:600 15px/1.7 "Noto Serif SC"}.location .gold-button{margin-top:32px}.gold-button.dark{background:var(--navy);color:#fff}.gold-button.dark span{color:var(--gold)}
footer{background:#040e18;color:#fff;padding:35px 5vw;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.1)}.footer-brand .brand-emblem{width:37px;height:37px}.footer-brand>div{display:flex;flex-direction:column}footer>p{margin:0;color:#7f8b96;font-size:10px;letter-spacing:.1em}.floating-service{position:fixed;z-index:30;right:24px;bottom:24px;background:var(--gold);color:var(--navy);padding:13px 18px;display:flex;gap:9px;align-items:center;box-shadow:0 10px 35px rgba(0,0,0,.25);font-size:12px;font-weight:700}.floating-service i{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.25)}
.reveal{opacity:0;transform:translateY(25px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}.hero-content.reveal{transform:translateY(-38%)}.hero-content.reveal.visible{transform:translateY(-44%)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.hero-content.reveal{opacity:1;transform:none;transition:none}}
@media(max-width:980px){.desktop-nav,.service-button{display:none}.menu-button{display:block;border:0;background:transparent;width:40px;height:40px;position:relative;z-index:31}.menu-button i{position:absolute;left:8px;width:25px;height:1px;background:#fff;transition:.25s}.menu-button i:first-child{top:14px}.menu-button i:last-child{top:24px}.menu-button.active i:first-child{top:19px;transform:rotate(45deg)}.menu-button.active i:last-child{top:19px;transform:rotate(-45deg)}.mobile-nav{position:fixed;inset:0;background:var(--navy);padding:115px 8vw 40px;flex-direction:column;gap:22px;font:600 24px "Noto Serif SC";z-index:30}.mobile-nav.open{display:flex}.mobile-service{font-size:14px;color:var(--gold2);margin-top:20px}.intro-grid,.hospitality,.location{grid-template-columns:1fr}.intro-copy{padding-top:0}.hospitality-image{height:670px}.hospitality-copy{padding:80px 7vw}.section-top{grid-template-columns:1fr}.section-top h2{grid-column:auto}.project-gallery{grid-template-columns:1fr 1fr}.project-main,.project-side{height:540px}.timeline{grid-template-columns:1fr}.timeline-arrow{flex-direction:row}.timeline-arrow i{height:1px;width:60px}.timeline-arrow span{writing-mode:horizontal-tb}.location{gap:65px}.location-photo{height:650px}.location-copy{padding:0}.hero-stats{right:4vw}.scroll-cue{display:none}}
@media(max-width:620px){.site-header{height:74px;padding:0 5vw}.brand b{font-size:17px}.brand-emblem{width:35px;height:35px}.hero{height:790px}.hero>img{object-position:62% center}.hero-shade{background:linear-gradient(0deg,rgba(3,13,23,.92),rgba(3,13,23,.35) 80%)}.hero-content{left:6vw;right:6vw;top:43%}.hero h1{font-size:45px}.hero-copy{font-size:14px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-stats{left:6vw;right:6vw;bottom:28px;justify-content:space-between}.hero-stats div{padding:0 12px}.hero-stats div:first-child{border:0;padding-left:0}.section{padding:78px 6vw}.section-label{margin-bottom:38px}.intro-grid{gap:25px}.intro h2,.section-top h2,.history .section-top h2,.location-copy h2{font-size:40px}.principles{grid-template-columns:1fr;margin-top:55px}.principles article,.principles article:first-child{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.hospitality{min-height:auto}.hospitality-image{height:550px}.hospitality-copy{padding:70px 6vw}.hospitality-copy .section-label{margin-bottom:45px}.hospitality h2{font-size:40px}.project-gallery{grid-template-columns:1fr}.project-main,.project-side{height:520px}.project-gallery figcaption{padding:24px}.process{display:block}.process>p{width:auto}.process ol{display:grid;grid-template-columns:1fr 1fr;gap:18px}.history-image{height:470px}.timeline{gap:10px}.location-photo{height:540px}.photo-tag{left:0}.contact-row{grid-template-columns:1fr;gap:9px}footer{flex-direction:column;gap:22px;text-align:center}.floating-service{right:14px;bottom:14px}.floating-service span{display:none}.floating-service{width:45px;height:45px;padding:0;justify-content:center;border-radius:50%}}

.brand-logo{width:52px;height:52px;display:block;overflow:hidden;flex:0 0 auto}
.brand-logo img{width:67px;max-width:none;height:auto;transform:translate(-7px,-17px);filter:sepia(.35) saturate(1.25) brightness(1.42)}
.footer-brand .brand-logo{width:46px;height:46px}
.footer-brand .brand-logo img{width:60px;transform:translate(-6px,-15px)}
@media(max-width:620px){
  .brand-logo{width:43px;height:43px}
  .brand-logo img{width:56px;transform:translate(-6px,-14px)}
}

/* Official Dongfang Forbes logo */
.brand-logo{width:54px;height:54px;overflow:visible}
.brand-logo img{width:100%;height:100%;object-fit:contain;transform:none;filter:none}
.footer-brand .brand-logo{width:48px;height:48px}
.footer-brand .brand-logo img{width:100%;height:100%;transform:none}
@media(max-width:620px){
  .brand-logo{width:46px;height:46px}
  .brand-logo img{width:100%;height:100%;transform:none}
}

@media(max-width:620px){
  .floating-service{
    right:14px;
    bottom:max(16px,env(safe-area-inset-bottom));
    width:auto;
    min-width:112px;
    height:48px;
    padding:0 17px;
    justify-content:center;
    gap:10px;
    border-radius:24px;
    font-size:14px;
    letter-spacing:.05em;
    box-shadow:0 8px 28px rgba(7,21,36,.32);
  }
  .floating-service span{display:inline}
  .floating-service i{
    position:relative;
    width:17px;
    height:14px;
    border-radius:5px;
    background:#fff;
    box-shadow:none;
  }
  .floating-service i:after{
    content:"";
    position:absolute;
    left:3px;
    bottom:-4px;
    width:6px;
    height:6px;
    background:#fff;
    clip-path:polygon(0 0,100% 0,0 100%);
  }
}
