:root{--wine:#542e49;--ink:#242824;--muted:#646960;--cream:#f2f3ea;--boundary:#dddcd0;--nav:62px;--width:1200px;--rail:138px;font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;color:var(--ink);scroll-behavior:smooth;scroll-padding-top:calc(var(--nav) + 16px)}
*{box-sizing:border-box}
body{margin:0;background:#fdfcf9;line-height:1.6;padding-top:var(--nav)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
button:disabled{cursor:default}
button,a,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #2c77a7;outline-offset:4px}
button{border:0}
h1,h2,h3,p{margin:0}
img{max-width:100%;display:block}
.ico{width:20px;height:20px;flex:none}
.inner,.head-inner{width:min(calc(100% - 100px),var(--width));margin-inline:auto}
.skip{position:fixed;top:-120px;background:white;z-index:99;padding:12px}
.skip:focus{top:0}
.header{position:fixed;inset:0 0 auto;z-index:30;background:#fff;box-shadow:0 1px 8px #2620211a}
.head-inner{height:var(--nav);display:flex;align-items:center;gap:clamp(18px,3vw,52px)}
.logo,.foot-logo{display:inline-flex;align-items:center;color:var(--wine);gap:9px;flex:none}
.logo>span{font-size:20px;line-height:1.16;font-weight:650;letter-spacing:.08em}
.logo small{display:block;font:9px/1.3 Arial,sans-serif;letter-spacing:.17em;padding-top:3px}
.mark{width:36px;height:36px}
.nav{display:flex;align-self:stretch;justify-content:space-between;gap:clamp(8px,2.3vw,35px)}
.nav a{display:grid;place-items:center;white-space:nowrap;position:relative;color:#353635;font-size:14px}
.nav a::after{content:"";position:absolute;bottom:0;left:3px;right:3px;height:2px;transform:scaleX(0);background:var(--wine);transition:transform .2s}
.nav a:hover::after,.nav a[aria-current]::after{transform:scaleX(1)}
.nav a[aria-current]{color:var(--wine);font-weight:650}
.head-contact{margin-left:auto;display:inline-flex;gap:6px;align-items:center;white-space:nowrap;color:var(--wine);font-size:13px}
.head-contact .ico{width:17px}
.menu-switch{display:none}
.subhero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,23,26,.52),rgba(22,23,26,.23) 47%,rgba(22,23,26,.01) 79%),linear-gradient(0deg,rgba(12,17,16,.45),transparent 43%);pointer-events:none}
.hero-kicker,.eyebrow{font:600 11px/1.5 Arial,sans-serif;letter-spacing:.22em}
.hero-kicker{display:flex;align-items:center;gap:13px;color:#fff2d7;text-shadow:0 1px 4px #44382c}
.hero-kicker i{width:40px;height:1px;background:currentColor}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border-radius:6px;min-height:46px;padding:10px 21px;font-weight:650;font-size:15px;transition:transform .18s,filter .18s}
.button .ico{width:16px;height:16px}
.button.account{color:white;background:linear-gradient(#326ab1,#23518c);border:1px solid #5281bb;box-shadow:0 3px 0 #183b69,0 5px 11px #091c3033}
.button.official{color:#3e2d12;background:linear-gradient(#ffdb7c,#f2c04e);border:1px solid #f9d779;box-shadow:0 3px 0 #a57829,0 5px 11px #33230633}
.button:hover{filter:brightness(1.07);transform:translateY(-1px)}
.button:active{transform:translateY(2px)}
.eyebrow{color:#745c68;font-size:10px}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:26px}
.section-heading h2,.service-content h2{font-size:clamp(27px,3vw,40px);line-height:1.25;color:var(--wine);font-weight:600;letter-spacing:.06em;margin-top:7px}
.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.news-card{display:flex;flex-direction:column;min-height:205px;background:#fffefa;border:1px solid #dfded4;border-radius:9px;padding:23px;box-shadow:0 5px 14px #3c32200a}
.news-meta,.news-end,.article-meta,.article-end{display:flex;align-items:center;justify-content:space-between;gap:10px}
.news-meta{font-size:11px;color:var(--wine);letter-spacing:.02em}
.news-meta time,.edition{font:12px Arial,sans-serif;color:var(--muted)}
.news-card h3{font-size:19px;line-height:1.52;margin:12px 0 8px;font-weight:600}
.news-card h3 a:hover,.rotating:hover,.back:hover,.footer nav a:hover{text-decoration:underline}
.news-card p,.service-content p,.questions p{color:#5d635e;font-size:14px;line-height:1.85}
.news-end{margin-top:auto;padding-top:16px}
.read,.text-link,.rotating,.back{display:inline-flex;align-items:center;gap:5px;font-size:13px}
.read,.text-link{font-weight:600;color:var(--wine)}
.rotating,.back{color:#64665e}
.read .ico,.rotating .ico,.text-link .ico{width:14px;height:14px}
.dock{position:fixed;z-index:25;right:10px;top:50%;transform:translateY(-50%);width:var(--rail);padding:4px;display:grid;gap:3px;background:#fffdf8;border:1px solid #d4d0c9;border-radius:11px;box-shadow:0 7px 28px #1e21253a,0 2px 3px #29212722}
.dock a,.dock button{display:flex;align-items:center;gap:8px;background:linear-gradient(#fffefb,#f7f5ef);color:var(--wine);text-align:left;padding:10px;border:1px solid #e4ddd3;border-bottom:2px solid #d6cec4;border-radius:7px;min-height:48px}
.dock a:last-child{background:linear-gradient(#68435d,#502c46);border-color:#563049;border-bottom-color:#321b2d;color:white}
.dock a:hover,.dock button:hover{filter:brightness(.96)}
.dock a:active,.dock button:active{transform:translateY(1px)}
.dock span{min-width:0}
.dock b,.dock small{display:block;line-height:1.4}
.dock b{font-size:13px;font-weight:600}
.dock small{font:11px/1.45 Arial;letter-spacing:.025em}
.dock .ico{width:20px;height:20px}
.crumb{display:flex;align-items:center;gap:10px;min-height:48px;color:#6b6d66;font-size:12px}
.crumb a{color:var(--wine)}
.subhero{height:clamp(220px,25vw,360px);position:relative;isolation:isolate;overflow:hidden;color:white;background:#56574d}
.subhero picture,.subhero picture img{width:100%;height:100%;object-fit:cover}
.subhero .inner{position:absolute;z-index:1;inset:0;display:flex;justify-content:center;flex-direction:column}
.subhero h1{font-size:clamp(40px,4.3vw,65px);letter-spacing:.08em;line-height:1.25;margin:8px 0}
.subhero p{font-size:16px}
.inside{padding-block:46px 60px}
.service-content{display:grid;grid-template-columns: .88fr 1.25fr;align-items:start;gap:8%;padding:12px 0}
.service-content p{margin:13px 0 24px;max-width:450px}
.questions{border-top:1px solid var(--boundary)}
.questions details{border-bottom:1px solid var(--boundary)}
.questions summary{cursor:pointer;padding:17px 6px 17px 0;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:13px;font-weight:600}
.questions summary::-webkit-details-marker{display:none}
.questions summary span:after{content:"＋";color:var(--wine);font-size:20px}
.questions details[open] summary span:after{content:"−"}
.questions p{margin:0 0 19px;max-width:none}
.contact-block{text-align:center;border:1px solid #dcd5d5;background:#f5f1ef;border-radius:11px;box-shadow:0 5px 18px #392c3010;padding:27px 14px;margin-top:42px}
.contact-heading,.contact-lines,.contact-lines>div{display:flex;gap:9px;align-items:center;justify-content:center}
.contact-heading{color:var(--wine)}
.contact-heading h2{font-size:22px}
.contact-lines{margin:14px 0;flex-wrap:wrap;gap:15px 28px}
.contact-lines span{color:var(--muted);font-size:13px}
.contact-lines strong{font-family:Arial,sans-serif}
.small-action{display:inline-flex;gap:5px;align-items:center;background:linear-gradient(white,#f7f1ef);border:1px solid #cbbec7;border-bottom:2px solid #b6a6b1;border-radius:5px;color:var(--wine);padding:4px 9px;font-size:12px;box-shadow:0 2px 4px #4f334014}
.small-action .ico{width:13px;height:13px}
.article-wrap{width:min(860px,calc(100% - 50px));margin:15px auto 60px}
.article{background:white;padding:clamp(22px,5vw,58px);border:1px solid var(--boundary);border-radius:12px;box-shadow:0 8px 20px #534a3410}
.article h1{font-size:clamp(26px,3.5vw,40px);line-height:1.45;margin:12px 0}
.article-meta{justify-content:flex-start;color:var(--muted);font-size:13px;flex-wrap:wrap;border-bottom:1px solid var(--boundary);padding-bottom:22px;margin-bottom:24px}
.article p{font-size:17px;line-height:2;margin:12px 0}
.article-end{padding:20px 0;margin:12px 0;border-block:1px solid var(--boundary)}
.error{padding-block:90px 140px}
.error p{padding:16px 0 24px}
.footer{background:#302a2e;color:#f0e9ec;padding:37px 0}
.footer .inner{display:flex;flex-wrap:wrap;align-items:center;gap:18px 36px}
.foot-logo{font-size:17px;color:#f4e9e9}
.foot-logo .mark{width:29px;height:29px}
.footer nav{display:flex;flex-wrap:wrap;gap:9px 19px;font-size:12px}
.footer small{margin-left:auto;color:#d4c7cc;font:11px Arial,sans-serif}
.toast{position:fixed;left:50%;bottom:32px;transform:translate(-50%,10px);opacity:0;z-index:60;pointer-events:none;background:#262622;color:#fff;padding:9px 18px;border-radius:6px;font-size:14px;transition:.2s;white-space:nowrap}
.toast.show{transform:translate(-50%,0);opacity:1}
@media(min-width:801px) and (max-width:1580px){
.inner,.head-inner{width:auto;max-width:var(--width);margin-left:clamp(32px,6.5vw,100px);margin-right:calc(var(--rail) + 31px)}
.head-inner{margin-right:clamp(26px,5vw,100px)}
.subhero .inner{left:0;right:0}
.article-wrap{width:min(800px,calc(100% - 330px))}
}
@media(min-width:801px) and (max-width:1050px){
:root{--rail:122px}
.head-inner{gap:20px}
.nav{gap:13px}
.head-contact{font-size:0}
.news-grid{gap:14px}
.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.dock a,.dock button{padding:8px 6px}
.service-content{gap:5%}
.service-content .actions{gap:7px}
.service-content .button{padding:8px 12px;gap:7px}
.inner{margin-left:32px}
.head-inner{margin:0 24px}
}
@media(max-width:800px){
:root{--nav:58px}
.inner,.head-inner{width:calc(100% - 36px)}
body{padding-bottom:calc(71px + env(safe-area-inset-bottom))}
.head-inner{gap:12px}
.logo .mark{width:33px;height:33px}
.logo>span{font-size:18px}
.head-contact{margin-left:auto;font-size:13px}
.menu-switch{display:grid;place-items:center;margin:0 0 0 3px;order:3;background:transparent;width:34px;height:38px;color:var(--wine)}
.menu-switch .ico{width:23px;height:23px}
.nav{display:none;position:absolute;inset:var(--nav) 0 auto;background:white;padding:12px 18px;border-top:1px solid #e4dfdf;box-shadow:0 8px 14px #251c221f;grid-template-columns:repeat(2,1fr);gap:4px}
.nav.open{display:grid}
.nav a{display:block;padding:9px 12px;border-radius:4px}
.nav a[aria-current]{background:#f3edf0}
.nav a:after{display:none}
.hero-kicker{font-size:10px}
.hero-kicker i{width:30px}
.button{min-height:41px;padding:8px 14px;font-size:14px;gap:12px}
.section-heading{margin-bottom:16px}
.news-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.news-card{padding:16px;min-height:180px}
.news-card h3{font-size:17px}
.dock{right:0;left:0;bottom:0;top:auto;transform:none;width:100%;border-radius:0;border-width:1px 0 0;grid-template-columns:1fr 1fr 1fr;gap:7px;padding:6px max(7px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px,env(safe-area-inset-left));box-shadow:0 -3px 14px #36212d1c}
.dock a,.dock button{justify-content:center;min-height:50px;gap:6px;padding:6px 2px}
.dock b{font-size:12px}
.dock .ico{width:19px}
.toast{bottom:calc(78px + env(safe-area-inset-bottom))}
.service-content{grid-template-columns:1fr;gap:28px}
.service-content p{max-width:none}
.inside{padding-block:30px 35px}
.footer small{margin-left:0}
.footer .inner{display:grid;gap:18px}
.contact-lines{gap:12px}
.article-wrap{width:calc(100% - 36px);margin:8px auto 35px}
.article p{font-size:16px}
.contact-block{margin-top:28px}
.subhero{height:210px}
.crumb{min-height:42px}
}
@media(max-width:560px){
.news-grid{grid-template-columns:1fr}
.news-card{min-height:auto}
.dock{gap:4px}
.contact-lines{flex-direction:column}
.section-heading{align-items:center}
.edition{font-size:10px}
.subhero::after{background:linear-gradient(90deg,#19171d91,#2222)}
}
@media(prefers-reduced-motion:reduce){
:root{scroll-behavior:auto}
*,*::after{animation:none!important;transition:none!important}
}
/* H World desktop proportions, scaled to a 1920 px design canvas. */
:root{--wine:#572b48;--paper:#f2f3e9;--nav:clamp(40px,2.917vw,56px)}
.header{box-shadow:0 1px 4px #00000015}
.head-inner{width:81.25%;max-width:1560px;margin-inline:auto;gap:clamp(24px,3.1vw,60px)}
.logo{gap:6px}.logo .mark{width:clamp(22px,1.88vw,36px);height:auto}
.logo>span{font-size:clamp(15px,1.15vw,22px);font-weight:550;letter-spacing:.035em;line-height:1}
.nav{gap:clamp(17px,2.55vw,49px)}.nav a{font-size:clamp(12px,.94vw,18px);font-weight:400}
.nav a[aria-current]{color:#1d1d1c;font-weight:500}
.nav a::after{background:#1d1d1c;left:50%;right:auto;width:clamp(27px,2.6vw,50px);transform:translateX(-50%) scaleX(0)}
.nav a:hover::after,.nav a[aria-current]::after{transform:translateX(-50%) scaleX(1)}
.head-contact{color:#333;font-size:clamp(12px,.88vw,16px)}
.campaign{position:relative;height:calc(100vh - var(--nav));height:calc(100svh - var(--nav));min-height:440px;isolation:isolate;overflow:hidden;background:#15242a;color:white}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .55s,visibility .55s}
.slide.is-active{opacity:1;visibility:visible}
.slide picture,.slide picture img{display:block;width:100%;height:100%;object-fit:cover}
.slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,12,20,.32),transparent 62%),linear-gradient(0deg,rgba(1,9,16,.52),transparent 52%);pointer-events:none}
.campaign-copy{position:absolute;z-index:1;left:4%;right:18%;bottom:20%}
.campaign-copy h1,.campaign-copy h2,.campaign-copy p{font-size:clamp(43px,4.9vw,94px);font-weight:750;line-height:1.17;letter-spacing:.015em;color:#6ed3e1;text-shadow:0 1px 6px #07162055}
.campaign-actions{position:absolute;z-index:3;left:4%;bottom:calc(20% - 60px)}
.campaign .actions{gap:12px}
.campaign .button{border-radius:4px;min-height:38px;padding:7px 15px;font-size:clamp(13px,.95vw,18px);gap:14px}
.campaign-bar{position:absolute;bottom:0;left:0;right:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:10px 3.25%;height:62px}
.campaign-steps{display:flex;gap:5px}.slide-dot,.pause{border:0;background:transparent;color:white;display:grid;place-items:center;padding:0;height:32px;width:28px}
.slide-dot i{display:block;width:100%;height:2px;background:#ffffff65}.slide-dot.on i{background:#fff}
.explore-down{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);display:grid;justify-items:center;gap:0;font-size:clamp(12px,1.04vw,20px);text-shadow:0 1px 5px #000;white-space:nowrap}
.explore-down span{font:23px/18px Arial;color:#fff}.pause .ico{width:17px}
.home{background:var(--paper)}
.home-width{width:72.92%;max-width:1400px;margin-inline:auto}
.home-section{padding-top:clamp(52px,5.2vw,100px)}
.center-heading{text-align:center;margin:0 0 clamp(24px,2.6vw,50px)}
.center-heading h2,.directory>h2{font-weight:500;color:var(--wine);font-size:clamp(27px,2.085vw,40px);letter-spacing:.035em;line-height:1.28}
.center-heading p{margin-top:clamp(9px,1vw,20px);color:#494943;font-size:clamp(14px,1.25vw,24px)}
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:clamp(140px,17.19vw,330px) auto;gap:clamp(10px,1.04vw,20px)}
.gallery-item{position:relative;overflow:hidden;display:block;isolation:isolate;background:#dcd9cd}
.gallery-item:first-child{grid-column:span 2}
.gallery-item:nth-child(n+3){aspect-ratio:1.77}
.gallery-item picture,.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s}
.gallery-item picture{position:absolute;inset:0}
.gallery-item::after{position:absolute;content:"";inset:30% 0 0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.70));pointer-events:none}
.gallery-item:hover img{transform:scale(1.045)}
.gallery-caption{position:absolute;z-index:1;left:clamp(13px,2.08vw,40px);right:12px;bottom:clamp(12px,1.56vw,30px);color:white}
.gallery-caption h3{font-size:clamp(16px,1.18vw,23px);line-height:1.28;font-weight:650}
.gallery-caption p{font-size:clamp(12px,.94vw,18px);margin-top:5px;line-height:1.35}
.journal-home .news-grid{column-gap:clamp(12px,1.04vw,20px);row-gap:23px}
.journal-home .news-card{background:transparent;border:0;border-radius:0;border-top:1px solid #bdbbb0;box-shadow:none;padding:17px 0 4px;min-height:180px}
.journal-home .news-card h3{font-size:clamp(17px,1.25vw,23px)}
.section-more{display:flex;align-items:center;gap:10px;width:max-content;margin:28px auto 0;padding-bottom:4px;border-bottom:1px solid #3b3b35;font-size:14px}
.section-more .ico{width:16px}
.directory-section{padding-bottom:clamp(50px,5.2vw,100px)}
.directory{position:relative;border:1.5px solid var(--wine);border-radius:clamp(12px,1.05vw,20px);padding:clamp(25px,2.8vw,54px) 4% 12px}
.directory>h2{position:absolute;left:50%;top:0;transform:translate(-50%,-55%);background:var(--paper);padding:0 24px;white-space:nowrap}
.directory-row{display:grid;grid-template-columns:26% 1fr;align-items:center;gap:20px;border-top:1px solid #cbc6bc;padding:16px 0}
.directory-row:first-child{border:0}
.directory-row h3{font-size:clamp(15px,1.1vw,21px);font-weight:500;color:var(--wine)}
.directory-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.directory-links a{display:flex;align-items:center;gap:10px;font-size:clamp(13px,1vw,18px)}
.directory-links a:hover{text-decoration:underline}
.directory-links .ico{color:var(--wine)}
.subhero picture{display:block}
.footer{background:#f6f6f8;color:#363438;border-top:1px solid #e8e6e9}
.footer .foot-logo{color:var(--wine)}.footer small{color:#717075}
@media(min-width:801px) and (max-width:1200px){
  .head-inner{width:93%;gap:24px}.nav{gap:clamp(13px,2vw,28px)}
  .home-width{width:calc(100% - 2 * (var(--rail) + 15px))}
}
@media(max-width:800px){
  :root{--nav:54px}.head-inner{width:calc(100% - 32px);gap:12px}
  .logo .mark{width:29px}.logo>span{font-size:18px}.head-contact{font-size:13px}
  .nav{gap:4px}.nav a{font-size:14px}
  .campaign{min-height:360px;height:calc(100vh - var(--nav) - 66px);height:calc(100svh - var(--nav) - 66px - env(safe-area-inset-bottom))}
  .campaign-copy{left:6%;right:5%;bottom:28%}.campaign-copy h1,.campaign-copy h2,.campaign-copy p{font-size:clamp(34px,8vw,58px);line-height:1.25}
  .campaign-actions{left:6%;bottom:calc(28% - 60px)}
  .campaign-bar{padding-inline:6%;height:50px}.slide-dot{width:20px}
  .home-width{width:calc(100% - 36px)}.home-section{padding-top:43px}.center-heading{margin-bottom:21px}
  .center-heading h2,.directory>h2{font-size:25px}.center-heading p{font-size:14px;margin-top:7px}
  .gallery{gap:8px;grid-template-rows:clamp(120px,21vw,168px) auto}
  .gallery-caption{left:12px;bottom:12px}.gallery-caption h3{font-size:16px}.gallery-caption p{font-size:12px}
  .directory{padding-inline:16px}.directory-row{grid-template-columns:25% 1fr;gap:5px}.directory-links{gap:6px}.directory-links a{gap:4px}
  .directory-links .ico{width:15px}.journal-home .news-grid{row-gap:16px}.journal-home .news-card{min-height:140px}
}
@media(max-width:560px){
  .gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}
  .gallery-item:first-child{aspect-ratio:1.9}
  .gallery-item:nth-child(n+2){aspect-ratio:1.4}
  .gallery-caption p{font-size:11px}
  .directory-links a{font-size:12px}.directory-row h3{font-size:13px}
  .journal-home .news-card{min-height:auto}.journal-home .news-card h3{margin-block:8px}
}
