@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1e219c03c996efbd-s.00ewlnc1znsu7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0bnyh_2yo1emg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0glcd8n2pdab0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_fd956a0c-module__JYlfxG__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_fd956a0c-module__JYlfxG__variable{--font-display:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a342834df7752944-s.1ypl14jhz9yyw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d3fe2f289711ac3f-s.2g9li78_0_it5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/58c4895d0a0ef7cc-s.00u3xrku2lqty.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/bfc7db5c00d21bc5-s.2vepgg3wcdr2q.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6ab0db14f70d8ed6-s.2ttjmmx-9gnz1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a343f882a40d2cc9-s.p.3259ncl47-hqj.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.manrope_7cdbfba0-module__nSLwvW__className{font-family:Manrope,Manrope Fallback;font-style:normal}.manrope_7cdbfba0-module__nSLwvW__variable{--font-interface:"Manrope", "Manrope Fallback"}
:root{--wood:#241a17;--navy:#102033;--ink:#2b1a12;--brown:#6a3b20;--gold:#c79a50;--paper:#d9ac70;--paper-light:#eed4a7}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--wood)}body{color:var(--ink);margin:0;font-family:Georgia,Times New Roman,serif}button,input,select{font:inherit}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #f4ca77}.voyage{max-width:1800px;margin:auto;overflow:clip;box-shadow:0 0 80px #100a08}.site-header{color:#f0d8a9;z-index:5;background:#181b21;border-bottom:1px solid #4f3824;justify-content:space-between;align-items:center;gap:1rem;min-height:48px;padding:.3rem clamp(1rem,3vw,3rem);display:flex;position:relative}.main-nav,.account-actions{align-items:center;gap:clamp(.7rem,1.8vw,2rem);display:flex}.main-nav a,.nav-brand,.account-actions button{letter-spacing:.095em;text-transform:uppercase;white-space:nowrap;font-size:clamp(.6rem,.82vw,.82rem);text-decoration:none}.main-nav a:hover,.nav-brand:hover,.account-actions button:hover{color:#fff}.nav-brand{align-items:center;gap:.85rem;display:flex}.nav-brand i{color:var(--gold);margin:0 .3rem;font-style:normal}.nav-compass{color:var(--gold);font-size:2rem;line-height:1}.account-actions{gap:.65rem}.account-actions button{color:inherit;cursor:pointer;background:0 0;border:1px solid #756047;padding:.35rem .6rem}.voyage-hero{isolation:isolate;background:#3b281b url(/images/nautical-desk.png) 50%/cover no-repeat;flex-direction:column;justify-content:center;align-items:center;min-height:clamp(520px,54vw,760px);padding:5.5rem 1rem 3.5rem;display:flex;position:relative}.voyage-hero:after{content:"";z-index:-1;background:linear-gradient(#1b120d24,#0000 40%,#3d1e0b1a);position:absolute;inset:0}.hero-emblem{color:#ebc477;text-shadow:1px 2px #281608;background:radial-gradient(circle,#3a2413db 0,#29180cdb 65%,#1f140bb8);border:2px solid #d2a954;border-radius:50%;place-items:center;width:clamp(130px,17vw,220px);height:clamp(90px,12vw,150px);display:grid;position:absolute;top:clamp(.7rem,2vw,2rem);left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 5px #27170b90,0 0 0 2px #3b250f}.hero-emblem:before,.hero-emblem:after{content:"";background:#cda254;width:150%;height:1px;position:absolute;top:50%;left:-25%}.hero-emblem:after{width:1px;height:145%;top:-22.5%;left:50%}.hero-emblem>span:last-child{z-index:1;letter-spacing:-.08em;font-size:clamp(1.7rem,3.7vw,3.7rem);font-style:italic;font-weight:700;position:relative;transform:skew(-8deg)}.hero-emblem__star{z-index:0;opacity:.65;font-size:clamp(5rem,10vw,11rem);line-height:1;position:absolute}.hero-message{text-align:center;text-shadow:0 1px #f9e0b6a3;max-width:700px;margin-top:clamp(10rem,15vw,15rem);padding:1rem 2rem 1.7rem}.script-title{margin:0 0 1.5rem;font-family:Brush Script MT,Segoe Script,cursive;font-size:clamp(3.1rem,6vw,5.3rem);font-style:italic;line-height:1;transform:rotate(-3deg)}.hero-message h1{letter-spacing:.19em;text-transform:uppercase;margin:0;font-size:clamp(1.4rem,2.6vw,2.55rem);line-height:1.2}.hero-subtitle{margin:.5rem 0;font-size:clamp(1rem,1.8vw,1.5rem);font-style:italic}.hero-description{max-width:36rem;margin:1.3rem auto 1.4rem;font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.4}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1.5rem;display:flex}.ornate-button{color:#fff0cb;text-transform:uppercase;letter-spacing:.08em;background:linear-gradient(#1c3956,#0d2036 55%,#091628);border:3px double #d8ae6d;outline:2px solid #281912;justify-content:center;align-items:center;min-width:205px;min-height:53px;padding:.7rem 1.7rem;font-size:.95rem;text-decoration:none;transition:transform .15s,filter .15s;display:inline-flex;box-shadow:0 0 0 4px #bd8c4b,0 5px 8px #22130d87}.ornate-button:hover{filter:brightness(1.15);transform:translateY(-2px)}.paper-world{background-color:#d9ae73;background-image:radial-gradient(at 52% 20%,#f3d6a0a8,#0000 47%),radial-gradient(at 4% 88%,#8b542947,#0000 38%),radial-gradient(at 100% 64%,#8b54293b,#0000 35%),repeating-linear-gradient(13deg,#4e271507 0 1px,#0000 1px 5px);padding:2.8rem clamp(1.25rem,4vw,4rem) 4rem;position:relative;box-shadow:inset 0 13px 24px #57321f65,inset 0 -15px 25px #57321f6b}.paper-world:before{content:"";pointer-events:none;border-inline:12px solid #7a47252b;position:absolute;inset:0}.voyage-motto{text-align:center;opacity:.8;font-family:Brush Script MT,Segoe Script,cursive;font-size:clamp(1.1rem,1.7vw,1.6rem);font-style:italic;line-height:1.05;display:grid;position:absolute;top:1.2rem;right:3%;transform:rotate(-10deg)}.world-intro{flex-wrap:wrap;justify-content:center;gap:clamp(.8rem,2vw,2rem);max-width:760px;margin:0 auto 3rem;display:flex}.stat-plaque{text-align:center;color:#f2d6a7;clip-path:polygon(6% 0,94% 0,100% 22%,100% 78%,94% 100%,6% 100%,0 78%,0 22%);text-transform:uppercase;letter-spacing:.12em;background:#181c20;border:4px double #dfb778;outline:2px solid #332117;flex:1;place-content:center;min-width:160px;max-width:215px;min-height:72px;display:grid;box-shadow:0 2px 6px #5e391d8c}.stat-plaque strong{font-size:1.55rem;font-weight:500;line-height:1}.stat-plaque span{margin-top:.3rem;font-size:.73rem}.map-section{max-width:1360px;margin:auto;scroll-margin-top:1rem}.map-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:.2rem;display:flex}.map-heading h2{letter-spacing:.15em;text-transform:uppercase;max-width:13ch;font-size:clamp(1.45rem,2.5vw,2.5rem);line-height:1.2}.map-heading p{text-align:right;max-width:20ch;font-family:Brush Script MT,Segoe Script,cursive;font-size:clamp(1.2rem,2.2vw,2rem);font-style:italic}.map-hint{text-align:center;margin:0 0 .7rem;font-style:italic}.live-map-frame{max-width:1200px;margin:0 auto 4.5rem}.live-map-frame>section{background:0 0}.map-filters{border-bottom:1px solid #87582c;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem .8rem;padding:.7rem;display:flex}.map-filters label{letter-spacing:.08em;text-transform:uppercase;font-size:.82rem}.map-filters input,.map-filters select{color:#291910;background:#f2dfb7;border:1px solid #8b603a;border-radius:0;width:110px;max-width:100%;padding:.35rem}.map{min-height:390px;position:relative}.map--fullscreen{z-index:20;background:#e0bb83;padding:1rem;position:fixed;inset:0}.map__canvas{filter:sepia(.42)contrast(.94);background:url(/images/world-silhouette.svg) 50%/contain no-repeat;width:100%;height:clamp(360px,43vw,540px)}.map--preview .map__canvas{position:relative}.map--preview .map__canvas:after{content:"✧";color:#6a3b20;font-size:clamp(3rem,7vw,7rem);position:absolute;top:3%;right:3%}.map--fullscreen .map__canvas{height:calc(100vh - 100px)}.map button{cursor:pointer;background:var(--navy);color:#f4dab0;border:1px solid var(--gold);margin:.4rem;padding:.4rem .7rem}.map p[role=status]{text-align:center;margin:0;padding:.3rem 1rem;font-style:italic}.leaflet-popup-content .map-message-popup{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.letters-section{max-width:1400px;margin:0 auto;scroll-margin-top:1rem}.section-heading{align-items:center;gap:1rem;display:flex}.section-heading h2{text-align:center;text-transform:uppercase;letter-spacing:.2em;flex:none;margin:0;font-size:clamp(1.35rem,2.5vw,2.2rem)}.section-rule{background:#6b3e20;flex:1;height:1px;position:relative}.section-rule:after{content:"◇";background:#dcaf72;padding:0 .2rem;position:absolute;top:50%;right:0;transform:translateY(-55%)}.section-rule:last-child:after{left:0;right:auto}.letters-note{text-align:center;margin:.7rem 0 1.5rem;font-style:italic}.letter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.7rem,1.8vw,1.7rem);display:grid}.letter-card{clip-path:polygon(0 2%,4% 0,96% 1%,100% 4%,99% 96%,96% 100%,3% 99%,0 96%);background:radial-gradient(circle at 50% 38%,#f8e4bc,#d6a46a 130%);border:1px solid #a2713d;min-height:250px;padding:1.35rem 1.25rem 1.1rem;font-size:.94rem;line-height:1.36;position:relative;box-shadow:inset 0 0 18px #86552f6e,1px 3px 6px #6740228c}.letter-example-label{color:#674022;letter-spacing:.08em;text-transform:uppercase;margin:0 0 .35rem;font-size:.7rem;font-weight:700}.letter-place{border-bottom:1px solid #b88d59;align-items:center;gap:.6rem;min-height:2rem;font-size:.83rem;display:flex}.letter-place span:first-child{font-size:1.5rem}.letter-greeting{margin:.85rem 0 .2rem}.letter-body{margin:0}.letter-signature{margin:.8rem 0 0;font-style:italic}.letter-seal{color:#79512e;font-size:2.4rem;position:absolute;bottom:.2rem;right:.8rem}.send-banner{color:#f0d6ae;background:repeating-linear-gradient(5deg,#31404b16 0 2px,#0000 2px 9px),#171a20;border-block:4px double #ab7945;justify-content:center;align-items:center;gap:clamp(2rem,8vw,8rem);min-height:165px;padding:2rem clamp(1.5rem,6vw,6rem);display:flex;position:relative}.send-banner h2{text-transform:uppercase;letter-spacing:.2em;margin:0 0 .5rem;font-size:clamp(1.25rem,2vw,2rem)}.send-banner p{color:#d7c1a6;max-width:22rem;margin:0;line-height:1.4}.send-banner .ornate-button{min-width:280px}.banner-seal{opacity:.18;font-size:7rem;position:absolute;right:1%}.site-footer{color:#ddc7a8;background:#211712;grid-template-columns:1fr 1fr;align-content:center;gap:.1rem 1rem;min-height:110px;padding:1.1rem clamp(1.5rem,4vw,4rem);font-size:.76rem;display:grid}.site-footer p{margin:.2rem 0}.footer-script{font-family:Brush Script MT,Segoe Script,cursive;font-size:1.7rem;font-style:italic}.footer-motto{text-align:right;letter-spacing:.12em;grid-area:1/2/3;align-self:end;font-size:.72rem}.footer-motto span{color:var(--gold);padding:0 .3rem}.auth-page,.message-page{background:#342215 url(/images/nautical-desk.png) 50%/cover no-repeat fixed;min-height:100vh;padding:2rem clamp(1rem,4vw,4rem) 4rem}.auth-back{color:#f4dbad;background:#171b20;border:1px solid #b8874e;padding:.6rem .9rem;text-decoration:none;display:inline-block}.auth-panel,.message-content{text-align:center;background:#e4c18e;border:4px double #6b3e20;width:min(100%,580px);margin:2rem auto 0;padding:clamp(1.25rem,4vw,2.5rem);box-shadow:0 10px 32px #1b0e09a8,inset 0 0 40px #9a613927}.auth-panel{justify-items:center;gap:1rem;display:grid}.auth-script{margin:0;font-family:Brush Script MT,Segoe Script,cursive;font-size:clamp(2.2rem,5vw,3.5rem);font-style:italic}.auth-panel h1,.message-content h1{text-transform:uppercase;letter-spacing:.15em;margin:0 0 1rem;font-size:clamp(1.4rem,3vw,2rem)}.message-content{width:min(100%,1100px)}.public-message-card{text-align:left;background:#f2d9aa;max-width:650px;margin:1rem auto 2rem;padding:2rem;line-height:1.5;box-shadow:inset 0 0 22px #9c6b3b72,2px 4px 8px #6e462685}.public-message-card p:first-child{font-size:1.2rem}.public-message-card p:nth-child(2){font-style:italic}.message-map{margin-top:2rem}.profile-intro{max-width:46ch;margin:0 auto 1rem;line-height:1.5}.profile-form{text-align:left;gap:1.2rem;width:100%;display:grid}.profile-field label{margin-bottom:.2rem;font-weight:700;display:block}.profile-hint{opacity:.85;margin:0 0 .4rem;font-size:.82rem;line-height:1.4}.profile-field input{color:#171b20;background:#faf0da;border:1px solid #6b3e20;width:100%;padding:.65rem .8rem;font-size:1rem}.profile-field textarea,.profile-field select{color:#171b20;background:#faf0da;border:1px solid #6b3e20;width:100%;max-width:100%;padding:.65rem .8rem;font-size:1rem}.profile-field textarea{resize:vertical;min-height:150px}.message-counter{text-align:right;opacity:.85;margin-top:.25rem;font-size:.82rem;display:block}.profile-field input[aria-invalid=true],.profile-field textarea[aria-invalid=true],.profile-field select[aria-invalid=true]{border-color:#8c1d18;box-shadow:0 0 0 2px #8c1d1840}.profile-error{color:#7a160f;margin:.4rem 0 0;font-size:.85rem;font-weight:600}.profile-note{color:#2c5c2c;margin:0;font-weight:600}.profile-actions{justify-content:center;gap:.8rem;margin-top:.5rem;display:flex}.profile-submit,.profile-cancel{cursor:pointer;padding:.7rem 1.4rem;font-size:1rem}.profile-submit{color:#f4dbad;background:#6b3e20;border:1px solid #4a2a13}.profile-submit:disabled,.profile-cancel:disabled{opacity:.55;cursor:default}.profile-cancel{color:#4a2a13;background:0 0;border:1px solid #6b3e20}.my-messages-panel{width:min(100%,900px)}.my-messages{text-align:left;width:100%}.my-message-list{gap:1rem;margin:1rem 0;padding:0;list-style:none;display:grid}.my-message-item{background:#f2d9aa;border:1px solid #9a6139;padding:1rem;box-shadow:inset 0 0 18px #9c6b3b38}.my-message-content{white-space:pre-wrap;margin-top:0}.my-message-item p{line-height:1.45}.my-message-links,.my-message-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.my-message-links a,.my-message-actions button{color:#4a2a13;cursor:pointer;background:0 0;border:1px solid #6b3e20;padding:.45rem .7rem}.my-message-links a:hover,.my-message-actions button:hover{background:#e4c18e}.my-message-actions [role=group]{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.my-message-actions [role=group] p{flex-basis:100%;margin:0}@media (max-width:1100px){.site-header{flex-wrap:wrap;justify-content:center}.nav-brand{order:-1;margin-right:auto}.main-nav{order:3;justify-content:center;width:100%;padding:.35rem 0}.letter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:650px){.site-header{gap:.35rem;padding:.5rem .8rem}.nav-brand span:last-child{font-size:.53rem}.nav-compass{font-size:1.5rem}.main-nav{flex-wrap:wrap;justify-content:center;gap:.5rem 1rem}.main-nav a{font-size:.63rem}.account-actions button{font-size:.6rem}.voyage-hero{background-position:50%;justify-content:end;min-height:690px;padding-top:3rem}.hero-emblem{top:1.2rem}.hero-message{background:#e8c58fa8;border:1px solid #9d6e3d99;margin-top:9rem;padding:1.4rem 1rem 2.5rem}.script-title{margin-bottom:.8rem}.hero-message h1{font-size:1.35rem}.hero-description{margin:.8rem auto 1.2rem}.hero-actions{gap:.8rem}.ornate-button{min-width:185px;min-height:46px;font-size:.8rem}.paper-world{padding:2.5rem 1rem 3rem}.voyage-motto{display:none}.world-intro{gap:.5rem;margin-bottom:2rem}.stat-plaque{min-width:95px;min-height:62px}.stat-plaque strong{font-size:1.1rem}.stat-plaque span{font-size:.58rem}.map-heading{text-align:center;display:block}.map-heading h2{max-width:none;margin:0}.map-heading p{text-align:center;max-width:none;margin:.5rem 0}.live-map-frame{margin-bottom:3rem}.map__canvas{height:310px}.section-heading h2{letter-spacing:.1em}.letter-grid{grid-template-columns:1fr;max-width:400px;margin:auto}.letter-card{min-height:205px}.send-banner{text-align:center;flex-direction:column;gap:1.5rem}.site-footer{text-align:center;grid-template-columns:1fr}.footer-motto{text-align:center;grid-area:auto/1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ornate-button{transition:none}}
