@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600;700;900&display=swap');
:root{font-family:'Microsoft YaHei','PingFang SC',sans-serif;background:#f4eee3;color:#2d2520;font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #dfb36c;outline-offset:4px}img{display:block;max-width:100%}::selection{background:#b93d32;color:#fff}section[id]{scroll-margin-top:83px}.container{width:min(1200px,calc(100% - 80px));margin:auto}#scroll-progress{height:3px;position:fixed;z-index:120;top:0;left:0;background:#e9bd76;width:0;transition:width .15s}[hidden]{display:none!important}
/* Fixed navigation, brush-stroke inspired brand and soft-edged interactive buttons */
.header{position:fixed;z-index:55;inset:0 0 auto;min-height:83px;padding:0 max(36px,calc((100vw - 1320px)/2));display:flex;align-items:center;justify-content:space-between;gap:26px;background:transparent;border-bottom:1px solid #ffffff38;color:#fff;transition:background .3s,box-shadow .3s,min-height .3s;white-space:nowrap}.header.scrolled{min-height:74px;background:#231d1bee;box-shadow:0 8px 25px #18110f42;backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:11px}.brand-mark{position:relative;width:45px;height:45px;border:1px solid #e9c384;border-radius:12px 4px 12px 4px;background:linear-gradient(135deg,#8e2a24,#6e1d1b);box-shadow:inset 0 0 0 4px #ffffff0c;color:#efc987;display:grid;place-items:center;font:700 28px 'Noto Serif SC',serif}.brand-mark i{position:absolute;right:-8px;top:-8px;font:10px sans-serif;color:#f4d99b}.brand-words{display:flex;flex-direction:column;gap:1px}.brand-words strong{font:700 25px 'Noto Serif SC',serif;letter-spacing:2px}.brand-words small{font-size:8px;letter-spacing:2.7px;color:#e4c796}.desktop-nav{display:flex;align-items:center;height:100%;margin:auto;gap:4px}.nav-link{position:relative;padding:30px 15px;font-size:13px;color:#ffffffc7;letter-spacing:1px;transition:color .2s}.nav-link::after{content:'';position:absolute;bottom:14px;left:50%;width:0;height:2px;border-radius:8px;background:#eac88c;transform:translateX(-50%);transition:width .25s}.nav-link:hover,.nav-link.active{color:#ffe5b0}.nav-link:hover::after,.nav-link.active::after{width:20px}.header-actions{display:flex;gap:15px;align-items:center}.header-service{font-size:13px;transition:color .2s}.header-service:hover{color:#ecc68b}.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;position:relative;overflow:hidden;padding:13px 22px;border-radius:999px;border:1px solid transparent;font-size:13px;font-weight:700;white-space:nowrap;transition:transform .25s,box-shadow .25s,background .25s,color .25s}.btn:before{content:'';position:absolute;width:24%;height:300%;top:-100%;left:-44%;background:linear-gradient(90deg,transparent,#ffffff62,transparent);transform:rotate(32deg);transition:left .65s}.btn:hover:before{left:130%}.btn:hover{transform:translateY(-3px)}.btn:active{transform:translateY(0) scale(.97)}.btn-red{background:linear-gradient(135deg,#c44c37,#a82d26);color:#fff;border-color:#e16c51;box-shadow:0 6px 24px #a4242450,inset 0 1px #ffffff33}.btn-red:hover{box-shadow:0 10px 35px #bf392866}.menu-toggle{display:none;background:transparent;border:0;padding:8px;flex-direction:column;gap:5px}.menu-toggle span{width:24px;height:2px;background:#fff;border-radius:5px;transition:transform .2s,opacity .2s}.menu-toggle.open span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:last-child{transform:translateY(-7px) rotate(-45deg)}.mobile-nav{display:none}
/* Hero */
.hero{height:min(850px,100svh);min-height:750px;position:relative;display:flex;align-items:center;overflow:hidden;color:#fff;background:#312721}.hero-image,.hero-vignette{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:center 38%;animation:hero-zoom 16s ease-out both}.hero-vignette{background:linear-gradient(90deg,#150d0ce8 0%,#1b1010bc 34%,#25140c70 66%,#0c090d52 100%),linear-gradient(0deg,#160e0de8,transparent 30%,transparent 72%,#140e0d84)}.hero:after{content:'';position:absolute;inset:0;border:16px solid #d4a6630d;pointer-events:none}.hero-cloud{position:absolute;right:8%;top:15%;width:530px;height:180px;border-radius:50%;filter:blur(80px);background:#c28c4d19;animation:cloud-shift 14s ease-in-out infinite alternate;pointer-events:none}.hero-inner{z-index:2;position:relative;padding-top:65px}.eyebrow{display:flex;align-items:center;gap:15px;color:#ebcca0;font-size:14px;letter-spacing:7px;margin-bottom:34px}.eyebrow i,.hero-caption i{display:inline-block;width:25px;height:1px;background:#dec28d}.hero-title{width:max-content;position:relative}.hero-title-small{display:block;font:500 33px 'Noto Serif SC',serif;letter-spacing:15px;color:#f5e5c7;margin-bottom:4px;text-shadow:0 3px 15px #0005}.hero-title h1{font:900 clamp(72px,8.6vw,124px)/1.23 'Noto Serif SC',serif;letter-spacing:8px;margin:0;text-shadow:0 5px 25px #0009;color:#fff6e6}.hero-title h1 span{color:#e8b76b}.hero-seal{position:absolute;right:-70px;top:54px;padding:11px 7px;background:#a73229cf;border:1px solid #e29b73;box-shadow:0 0 0 3px #751c1c75;transform:rotate(8deg);font:500 13px/1.35 'Noto Serif SC',serif;color:#ffebca}.hero-poem{margin:22px 0 34px;font:400 19px/2 'Noto Serif SC',serif;letter-spacing:4px;color:#f0dfc6}.hero-buttons{display:flex;align-items:stretch;gap:17px;flex-wrap:wrap}.btn-large{min-height:58px;padding:14px 30px;font-size:15px}.btn-large small{display:block;font-size:8px;font-weight:500;letter-spacing:1.5px;margin-top:2px;text-align:left}.btn-gold{background:linear-gradient(140deg,#f7d99b,#d19e56);border-color:#ffdf9a;color:#4b291b;box-shadow:0 10px 30px #29170c66,inset 0 1px #ffffffaa}.btn-gold:hover{background:linear-gradient(140deg,#ffe3ab,#e6b56e);box-shadow:0 16px 42px #24100591}.btn-ghost{background:#ffffff13;border-color:#fff7e66e;color:#fff;backdrop-filter:blur(6px)}.btn-ghost:hover,.btn-outline-light:hover{background:#fff;color:#45271e}.hero-caption{display:flex;align-items:center;gap:13px;font-size:11px;letter-spacing:5px;color:#dfc397;margin-top:50px}.hero-caption i{width:29px;background:#d3ad79}.hero-side-note{position:absolute;right:3.5%;top:38%;z-index:2;writing-mode:vertical-rl;letter-spacing:9px;font:500 13px 'Noto Serif SC',serif;color:#e7d6bbab;display:flex;align-items:center;gap:20px}.hero-side-note span{color:#d9ab64}.scroll-cue{position:absolute;bottom:50px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;font-size:10px;letter-spacing:3px;color:#eadac4;z-index:3;animation:scroll-bob 2s infinite}.scroll-cue span{font-size:19px}.hero-edge{position:absolute;bottom:0;left:0;right:0;height:28px;opacity:.75;background:repeating-linear-gradient(90deg,#c0a16e 0 2px,transparent 2px 15px);mask-image:linear-gradient(to top,#000,transparent)}@keyframes hero-zoom{from{transform:scale(1.09)}to{transform:scale(1.035)}}@keyframes cloud-shift{to{transform:translateX(60px)}}@keyframes scroll-bob{50%{transform:translate(-50%,7px)}}
/* Cream rice-paper content and ink-stamp accents */
.paper-section{background:#f4eee3;position:relative}.paper-section:before{content:'';pointer-events:none;position:absolute;inset:0;opacity:.25;background-image:radial-gradient(#8c704f .65px,transparent .7px);background-size:9px 9px;mask-image:linear-gradient(90deg,#0005,transparent 70%)}.heritage{padding:115px 0 125px}.heritage-layout{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center;position:relative}.kicker{display:flex;align-items:center;gap:12px;color:#a33629;font:600 13px 'Noto Serif SC',serif;letter-spacing:4px;margin-bottom:24px}.kicker b{display:grid;place-items:center;width:31px;height:31px;border:1px solid #b93f30;border-radius:50%;font-size:14px;letter-spacing:0}.kicker i{display:block;width:44px;height:1px;background:#bb8875}.heritage h2,.section-heading h2,.guide-section h2{font:700 clamp(32px,3.3vw,49px)/1.45 'Noto Serif SC',serif;letter-spacing:2px;margin:0;color:#29211b}.heritage h2 em,.section-heading h2 em,.guide-section h2 em{font-style:normal;color:#a83e30}.section-lead{font-size:14px;line-height:2.25;color:#75695d;letter-spacing:.8px;margin:23px 0 33px}.heritage-rule{height:1px;background:linear-gradient(90deg,#b98d68,transparent);margin-bottom:14px}.feature{display:flex;align-items:center;gap:17px;padding:17px 0;border-bottom:1px solid #d9cbbb95}.feature-icon{width:46px;height:46px;flex-shrink:0;display:grid;place-items:center;border-radius:16px 5px 16px 5px;background:#e9dfd0;border:1px solid #dec3a0;color:#a43a2d;font-size:24px;transition:transform .25s,background .25s}.feature:hover .feature-icon{transform:rotate(-7deg) scale(1.05);background:#f5dfbd}.feature div{display:flex;flex-direction:column;gap:7px;flex:1}.feature strong{font:600 16px 'Noto Serif SC',serif;letter-spacing:1px;color:#342b22}.feature small{font-size:12px;color:#918173}.feature-no{font:500 13px Georgia,serif;color:#c3b29d}.text-link{display:inline-flex;gap:13px;align-items:center;padding:13px 0;margin-top:18px;border-bottom:1px solid #ae594a;font-weight:700;letter-spacing:2px;color:#a0392d;transition:gap .2s}.text-link:hover{gap:22px}.heritage-visual{position:relative;padding:17px 22px 23px 0}.heritage-frame{position:relative;height:510px;padding:7px;border:7px solid #e6d6bc;background:#c7a879;box-shadow:15px 21px 0 #e0d5c3,0 20px 40px #42301c22;overflow:hidden}.heritage-frame img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.heritage-frame:hover img{transform:scale(1.06)}.heritage-frame:before,.heritage-frame:after{content:'';position:absolute;width:42px;height:42px;border-color:#ae4a35;z-index:2}.heritage-frame:before{left:-1px;top:-1px;border-left:3px solid;border-top:3px solid}.heritage-frame:after{right:-1px;bottom:-1px;border-right:3px solid;border-bottom:3px solid}.floating-chop{position:absolute;z-index:3;top:52px;left:-37px;padding:15px 10px;background:#a6382c;border:1px solid #dc9d75;color:#f6e8d2;box-shadow:0 3px 0 #802a22,0 12px 22px #43221d44;font:700 23px/1.5 'Noto Serif SC',serif;letter-spacing:3px}.vertical-annotation{position:absolute;right:-18px;top:55px;writing-mode:vertical-rl;font:500 12px 'Noto Serif SC',serif;letter-spacing:7px;color:#9b7d63}.frame-footnote{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:31px;color:#927862;font-size:10px;letter-spacing:1.5px}.frame-footnote i{height:1px;background:#c8b69b;flex:1}
/* News */
.news-section{position:relative;padding:110px 0 120px;background:#e9e1d3}.news-section:before{content:'';position:absolute;top:0;left:0;right:0;height:9px;background:repeating-linear-gradient(90deg,#a63c30 0 17px,#d8b481 17px 34px,#f2e7d7 34px 51px)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:42px}.section-heading h2{font-size:42px}.section-heading p{font-size:14px;color:#817467;margin:12px 0 0}.vertical-stamp{flex-shrink:0;writing-mode:vertical-rl;font:500 17px 'Noto Serif SC',serif;letter-spacing:12px;color:#a43d2b;border:1px solid #b77c5c;padding:12px 10px;background:#e5d2b5}.news-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px}.news-feature{height:420px;position:relative;text-align:left;overflow:hidden;padding:0;border:0;background:#574638;box-shadow:0 18px 40px #4b392020}.news-feature img,.gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.news-feature:hover img,.gallery-card:hover img{transform:scale(1.07)}.img-shade{position:absolute;inset:0;background:linear-gradient(0deg,#140c09e8 0%,#140c0950 46%,#120a0a15 80%)}.news-badge{position:absolute;top:25px;left:25px;padding:9px 16px;border-radius:0 14px 0 14px;background:#a3392e;color:#fff1de;font-size:11px;letter-spacing:2px}.news-feature-copy{position:absolute;bottom:31px;left:32px;right:32px;display:flex;flex-direction:column;gap:16px;color:#fff}.news-feature-copy strong{font:600 27px 'Noto Serif SC',serif;letter-spacing:2px}.news-feature-copy small{font-size:10px;letter-spacing:3px;color:#f3c589}.news-list{display:flex;flex-direction:column;padding:24px 29px;background:#f8f2e8;border:1px solid #d6c8b4;box-shadow:0 14px 35px #4b39200d}.news-list-heading{display:flex;align-items:center;justify-content:space-between;color:#a13a2e;padding-bottom:16px;border-bottom:2px solid #ab4535;font:700 14px 'Noto Serif SC',serif;letter-spacing:3px}.news-list-heading small{font:10px sans-serif;color:#ad9a87;letter-spacing:1px}.news-item{display:flex;align-items:center;text-align:left;gap:15px;background:none;border:0;padding:24px 0;border-bottom:1px solid #e0d4c5;transition:padding .2s}.news-item:hover{padding-left:8px}.news-num{font:italic 24px Georgia,serif;color:#cbb79c}.news-item-copy{flex:1;min-width:0}.news-item-copy small{display:block;color:#a13f32;letter-spacing:1px;font-size:11px;margin-bottom:8px}.news-item-copy strong{font:600 15px 'Noto Serif SC',serif;color:#362c25}.news-arrow{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;border:1px solid #d9c5a9;color:#a53b2d;transition:background .2s,color .2s}.news-item:hover .news-arrow{background:#a53b2d;color:#fff}.news-list-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:22px;color:#ab9a84;font-size:11px}.news-list-foot a{font-size:12px;font-weight:700;color:#a3392c}
/* Filterable gallery */
.gallery-section{padding:105px 0 90px}.gallery-section .vertical-stamp{background:#e8d5b6}.category-bar{display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding-bottom:24px;margin-bottom:21px;border-bottom:1px solid #d5c7b2}.category-pill{border:1px solid #cbbba2;border-radius:99px;background:#f5ecdf;padding:10px 18px;color:#665748;font-size:12px;letter-spacing:1px;transition:background .2s,transform .2s,color .2s}.category-pill:hover{transform:translateY(-2px);border-color:#a63b2e}.category-pill.selected{background:#a53b30;color:#fff3e3;border-color:#a53b30;box-shadow:0 4px 14px #a53b302f}.category-pill span{font-size:10px;margin-left:6px}.gallery-count{margin-left:auto;font-size:11px;color:#a18d73;letter-spacing:1px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gallery-card{height:280px;position:relative;overflow:hidden;text-align:left;border:6px solid #fff9ef;background:#96745c;padding:0;box-shadow:0 8px 20px #3d2f2017;transition:transform .25s,box-shadow .25s}.gallery-card:hover{transform:translateY(-6px);box-shadow:0 20px 37px #39291f38}.card-tag{position:absolute;top:16px;left:16px;padding:6px 10px;background:#a4382fda;color:#fff5e8;border-radius:0 9px 0 9px;font-size:10px;letter-spacing:1px}.card-copy{position:absolute;bottom:18px;left:19px;right:45px;display:flex;flex-direction:column;gap:7px;color:white}.card-copy strong{font:600 22px 'Noto Serif SC',serif;letter-spacing:2px}.card-copy small{font-size:11px;line-height:1.5;opacity:.85}.card-arrow{position:absolute;bottom:19px;right:15px;width:30px;height:30px;border:1px solid #f6e6d9a1;border-radius:50%;color:#fff;display:grid;place-items:center;transition:background .2s}.gallery-card:hover .card-arrow{background:#a53b30;border-color:#a53b30}.gallery-end{text-align:center;color:#a98c71;letter-spacing:5px;font:12px 'Noto Serif SC',serif;margin:38px 0 0}
/* Dark FAQ */
.guide-section{position:relative;background:#2c2926;color:#f6eee2;padding:110px 0 120px}.guide-section:before{content:'';inset:0;position:absolute;background:radial-gradient(circle at 5% 25%,#9a47302c,transparent 35%),repeating-linear-gradient(45deg,#ffffff05 0 1px,transparent 1px 18px);pointer-events:none}.guide-layout{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.kicker-light{color:#ecc892}.kicker-light b{border-color:#dfb178}.guide-section h2{color:#fff4e5}.guide-section h2 em{color:#e5b977}.guide-intro>p{color:#c6bcb0;font-size:14px;margin-top:24px;letter-spacing:2px}.guide-art{display:flex;align-items:center;gap:20px;margin-top:62px;border-top:1px solid #87725b6b;padding-top:25px;color:#b88d58;font-size:65px}.guide-art span{font:500 17px 'Noto Serif SC',serif;letter-spacing:7px}.faq-list{border-top:1px solid #a28a6980}.faq-item{border-bottom:1px solid #9c89755c}.faq-question{display:flex;gap:18px;align-items:center;text-align:left;border:0;background:none;width:100%;min-height:78px;color:#f8eada;padding:17px 0}.faq-index{font:italic 16px Georgia,serif;color:#c69e67}.faq-question strong{flex:1;font:500 16px 'Noto Serif SC',serif;letter-spacing:1px}.faq-chevron{width:32px;height:32px;display:grid;place-items:center;border:1px solid #837262;border-radius:50%;color:#e4c390;font-size:22px;transition:transform .3s,background .3s}.faq-question[aria-expanded="true"] .faq-chevron{transform:rotate(180deg);background:#a53b30;color:#fff;border-color:#a53b30}.faq-answer{padding:0 47px 23px 34px;font-size:13px;line-height:2.1;color:#c1b6a9;animation:fade-in .2s}.guide-help{display:flex;align-items:center;gap:15px;padding:20px 23px;margin-top:23px;border:1px solid #806450;background:#4b3b32;color:#e7c597}.help-icon{font-size:26px}.help-copy{display:flex;flex-direction:column;gap:7px;flex:1}.help-copy strong{color:#fff1df;font-size:13px}.help-copy small{font-size:11px;color:#c8aa8d}.guide-help a{display:flex;align-items:center;gap:7px;padding:11px 17px;border-radius:99px;background:#ac4031;color:#fff4e6;font-size:12px;font-weight:700;white-space:nowrap;transition:transform .2s}.guide-help a:hover{transform:translateX(3px);background:#c4543d}
/* Bottom call-to-action and footer */
.last-cta{min-height:370px;position:relative;display:grid;place-items:center;overflow:hidden;background:#47352c}.last-cta:before{content:'';position:absolute;inset:0;background-image:var(--last-image);background-position:center 59%;background-size:cover;filter:grayscale(.2)}.last-cta:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1c110ce8,#25150dd9,#1c120de8)}.last-cta-inner{position:relative;z-index:1;text-align:center;color:#f9ebd6;padding:58px 0}.cta-ornament{font-size:12px;color:#d9b57e;letter-spacing:5px}.last-cta h2{font:700 clamp(30px,3.4vw,47px) 'Noto Serif SC',serif;letter-spacing:4px;margin:19px 0 13px}.last-cta h2 em{font-style:normal;color:#e2b777}.last-cta p{font-size:13px;letter-spacing:3px;color:#d6c2aa;margin-bottom:30px}.last-cta-buttons{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.btn-outline-light{border-color:#d9b887;color:#f9e2bc;background:#ffffff10}.footer{background:#211c1a;color:#cbbbab}.footer-top{padding:47px 0 37px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #7060526b}.footer-brand{display:flex;align-items:center;gap:13px}.footer-chop{width:46px;height:46px;display:grid;place-items:center;border:1px solid #c78a5a;border-radius:12px 3px;background:#95382b;color:#f1d399;font:700 28px 'Noto Serif SC',serif}.footer-brand>div{display:flex;flex-direction:column;gap:4px}.footer-brand strong{font:700 20px 'Noto Serif SC',serif;color:#f2e0c7;letter-spacing:3px}.footer-brand small{font-size:10px;letter-spacing:2px;color:#a48f7c}.footer-links{display:flex;gap:21px;flex-wrap:wrap}.footer-links a,.footer-contact button{color:#bdad9a;font-size:12px;padding:4px}.footer-links a:hover,.footer-contact a:hover,.footer-contact button:hover{color:#f2c07d}.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-contact a{display:flex;align-items:center;gap:9px;font-size:12px}.footer-contact button{background:none;border:0;border-bottom:1px dashed #8e7966;padding:0}.footer-bottom{display:flex;justify-content:space-between;gap:18px;padding:22px 0 27px;font-size:10px;letter-spacing:1px;color:#8d7d70}.float-tools{position:fixed;z-index:40;right:26px;bottom:33px;display:flex;flex-direction:column;align-items:center;gap:10px}.float-tools>a,.float-tools button{box-shadow:0 8px 24px #160d0b4d;border:1px solid #cba16d;transition:transform .25s}.float-tools>a:hover,.float-tools button:hover{transform:translateY(-3px)}.float-service{width:62px;height:62px;border-radius:50%;background:linear-gradient(145deg,#c14b36,#933126);color:#fff1e2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:23px}.float-service span{font-size:9px}.float-download,.float-up{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#f4e7d2;color:#8a3029;font-size:21px}.float-up{background:#382d28;color:#e5c395}
/* Accessible dialogs */
.modal-open{overflow:hidden}.modal-overlay{position:fixed;inset:0;z-index:110;display:grid;place-items:center;background:#160f0deb;padding:52px 80px;backdrop-filter:blur(7px);animation:fade-in .2s}.gallery-modal{position:relative;width:min(950px,100%);padding:12px;border:1px solid #c09565;background:#241d19;box-shadow:0 30px 100px #0009}.gallery-modal>img{width:100%;height:min(64vh,650px);object-fit:contain;background:#31251f}.modal-close{position:absolute;top:-21px;right:-21px;z-index:3;width:43px;height:43px;border:1px solid #e2b784;border-radius:50%;background:#a83f31;color:#fff;font-size:27px;display:grid;place-items:center}.modal-caption{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 9px 3px;color:#c8a57f;font:12px Georgia,serif}.modal-caption>span:first-child{display:flex;align-items:center;gap:17px}.modal-caption strong{font:600 17px 'Noto Serif SC',serif;color:#f3e1ca}.modal-prev,.modal-next{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:1px solid #cda775;border-radius:50%;display:grid;place-items:center;background:#a33c30e9;color:#fff;font-size:23px;transition:background .2s}.modal-prev:hover,.modal-next:hover{background:#ca633f}.modal-prev{left:-63px}.modal-next{right:-63px}.article-modal{position:relative;width:min(590px,100%);padding:52px;border:6px double #c9a97c;background:#f8f0e3;color:#32261e;box-shadow:0 30px 100px #0007}.article-kicker{font-size:12px;color:#9b3d31;letter-spacing:3px}.article-modal h3{font:700 28px/1.5 'Noto Serif SC',serif;letter-spacing:2px;margin:22px 0}.article-rule{text-align:center;color:#b78b5d;font-size:11px;letter-spacing:4px;padding:16px 0;border-block:1px solid #dbc9ad}.article-modal p{font-size:14px;line-height:2.3;color:#69584a;margin:26px 0 38px}.article-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}.article-actions button{border:0;background:none;color:#9c4936;font-size:12px}.article-actions a{display:flex;gap:7px;align-items:center;border-radius:99px;background:#a23d30;padding:12px 18px;color:#fff;font-size:12px}.toast{position:fixed;z-index:130;bottom:40px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;padding:14px 21px;border-radius:99px;background:#31281f;color:#f4e6d0;box-shadow:0 15px 40px #0004;font-size:12px}@keyframes fade-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
/* Remote-image failure fallback: retains the site's visual hierarchy without blank boxes. */
.image-unavailable{position:relative;background:linear-gradient(135deg,#98725b,#362c2a)!important}.image-unavailable:after{content:attr(data-fallback-label);position:absolute;inset:0;display:grid;place-items:center;color:#e9cb99;font:600 17px 'Noto Serif SC',serif;letter-spacing:3px;z-index:1}.news-feature.image-unavailable:after,.gallery-card.image-unavailable:after{top:0;bottom:40%;color:#edd09a}
@media(max-width:1150px){.header{padding:0 28px;gap:10px}.desktop-nav{gap:0}.nav-link{padding-inline:10px}.header-actions{gap:10px}.header-service{display:none}.heritage-layout{gap:55px}.guide-layout{gap:50px}}
@media(max-width:900px){.container{width:min(calc(100% - 46px),720px)}.header{min-height:70px;padding:0 22px}.header.scrolled{min-height:70px}.desktop-nav,.header-service,.header-download{display:none}.menu-toggle{display:flex}.mobile-nav{position:fixed;z-index:52;top:70px;left:0;right:0;display:flex;flex-direction:column;padding:12px 24px 22px;background:#29211ff7;box-shadow:0 15px 25px #0005;backdrop-filter:blur(15px);animation:fade-in .2s}.mobile-nav a{display:flex;justify-content:space-between;align-items:center;padding:14px 7px;border-bottom:1px solid #ffffff20;font-size:14px;text-align:left;color:#f3dfc4}.mobile-nav a:nth-last-child(-n+2){color:#eac087}.hero{height:770px;min-height:670px}.hero-inner{padding-top:80px}.hero-title h1{font-size:90px}.hero-side-note{right:18px}.heritage,.news-section,.gallery-section,.guide-section{padding-block:75px}.heritage-layout,.news-layout,.guide-layout{grid-template-columns:1fr;gap:45px}.heritage-visual{max-width:600px;margin:auto;width:90%}.heritage-frame{height:480px}.news-feature{height:340px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-art{margin-top:30px}.footer-top{flex-wrap:wrap}.footer-contact{flex-basis:100%;flex-direction:row;flex-wrap:wrap;align-items:center;gap:22px}.footer-bottom{flex-direction:column;gap:8px}}
@media(max-width:560px){.container{width:calc(100% - 38px)}.brand-mark{width:40px;height:40px;font-size:24px}.brand-words strong{font-size:20px}.brand-words small{font-size:7px;letter-spacing:2px}.hero{min-height:710px;height:100svh;max-height:860px}.hero-image{object-position:61% center}.hero-vignette{background:linear-gradient(90deg,#160d0de6,#180e0ea6 70%,#1b0f0f70),linear-gradient(0deg,#180d0de0,transparent 55%)}.eyebrow{font-size:11px;letter-spacing:3px;gap:8px;margin-bottom:23px}.eyebrow i{width:16px}.hero-title-small{font-size:23px;letter-spacing:9px}.hero-title h1{font-size:clamp(57px,14.5vw,82px);letter-spacing:0}.hero-seal{right:-42px;top:46px;padding:6px 4px;font-size:9px}.hero-poem{font-size:14px;letter-spacing:3px;margin:24px 0}.hero-buttons{align-items:stretch;flex-direction:column;width:fit-content;gap:12px}.btn-large{min-height:51px;padding:12px 20px;font-size:13px}.hero-caption{font-size:9px;letter-spacing:2px;margin-top:34px}.hero-side-note{display:none}.scroll-cue{bottom:30px}.heritage,.news-section,.gallery-section,.guide-section{padding-block:65px}.kicker{margin-bottom:15px}.heritage h2,.section-heading h2,.guide-section h2{font-size:31px}.section-lead{font-size:12px}.feature{gap:11px}.feature-icon{width:40px;height:40px;flex-shrink:0}.feature strong{font-size:14px}.feature small{font-size:11px}.heritage-visual{width:100%;padding-right:18px}.heritage-frame{height:340px}.floating-chop{font-size:16px;left:-10px;top:35px}.vertical-annotation{right:-10px;font-size:10px}.frame-footnote{font-size:8px;gap:7px}.section-heading{align-items:start;gap:12px;margin-bottom:30px}.vertical-stamp{font-size:12px;letter-spacing:5px;padding:9px 6px}.news-feature{height:290px}.news-feature-copy strong{font-size:22px}.news-list{padding:19px}.news-item{padding:20px 0;gap:10px}.news-item-copy strong{font-size:13px}.news-list-foot{font-size:10px}.category-bar{gap:7px}.category-pill{font-size:11px;padding:9px 12px}.gallery-count{width:100%;text-align:right}.gallery-grid{gap:12px}.gallery-card{height:225px;border-width:4px}.card-copy{left:10px;bottom:12px;right:8px}.card-copy strong{font-size:17px}.card-copy small{display:none}.card-tag{top:10px;left:10px;font-size:9px;padding:5px}.card-arrow{width:23px;height:23px;right:8px;bottom:10px}.guide-layout{gap:36px}.guide-intro h2{font-size:34px}.guide-art{display:none}.faq-question{min-height:72px;gap:10px}.faq-question strong{font-size:13px}.faq-answer{padding-left:27px;padding-right:8px;font-size:12px}.guide-help{padding:14px 11px;gap:9px}.guide-help a{padding:10px 12px;font-size:10px}.help-copy small{font-size:9px}.last-cta h2{font-size:30px}.last-cta p{font-size:11px;letter-spacing:1px}.last-cta-buttons{flex-direction:column;align-items:center}.footer-top{align-items:start;flex-direction:column;gap:27px;padding:40px 0 30px}.footer-links{gap:13px}.footer-contact{flex-direction:column;gap:12px;align-items:start}.footer-bottom{font-size:9px}.float-tools{right:12px;bottom:17px;gap:7px}.float-service{width:53px;height:53px}.float-service span{font-size:8px}.float-download,.float-up{width:38px;height:38px}.modal-overlay{padding:50px 27px}.gallery-modal{padding:6px}.gallery-modal>img{height:52vh}.modal-prev,.modal-next{top:auto;bottom:-65px;transform:none;width:41px;height:41px}.modal-prev{left:calc(50% - 50px)}.modal-next{right:calc(50% - 50px)}.modal-caption strong{font-size:14px}.article-modal{padding:34px 21px}.article-modal h3{font-size:22px}.article-modal p{font-size:13px}.modal-close{right:-16px;top:-19px;width:39px;height:39px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
