.home{background:#d8e6f5 url('/home-bg.webp?v=47ccc5cd1183701b') center top/cover fixed no-repeat;color:#35558a;min-height:100vh}.home header{position:relative;z-index:12;height:76px;max-width:1380px;width:86%;margin:auto;padding:0 30px;gap:25px;border:2px solid #fff;border-top:0;border-radius:0 0 38px 38px;background:#f7f9fff0;box-shadow:0 10px 32px #24477318}.brand{display:flex;gap:13px;align-items:center;font-size:35px!important;white-space:nowrap}.brand span{font-family:serif;font-size:23px;letter-spacing:1px}.brand small{display:block;font-family:cursive;font-size:11px;color:#91a7cd;font-weight:normal;letter-spacing:1px}.home nav{gap:22px;flex:1;justify-content:center;white-space:nowrap}.home nav button{border:0;background:transparent;padding:9px;font-family:serif;font-size:17px}.home nav a{font-family:serif;font-size:17px}.home nav .active{background:#4767a2;color:white;border-radius:10px;padding:10px 25px;box-shadow:inset 0 0 0 1px #7390c4}.search-wrap{position:relative;width:240px}.home #site-search{margin:0;border:0;background:#dfe6f3;border-radius:25px;padding:10px 18px;font-size:12px}.home #account-open{padding:0;flex-shrink:0}.home #account-label{font-size:12px;max-width:50px}.home main{max-width:1500px;margin:auto;padding:0 20px}.hero{position:relative;height:610px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center}.hero-copy{padding:20px 0 20px 28px;text-shadow:0 2px 18px white,0 0 40px white}.hero-kicker{font-size:10px;letter-spacing:3px;color:#7390ba}.hero h1{font-family:'STSong','SimSun',serif;font-size:clamp(44px,4.7vw,78px);font-weight:400;line-height:1.2;letter-spacing:5px;margin:18px 0 36px}.hero h1 strong{font-weight:600}.quote{font-family:serif;font-size:18px;letter-spacing:2px;white-space:nowrap}.signature{text-align:right;font-family:serif;font-size:18px;margin:16px 20px 28px}.sail{display:inline-block;border:1px solid #9eb2d3;border-radius:30px;background:#ffffffb5;padding:12px 22px;font-size:13px;box-shadow:0 4px 18px #45639516}.portrait-area{position:relative;align-self:center;justify-self:center;width:100%;padding:0 20px}.home .portrait{width:100%;max-width:410px;height:510px;margin:15px auto 0;filter:drop-shadow(0 15px 15px #34538120)}.home .portrait-window{inset:22px;border-radius:50%;background:linear-gradient(135deg,#ebf2fcbd,#cbdcf3ca);border:1px solid #fff}.home .portrait-frame{inset:0;border:14px solid #fcfdff;border-radius:50%;background:transparent;box-shadow:0 0 0 2px #91a8cb,0 0 0 8px #eef3fc,inset 0 0 0 3px #c5b28a,inset 0 0 0 6px #fff;outline:7px dashed #b8c9e2;outline-offset:2px}.home #portrait-empty{color:#7895c0;font-family:serif;font-size:45px;line-height:1.5}.home #portrait-empty small{font-size:16px;letter-spacing:3px}.bow{position:absolute;left:50%;width:140px;height:60px;transform:translateX(-50%);z-index:3;filter:drop-shadow(0 3px 2px #142e5550);pointer-events:none}.bow:before,.bow:after{content:'';position:absolute;top:3px;width:72px;height:56px;background:linear-gradient(145deg,#7b98c2,#263f68 60%,#59779e);border:2px solid #abbedb}.bow:before{left:-2px;border-radius:14px 55% 35% 10px;transform:rotate(13deg)}.bow:after{right:-2px;border-radius:55% 14px 10px 35%;transform:rotate(-13deg)}.bow span{position:absolute;z-index:2;left:50%;transform:translateX(-50%);top:7px;background:#edf3fc;color:#b49a64;border:2px solid #c9b581;border-radius:50%;font-size:36px;width:51px;height:51px;display:grid;place-items:center}.bow.top{top:-7px}.bow.bottom{bottom:-3px}.flower{position:absolute;bottom:35px;z-index:3;font-size:65px;color:white;text-shadow:0 2px 3px #7691b1;pointer-events:none}.flower.left{left:15px}.flower.right{right:15px}.right-motto{position:absolute;right:3%;top:140px;font-family:serif;font-size:23px;letter-spacing:4px;transform:rotate(-9deg);text-shadow:0 0 20px white}.pennant{position:absolute;top:0;right:-5px;background:#395780cf;color:#e6d4ad;border:2px solid #c6b48e;border-top:0;width:84px;padding:5px 10px 25px;text-align:center;font-size:38px;clip-path:polygon(0 0,100% 0,100% 100%,50% 90%,0 100%)}.pennant small{display:block;font-family:cursive;font-size:12px;line-height:1.6}.home #poster-edit{position:absolute;bottom:-45px;left:50%;transform:translateX(-50%);font-size:11px;background:#ffffffe8;z-index:5;white-space:nowrap;padding:7px 14px}.bottom-motto{text-align:center;font-family:serif;font-size:11px;letter-spacing:5px;margin:8px 0 18px}.home footer{display:flex;justify-content:space-between;align-items:center;background:#2b4675ed;color:#d3dff3;border-top:3px solid #f5f8ff;padding:22px 5%;font-family:serif;letter-spacing:3px}.home #global-status:empty{display:none}.home #global-status{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);background:white;padding:12px 24px;border-radius:15px;z-index:30;box-shadow:0 5px 30px #203f6133;max-width:90vw}.profile-actions{margin-top:20px;display:flex;gap:10px}.tool-card{display:grid;gap:12px;padding:24px;background:#eaf0fa;border:1px solid #d2def0;border-radius:15px}.tool-card span{font-size:32px}.tool-card small{font-size:12px;color:#7a90b2}.tool-card b{font-size:13px}.home dialog{box-shadow:0 20px 100px #19325166;border:3px solid #fff;background:#f7faff}.home dialog::backdrop{backdrop-filter:blur(6px);background:#25467455}#search-results{position:absolute;top:46px;right:0;width:320px;max-height:360px;overflow:auto;border:1px solid #d3deef;border-radius:14px;background:#fffffffa;padding:8px;box-shadow:0 15px 40px #26447233}#search-results button{display:block;width:100%;text-align:left;border:0;padding:12px;font-size:13px;background:transparent}#search-results button:hover{background:#edf3fc}#search-results p{padding:8px;font-size:12px}
@media(min-width:1600px){.hero{height:640px}.home .portrait{height:540px}.hero-copy{padding-left:60px}}@media(max-width:1100px){.home header{width:96%;padding:0 20px;gap:14px}.brand span{font-size:18px}.home nav{gap:12px}.search-wrap{width:180px}.hero{height:550px;grid-template-columns:1fr 1fr .6fr}.home .portrait{height:450px}.quote{font-size:14px;white-space:normal}.right-motto{font-size:18px;right:0;top:100px}.hero-copy{padding-left:10px}.home h1{font-size:55px}.pennant{display:none}}
@media(max-width:760px){.home{background-attachment:scroll;background-size:auto 1000px;background-position:center top}.home header{height:auto;min-height:110px;padding:13px 18px;flex-wrap:wrap;border-radius:0 0 22px 22px;gap:12px}.brand{flex:1}.brand small{font-size:9px}.home nav{order:3;flex:0 0 auto;gap:12px}.home nav a,.home nav button{font-size:14px}.home nav .active{padding:7px 13px}.search-wrap{order:4;flex:1;width:auto;min-width:130px}.home #account-open{margin-left:auto}.hero{height:700px;display:block}.hero-copy{padding:22px 0 0;text-align:center}.hero-kicker{display:none}.hero h1{font-size:37px;line-height:1.25;margin:0 0 10px}.hero h1 br{display:none}.quote{font-size:13px;margin:5px}.signature{display:none}.sail{padding:8px 17px;margin:7px 0 0;font-size:11px}.portrait-area{max-width:345px;margin:25px auto 0;padding:0 25px}.home .portrait{height:410px}.right-motto{display:none}.home #poster-edit{bottom:-30px}.home footer{font-size:11px;letter-spacing:1px;padding:20px 14px}.bottom-motto{font-size:8px;letter-spacing:2px}#search-results{width:min(320px,88vw)}.home main{padding:0 10px}}
.home{display:flex;flex-direction:column}.home main{width:100%;flex:1}.home footer{margin-top:auto}.home #home-gallery{max-width:1200px;margin-left:auto;margin-right:auto}
/* Ornate layered presentation and non-modal poster controls */
.home dialog::backdrop{backdrop-filter:none}.home #poster-dialog{position:fixed;inset:96px 14px auto auto;margin:0;width:292px;max-height:calc(100vh - 115px);overflow:auto;padding:22px;background:#f7fafffa;border:1px solid #b9c9df;border-radius:18px;box-shadow:0 8px 35px #29457125;z-index:25}.home #poster-dialog::backdrop{display:none;background:none;backdrop-filter:none}.home #poster-dialog h2{font-size:20px}.home #poster-dialog label{font-size:13px;margin:18px 0}.home #poster-dialog input[type=file]{max-width:100%;font-size:11px}.home #poster-dialog output{float:right;color:#7489aa;font-variant-numeric:tabular-nums}.home #poster-dialog .portrait-controls{max-width:none}.home #poster-dialog input[type=range]{accent-color:#536f9f;margin-top:10px}.home #poster-status{font-size:12px;line-height:1.7;color:#45658f;white-space:pre-wrap}.home.poster-editing main{width:calc(100% - 320px);margin-left:0;margin-right:320px}.home.poster-editing .hero{grid-template-columns:.9fr 1.1fr .15fr}.home.poster-editing .right-motto,.home.poster-editing .pennant{display:none}.home.poster-editing .hero h1{font-size:clamp(35px,4.2vw,65px)}.home.poster-editing .quote{white-space:normal}.home.poster-editing .portrait-area{max-width:430px}.home .portrait-frame{background:url('/ornate-frame.webp?v=f830c09037b2297f') center/100% 100% no-repeat;border:0;border-radius:0;outline:0;box-shadow:none;inset:-36px -42px;z-index:4;filter:drop-shadow(0 5px 4px #304d6b25)}.home .portrait-window{inset:38px 26px;border:0;box-shadow:none}.home .bow,.home .flower{display:none}.home .portrait{filter:drop-shadow(0 10px 12px #28405d22)}.home header{border-bottom:3px double #b9c9e3;box-shadow:0 5px 0 #ffffff7d,0 9px 25px #29477118}.home .brand small{font-style:italic;color:#9aaed0}.home .hero-copy{position:relative}.home .hero-copy:after{content:'✧　·　✦';display:block;margin-top:20px;color:#94add4;font-size:16px;letter-spacing:13px}.home .sail{border:1px solid #b7c6dd;box-shadow:inset 0 0 0 3px #fff,0 5px 20px #45639519}.home #home-gallery{position:relative;z-index:5}.home .bottom-motto{position:relative;padding:18px 0 25px;margin-bottom:0;background:linear-gradient(90deg,transparent,#ffffffe6 30%,#ffffffe6 70%,transparent);border-bottom:1px solid #bccbe3}.home .bottom-motto:after{content:'✦';position:absolute;bottom:-18px;left:calc(50% - 16px);font-size:24px;color:#f6faff;z-index:2;text-shadow:0 1px 2px #6e8abb}.home footer{position:relative;border-top:5px double #dce6f6;background:repeating-linear-gradient(45deg,#ffffff03 0px,#ffffff03 1px,transparent 1px,transparent 7px),#2c4775ed;padding-top:32px}.home footer:before{content:'';position:absolute;left:0;right:0;top:-17px;height:14px;background:radial-gradient(ellipse at 50% 0,#edf4ff 62%,transparent 65%) 0 0/28px 16px repeat-x}.home #portrait-empty{font-size:40px}.home #portrait-empty small{font-size:14px}
@media(max-width:760px){.home .portrait-frame{inset:-26px -29px}.home .portrait-window{inset:30px 20px}.home #poster-dialog{top:140px;right:6px;width:174px;padding:13px;max-height:calc(100vh - 155px)}.home #poster-dialog h2{font-size:16px}.home #poster-dialog .notice{font-size:10px}.home #poster-dialog button{font-size:11px;padding:8px}.home.poster-editing main{width:calc(100% - 182px);margin-right:182px}.home.poster-editing .hero{height:610px}.home.poster-editing .hero-copy h1{font-size:23px}.home.poster-editing .quote,.home.poster-editing .sail,.home.poster-editing .hero-copy:after{display:none}.home.poster-editing .portrait-area{padding:0 10px;margin-top:30px}.home.poster-editing .portrait{height:280px}.home.poster-editing .portrait-window{inset:22px 8px}.home.poster-editing .portrait-frame{inset:-12px -12px}.home.poster-editing #portrait-empty small{font-size:10px}.home.poster-editing #poster-edit{display:none}}
/* Reference composition: preserve the full painted table and hanging flag. */
@media(min-width:761px){
.home{display:block;min-height:max(100vh,56.28vw);background:#243f69 url('/scene-faithful.webp?v=dc4aa0b047973cc5') center top/100% auto no-repeat;position:relative;overflow-x:hidden}
.home header{width:80%;max-width:none;height:4vw;min-height:58px;margin:0 11% 0 9%;padding:0 2vw;border-radius:0 0 2vw 2vw;gap:1.6vw}
.home .brand{font-size:2.5vw!important;gap:.8vw}.home .brand span{font-size:1.35vw}.home .brand small{font-size:.65vw}.home nav{gap:2vw}.home nav a,.home nav button{font-size:1.05vw}.home nav .active{padding:.6vw 1.7vw}.home .search-wrap{width:16vw}.home main{padding:0;max-width:none;margin:0;width:100%;min-height:0}
.home .hero{height:34.7vw;display:block}.home .hero-copy{position:absolute;left:10.6%;top:6.8vw;width:24%;padding:0;text-align:left}.home .hero h1{margin:0 0 1.7vw;line-height:1}.title-art{display:block;width:100%;height:auto}.home .quote{font-size:1.25vw;letter-spacing:.1vw;white-space:nowrap;margin:.8vw 0}.home .signature{font-size:1.3vw;margin:.8vw 1vw 0}.home .hero-copy:after{display:none}
.home .portrait-area{position:absolute;left:35.6%;top:1vw;width:28.8%;padding:0;margin:0;max-width:none}.home .portrait{width:100%;height:32vw;max-width:none;margin:0}.home .portrait-frame{inset:-1.7vw -1vw}.home .portrait-window{inset:3vw 2.7vw 4vw}.home #poster-edit{bottom:1vw;z-index:9}
.home #home-gallery{width:76%;max-width:none;margin:0 auto;height:11.9vw}.home .bottom-motto{padding:0;margin:.15vw 0 0;background:none;border:0;font-size:.62vw;letter-spacing:.32vw;height:2.1vw}.home .bottom-motto:after{display:none}.home footer{position:absolute;top:52.8vw;left:0;width:100%;padding:.4vw 4.5%;margin:0;background:none;border:0;font-size:1.1vw}.home footer:before{display:none}
.home.poster-editing main{width:calc(100% - 320px);margin:0 320px 0 0}.home.poster-editing .hero-copy{left:6%;width:28%}.home.poster-editing .portrait-area{left:41%;width:40%;max-width:none}.home.poster-editing .hero{height:36vw}.home.poster-editing #home-gallery{width:90%}.home.poster-editing .quote{font-size:1vw;white-space:normal}
}
@media(max-width:760px){.home{background-image:url('/scene-faithful.webp?v=dc4aa0b047973cc5');background-size:auto 1100px;background-position:center top;background-attachment:scroll}.home .hero{height:650px}.home .hero-copy{padding-top:20px}.home .hero h1{margin:0 auto 10px;width:210px}.title-art{display:block;width:100%;height:auto}.home .hero-copy:after{display:none}.home .portrait-area{margin-top:22px}.home #home-gallery{width:94%;margin:0 auto}.home .bottom-motto{background:none;border:0}.home footer{background:#294675a8}.home.poster-editing .hero h1{width:115px}.home.poster-editing .hero{height:500px}}
.flag-lettering{position:absolute;z-index:2;left:89.2%;top:1.8vw;width:5.4%;text-align:center;color:#e4d5b5;pointer-events:none}.flag-lettering svg{width:60%;fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}.flag-lettering small{display:block;font:italic .83vw/1.9 Georgia,serif;margin-top:.4vw}@media(max-width:760px){.flag-lettering{display:none}}
@media(max-width:760px){.home{overflow-x:hidden}.home #home-gallery{overflow:hidden;padding-top:8px}.home .bottom-motto:after{display:none}}
/* Keep the ornament centered regardless of the two captions' widths. */
.home footer{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px}.home footer>span:first-child{justify-self:start}.home footer>span:nth-child(2){justify-self:center;letter-spacing:0;line-height:1}.home footer>span:last-child{justify-self:end;text-align:right}
/* Larger search and account hit areas. */
.home .search-wrap{width:clamp(240px,20vw,500px);flex-shrink:1;min-width:180px}.home #site-search{font-size:clamp(16px,1vw,20px);padding:13px 20px;min-height:48px}.home #account-open{padding:8px 10px;gap:10px;min-height:48px}.home #account-open svg{width:32px;height:32px}.home #account-label{font-size:clamp(16px,1vw,20px);max-width:140px;overflow-wrap:anywhere}.home header{gap:clamp(12px,1.2vw,25px)}@media(max-width:900px){.home #account-label{max-width:90px;font-size:16px}.home .search-wrap{min-width:0}.home #site-search{font-size:16px}}
