:root{--paper:#f5f2ea;--limestone:#e8e4d8;--forest:#203c32;--gold:#c3a14b;--navy:#1f3043;--terracotta:#a36c55;--muted:#65706a;--line:#d5d3c7;--white:#fbfaf5;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Source Sans 3',Arial,sans-serif;--mono:'IBM Plex Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--navy);font:17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}a,button,input,select,textarea{outline-offset:5px}button:focus-visible,a:focus-visible{outline:2px solid var(--gold)}img{max-width:100%;display:block}button{color:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.05}h1{font-size:76px;letter-spacing:-2.8px;color:var(--forest)}h2{font-size:55px;letter-spacing:-1.8px;color:var(--forest)}h3{font-size:30px}i{font-weight:400}p{margin-bottom:18px}.eyebrow{font:500 11px/1.5 var(--mono);letter-spacing:1.7px;margin-bottom:20px}.mono{font:11px/1.7 var(--mono);letter-spacing:.4px}.site-header{height:116px;margin:0 64px;display:flex;align-items:center;gap:38px;border-bottom:1px solid var(--line);position:relative}.site-header:before{content:'';height:4px;background:var(--gold);position:absolute;top:0;left:-64px;right:-64px}.brand{display:flex;gap:15px;align-items:center;min-width:300px}.brand img{height:64px;width:52px;object-fit:contain;filter:sepia(1) saturate(.65);mix-blend-mode:multiply}.brand span{font:600 15px/1.3 var(--serif);letter-spacing:1.4px}.brand em{display:block;font-size:22px;font-weight:400;letter-spacing:0}.site-header nav{display:flex;gap:29px;margin-left:auto;font-size:14px}.site-header nav a:hover,.text-link:hover{color:#956e1a}.outline{display:inline-flex;align-items:center;gap:24px;border:1px solid #a5ac9f;padding:12px 17px;font-size:14px}.menu-button{display:none}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:14px 23px;background:var(--forest);color:var(--white);border:1px solid var(--forest);font-weight:500;font-size:15px;min-height:50px}.button:hover{background:#345446}.text-link{display:inline-flex;align-items:center;gap:26px;font-size:15px;font-weight:500;border:0;border-bottom:1px solid #aeb8aa;background:transparent;padding:8px 0}.hero{padding:50px 64px 42px;display:grid;grid-template-columns:1fr 1.02fr;gap:48px;min-height:678px}.hero-copy{padding:41px 0 0;position:relative}.hero-copy>*:not(.crest-watermark){position:relative}.hero-copy .eyebrow{font-size:10px;margin-bottom:28px;letter-spacing:1.7px}.crest-watermark{position:absolute;width:215px;height:270px;object-fit:contain;right:12px;top:52px;opacity:.052;filter:grayscale(1)}.hero-line{font-family:var(--serif);font-size:26px;margin:23px 0 17px;letter-spacing:-.3px}.hero-description{font-size:16px;line-height:1.65;color:var(--muted);margin-bottom:27px}.hero-copy>.text-link{margin-left:25px}.hero-footnote{margin-top:42px;display:flex;align-items:center;gap:15px;font:500 10px/1.7 var(--mono);letter-spacing:1px}.hero-footnote small{font-family:var(--sans);font-size:13px;letter-spacing:0;font-weight:400;color:var(--muted)}.small-crest{font-size:26px;color:var(--gold)}.hero-photo{position:relative;min-height:553px;background:var(--limestone)}.hero-photo>img{height:100%;width:100%;object-fit:cover;object-position:53% 50%;filter:sepia(.6) saturate(.55) contrast(.97);position:absolute;inset:0}.hero-photo:after{content:'';position:absolute;inset:0;border:8px solid #ffffff14;pointer-events:none}.hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;color:white;background:linear-gradient(transparent,#18211ccd);padding:70px 23px 20px;font:10px var(--mono);letter-spacing:1px}.photo-tag{background:#dac276;position:absolute;right:-12px;top:33px;padding:13px 15px;text-align:center;box-shadow:0 3px 10px #2221}.photo-tag span,.photo-tag small{display:block;font:9px var(--mono);letter-spacing:1px}.photo-tag strong{font:48px/1.2 var(--serif)}.photo-tag small{font-size:7px}.route{margin:0 64px;display:flex;align-items:center;gap:22px;justify-content:space-between;padding:30px 70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:500 11px var(--mono);letter-spacing:.8px}.route span{text-align:center;white-space:nowrap}.route small{display:block;font:13px var(--sans);color:var(--muted);letter-spacing:0;margin-top:6px}.route i{height:1px;flex:1;border-bottom:1px dashed #afa58b;position:relative}.route i:before,.route i:after{content:'';position:absolute;top:-3px;height:6px;width:6px;border-radius:50%;background:var(--gold)}.route i:after{right:0}.route .sea-route{min-width:140px}.sea-route svg{width:47px;height:31px;stroke:var(--forest);fill:none;position:absolute;left:50%;top:-16px;transform:translateX(-50%);background:var(--paper);padding:0 6px;box-sizing:content-box}.section{padding:88px 64px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:40px}.section-heading>.section-intro,.section-heading>div.section-intro{width:390px;flex-shrink:0;color:var(--muted);font-size:16px}.section-heading .section-intro p{margin-bottom:20px}.legend{display:flex;gap:23px;font-size:12px;color:var(--navy)}.legend span{display:flex;align-items:center;gap:7px}.legend b{width:8px;height:8px;display:block}.gold-dot{background:var(--gold)}.navy-dot{background:var(--navy)}.tree-workspace{display:grid;grid-template-columns:minmax(0,1fr) 322px;border:1px solid #c9cbbc;background:var(--white)}.tree-chart-wrap{min-width:0;display:flex;flex-direction:column}.tree-tools{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:15px 22px}.tree-tools>div{display:flex;align-items:center}.tree-tools button{height:29px;min-width:30px;border:1px solid var(--line);background:var(--white);font-size:15px}.tree-tools #tree-reset{font:10px var(--mono);border-left:0;border-right:0;padding:0 8px}.tree-scroll{overflow:auto;flex:1;background:radial-gradient(#a7af9c44 .6px,transparent .8px);background-size:16px 16px;min-height:452px}.tree-canvas{width:990px;height:450px;position:relative;transform-origin:top left}.generation-label{font:8px var(--mono);letter-spacing:1px;position:absolute;top:28px;color:#6b776c}.g1{left:25px}.g2{left:267px}.g3{left:760px}.tree-lines{position:absolute;inset:0;fill:none;stroke:#a9ac97;stroke-width:1.3}.person{position:absolute;text-align:left;border:1px solid #d5c388;border-left:4px solid var(--gold);padding:13px 13px 12px;background:#f7f0dc;width:194px;min-height:77px;box-shadow:0 3px 6px #203c3204}.person strong{font-family:var(--serif);font-size:20px;font-weight:600;display:block;line-height:1.05}.person span{display:block;font:9px var(--mono);margin-top:7px}.person small{display:block;font:7px var(--mono);letter-spacing:.9px;margin-bottom:5px}.person.us{background:#edf0f2;border-color:#aab5c1;border-left-color:var(--navy)}.person.selected{outline:2px solid #b08a36;outline-offset:4px;background:#ecdda7}.parent-one{left:24px;top:134px;width:169px}.parent-two{left:24px;top:242px;width:169px}.peter{left:260px;top:60px}.domenico{left:260px;top:157px}.vito{left:260px;top:274px}.teresa{left:491px;top:171px}.rosemund{left:753px;top:61px}.daniel{left:753px;top:164px}.marie{left:753px;top:272px}.other-siblings{position:absolute;left:268px;top:376px;font:9px var(--mono);color:var(--muted)}.marriage-note{position:absolute;top:346px;left:24px;font:7px var(--mono);letter-spacing:.1px}.tree-caption{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--muted);padding:13px 20px;border-top:1px solid var(--line)}.tree-caption a{color:var(--forest);white-space:nowrap}.person-detail{background:#eeeee4;border-left:1px solid var(--line)}.quadrant{background-size:200% 200%;display:block;background-repeat:no-repeat}.q1{background-position:0 0}.q2{background-position:100% 0}.q3{background-position:0 100%}.q4{background-position:100% 100%}.person-portrait{height:198px;position:relative;background-size:200% 200%}.person-portrait span{position:absolute;bottom:7px;right:9px;font:6px var(--mono);letter-spacing:1px;background:#f7f2dece;padding:3px 5px}.detail-copy{padding:22px 24px 23px}.detail-copy .eyebrow{font-size:7px;letter-spacing:.7px;margin-bottom:10px}.detail-copy h3{font-size:30px}.detail-dates{font-size:8px;margin:12px 0}.detail-copy>p:not(.eyebrow):not(.mono){font-size:13px;line-height:1.55;margin-bottom:15px}.detail-fact{font-size:12px;border-top:1px solid #cbcebf;padding-top:12px;margin-bottom:5px}.detail-fact span{font:8px var(--mono);display:block}.detail-copy .text-link{font-size:12px}.source-note{font-size:11px;color:var(--muted);margin:13px 0 0;line-height:1.5}.crossing{background:var(--forest);color:#edeedf;position:relative}.crossing-inner{padding:78px 108px 76px;display:grid;grid-template-columns:1fr 1fr;gap:110px}.crossing h2{color:var(--paper);font-size:56px}.crossing .eyebrow{color:#d3ba74}.crossing-title>p:not(.eyebrow){margin:25px 0;color:#c7d1c4;font-size:16px}.steamship{width:96%;height:auto;margin:8px 0 0;stroke:#c3bc9b;stroke-width:1.1;fill:none;opacity:.72}.crossing .ship-caption{font-size:8px;letter-spacing:2px;margin:0 0 25px!important;text-align:center}.crossing blockquote{font:italic 30px/1.2 var(--serif);margin:38px 0 0;padding:0 0 0 25px;border-left:1px solid var(--gold);color:#e6d9ad}.crossing cite{display:block;font:8px var(--mono);letter-spacing:1px;margin-top:15px;color:#b2bdaf}.timeline{padding:0;margin:0;list-style:none}.timeline li{display:grid;grid-template-columns:92px 1fr;gap:29px;padding-bottom:28px;position:relative;min-height:113px}.timeline li:after{content:'';position:absolute;left:104px;top:12px;bottom:-12px;width:1px;background:#71836a}.timeline li:last-child:after{display:none}.timeline li:before{content:'';position:absolute;left:100px;top:7px;width:9px;height:9px;border:1px solid #bda763;background:var(--forest);border-radius:50%;z-index:1}.timeline .featured:before{background:#d3b354;box-shadow:0 0 0 5px #d3b35422}.timeline .year{font:33px/1 var(--serif);color:#d2bb7c;white-space:nowrap;text-align:right;letter-spacing:-.7px}.timeline h3{font-size:28px;margin-bottom:9px;color:var(--paper)}.timeline .age{font:8px var(--mono);letter-spacing:1px;color:#c9bb91;display:block;margin-bottom:8px}.timeline p{font-size:13px;line-height:1.55;color:#c0cbbf;margin:0}.siblings-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.sibling{border:1px solid var(--line);background:#faf8f1;padding:20px 21px 17px;position:relative;min-height:173px}.sibling>span{font:10px var(--mono);color:#7e866f}.sibling h3{font-size:25px;line-height:1.08;margin:10px 0}.sibling p{font:9px/1.6 var(--mono);margin:0 0 15px;color:#596559}.badge{display:inline-block;background:#eee6ca;padding:3px 7px;font:8px var(--mono);letter-spacing:.2px;color:#4b513f}.sibling.pop-card{background:var(--forest);color:var(--paper);border-color:var(--forest)}.pop-card p,.pop-card>span{color:#c4ccbb}.pop-card .badge{background:#596547;color:#f3e5b9}.sibling.family-register{border:1px dashed #a9b19d;background:transparent;display:flex;align-items:flex-start;justify-content:center;flex-direction:column}.family-register h3{font-size:30px}.family-register a{font-size:13px}.family-surnames{text-align:center;border-top:1px solid var(--line);margin-top:42px;padding-top:29px}.family-surnames .eyebrow{font-size:9px;color:var(--muted)}.family-surnames p{font:24px/1.7 var(--serif);margin:10px 0 0}.family-surnames i{font-size:17px;color:#aa8e49;margin:0 9px}.records-section{background:#e9e7dc;border-top:1px solid #dddccf;border-bottom:1px solid #dddccf}.records-layout{display:grid;grid-template-columns:1fr .8fr;gap:80px;align-items:center}.records-display{display:grid;grid-template-columns:1fr 127px;gap:22px;align-items:center}.record-large{padding:17px;background:#f6f3e8;box-shadow:0 4px 20px #1d2b241a;transform:rotate(-1deg);border:1px solid #d3cbb6}.record-large img{width:100%;height:424px;object-fit:contain;mix-blend-mode:multiply}.records-thumbnails{display:grid;gap:16px}.records-thumbnails button{border:1px solid #c8c5b4;padding:8px;background:#f3f0e5;text-align:left;opacity:.73}.records-thumbnails button.active{outline:1px solid #92772f;outline-offset:3px;opacity:1}.records-thumbnails img{height:83px;width:100%;object-fit:cover;object-position:top}.records-thumbnails span{font:11px var(--mono);display:block;margin-top:6px}.records-thumbnails small{font:11px var(--sans);display:block}.record-transcript .eyebrow{font-size:9px;margin-bottom:14px}.record-transcript h3{font-size:38px;margin-bottom:18px;color:var(--forest)}.record-context{font-size:15px;line-height:1.6;color:#5b695e}.transcription{background:#f7f4e9;border-top:3px double #8e987c;padding:19px 23px 16px}.transcript-label{font:9px var(--mono);letter-spacing:1px;border-bottom:1px solid #d4d3c2;padding-bottom:11px;display:flex;justify-content:space-between}.transcription dl{font:11px/1.7 var(--mono);margin:16px 0 13px}.transcription dl>div{display:grid;grid-template-columns:100px 1fr;margin-bottom:9px}.transcription dd{margin:0}.transcription dt{color:#788071}.transcript-disclaimer{font:9px/1.6 var(--mono);color:#788071;border-top:1px solid #d4d3c2;padding-top:11px;margin:0}.record-transcript .text-link{font-size:13px;margin-top:14px}.archive-tabs{display:flex;gap:16px;font-size:12px;white-space:nowrap}.archive-tabs button{background:none;border:0;padding:6px 0;border-bottom:1px solid transparent;color:var(--muted);font-size:12px}.archive-tabs .active{color:var(--forest);border-bottom-color:var(--forest)}.album{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:24px;align-items:start}.album-photo{padding:12px 12px 16px;border:1px solid #dfdccc;background:#fbf8ed;box-shadow:0 5px 8px #26382608;transform:rotate(-1.4deg);text-align:left}.album-photo:nth-child(2){transform:rotate(1.8deg);margin-top:43px}.album-photo:nth-child(3){transform:rotate(-.8deg);margin-top:12px}.album-photo .quadrant{aspect-ratio:1.5}.album-caption{display:block;padding:13px 4px 0}.album-caption strong{font:italic 23px var(--serif);display:block;margin-bottom:7px}.album-caption>span{font:9px var(--mono);display:flex;justify-content:space-between;color:var(--muted)}.album-caption i{font-style:normal}.archive-section .source-note{margin-top:24px}.san-fele-section{background:#e9ede5}.place-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:24px}.place>img{width:100%;height:216px;object-fit:cover;filter:saturate(.55)}.place>div{padding:23px 0 0}.place .eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:11px}.place h3{font-size:31px;color:var(--forest);margin-bottom:13px}.place p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:360px}.visit-card{grid-column:1/-1;border-top:1px solid #c4cdbd;padding:27px 0 0;display:flex;gap:26px;align-items:center;margin-top:5px}.visit-mark{border:1px solid #a8b596;width:58px;height:58px;display:grid;place-items:center;font-size:27px}.visit-card .eyebrow{font-size:8px;margin:0 0 6px}.visit-card h3{font-size:32px;display:inline;margin-right:12px}.visit-card p:not(.eyebrow){display:inline;font-size:14px;color:var(--muted)}.visit-link{margin-left:auto;white-space:nowrap;font-size:14px}.visit-link b{margin-left:50px}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:95px;padding-top:87px;padding-bottom:87px}.contact-story h2{margin-bottom:26px}.contact-story>p:not(.eyebrow){font-size:16px;color:var(--muted);max-width:415px}.tape{border-top:1px solid #bbab79;border-bottom:1px solid #bbab79;margin:28px 0 0;padding:14px 0 4px;display:flex;justify-content:space-between;max-width:380px;background:repeating-linear-gradient(90deg,#b7aa81 0,#b7aa81 1px,transparent 1px,transparent 9px) top/100% 7px no-repeat;transform:rotate(-2deg);color:#8f8260;font:8px var(--mono);letter-spacing:2px}.contact-form{padding-top:3px}.contact-form label{display:block;font-size:13px;margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input,select,textarea{display:block;width:100%;border:1px solid #bfc6b8;background:#faf9f2;margin-top:7px;padding:12px 13px;font-size:14px;min-height:45px;border-radius:0;color:var(--navy)}textarea{resize:vertical;min-height:117px}input::placeholder,textarea::placeholder{color:#8b9286}.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px}.form-bottom small{font-size:11px;color:var(--muted);max-width:174px}.form-bottom .button{font-size:13px;gap:24px;white-space:nowrap}.form-status{font-size:10px;color:var(--muted);margin-top:16px;margin-bottom:0}.form-status.sent{background:#e8eddf;padding:10px;border-left:2px solid var(--forest)}footer{padding:45px 64px 23px;background:var(--forest);color:#f1f0e5}.footer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:37px}.footer-top .brand img{filter:sepia(1) brightness(1.5);mix-blend-mode:normal}.footer-top .brand{min-width:0}.footer-top>p{font:25px/1.3 var(--serif);margin:0;color:#e6ddbf}.footer-top>div{display:flex;flex-direction:column;gap:6px;font-size:12px}.footer-bottom{display:flex;justify-content:space-between;font-size:11px;color:#c5cdbe;border-top:1px solid #64725b;padding-top:20px}.footer-bottom>span:last-child{font:8px var(--mono);letter-spacing:1px}.footer-note{font-size:9px;color:#aebda8;margin:13px 0 0}dialog{border:1px solid #c2c8b9;background:var(--paper);padding:48px;max-width:min(90vw,920px);max-height:92vh;color:var(--navy)}dialog::backdrop{background:#14231dcc;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:10px;top:7px;border:0;background:none;font-size:29px;width:40px;height:40px}#lightbox-content>img{max-height:74vh;margin:auto}#lightbox-content .quadrant{width:70vw;max-width:780px;aspect-ratio:1.5}#lightbox-content p{margin:15px 0 0;font-size:13px}.export-tree .site-header,.export-tree main> :not(.tree-section),.export-tree footer{display:none}.export-tree .tree-section{padding:56px 64px}.export-tree .tree-section .source-note{margin-top:16px}.export-tree .tree-workspace{grid-template-columns:1fr 350px}.export-tree .tree-chart-wrap{min-height:525px}.export-tree .tree-scroll{min-height:450px}.export-tree .tree-canvas{transform:scale(.94);width:990px}.export-tree .person-detail{display:flex;flex-direction:column}.export-tree .person-portrait{height:217px}.export-tree .detail-copy{padding:25px}.export-tree .tree-section h2{font-size:54px}.export-tree .tree-section .section-heading{margin-bottom:34px}.export-tree .tree-caption{margin-top:auto}.export-tree .tree-scroll{overflow:hidden}.export-tree .tree-tools{display:none}.export-tree .tree-canvas{height:450px}.export-tree .tree-section{background:var(--paper)}
@media(min-width:1600px){.site-header,.route{max-width:1420px;margin-left:auto;margin-right:auto}.hero,.section,.crossing-inner{max-width:1548px;margin-left:auto;margin-right:auto}.hero{grid-template-columns:1fr 1fr}.tree-workspace{grid-template-columns:minmax(0,1fr) 340px}}
@media(max-width:1150px){.site-header{margin:0 36px;gap:18px}.site-header nav{gap:19px}.brand{min-width:230px}.header-cta{display:none}.hero{padding:40px 36px;gap:30px}h1{font-size:63px}.hero-copy>.text-link{margin-left:0;margin-top:12px;display:table}.hero-footnote{margin-top:23px}.route{margin:0 36px;padding:28px 15px}.section{padding:72px 36px}.tree-workspace{grid-template-columns:minmax(0,1fr) 290px}.crossing-inner{padding:70px 50px;gap:60px}.crossing h2{font-size:48px}.siblings-grid{grid-template-columns:repeat(3,1fr)}.records-layout{gap:40px}.records-display{grid-template-columns:1fr 100px;gap:17px}.record-large{padding:10px}.record-large img{height:390px}.contact-section{gap:55px}.form-bottom{gap:15px}footer{padding-left:36px;padding-right:36px}.footer-top>p{font-size:22px}.footer-bottom{font-size:10px}}
@media(max-width:700px){body{font-size:16px}.site-header{height:88px;margin:0 22px;gap:15px}.site-header:before{left:-22px;right:-22px;height:3px}.brand{min-width:0;gap:10px}.brand img{height:49px;width:39px}.brand span{font-size:12px;letter-spacing:1.1px}.brand em{font-size:20px}.site-header nav{display:none;position:absolute;top:87px;left:-22px;right:-22px;padding:25px;background:var(--paper);border-bottom:1px solid var(--line);z-index:20;flex-direction:column}.site-header nav.open{display:flex}.menu-button{display:block;margin-left:auto;border:0;background:none;font-size:21px;padding:10px 0 10px 10px}.hero{display:flex;flex-direction:column;padding:32px 22px 24px;gap:26px;min-height:0}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:8px;letter-spacing:1.1px;margin-bottom:22px}h1{font-size:49px;line-height:1.02;letter-spacing:-1.65px}.hero-line{font-size:20px;line-height:1.35;margin:20px 0 14px;letter-spacing:-.2px}.hero-description{font-size:14px;line-height:1.6;margin-bottom:21px}.hero-copy>.button{padding:12px 18px;gap:26px;font-size:13px;min-height:45px}.hero-copy>.text-link{font-size:12px;margin-left:18px;display:inline-flex;gap:8px;margin-top:0;padding-bottom:5px}.hero-footnote{margin-top:24px;font-size:8px;gap:11px}.hero-footnote small{font-size:11px}.small-crest{font-size:21px}.crest-watermark{width:146px;height:183px;top:18px;right:0;opacity:.04}.hero-photo{min-height:317px;margin-right:8px}.hero-photo>img{object-position:52% 50%}.hero-photo figcaption{font-size:7px;padding:45px 14px 14px;letter-spacing:.3px}.photo-tag{right:-8px;top:19px;padding:9px 11px}.photo-tag strong{font-size:38px}.photo-tag span{font-size:7px}.photo-tag small{font-size:5.5px}.route{margin:0 22px;padding:23px 0;gap:7px;flex-wrap:nowrap;font-size:6px;letter-spacing:.2px}.route small{font-size:8px;margin-top:4px}.route i{min-width:5px}.route .sea-route{min-width:20px}.sea-route svg{width:21px;height:16px;top:-8px;padding:0 2px}.route i:before,.route i:after{width:3px;height:3px;top:-1px}.section{padding:53px 22px}.eyebrow{font-size:8px;letter-spacing:1.2px;margin-bottom:15px}h2{font-size:39px;letter-spacing:-1.2px}.section-heading{display:block;margin-bottom:27px}.section-heading>.section-intro,.section-heading>div.section-intro{width:auto;font-size:14px;margin-top:21px}.section-heading .section-intro p{margin-bottom:15px}.legend{font-size:10px;gap:20px}.legend b{width:7px;height:7px}.tree-workspace{display:block}.tree-tools{padding:12px}.tree-tools .mono{font-size:7px;letter-spacing:0}.tree-tools button{min-width:25px;height:25px;font-size:12px}.tree-tools #tree-reset{font-size:8px}.tree-scroll{min-height:335px;height:335px}.tree-canvas{transform:scale(.77);height:431px;width:990px}.tree-caption{display:block;font-size:9px;padding:11px 12px}.tree-caption a{display:inline-block;margin-top:4px}.person-detail{border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:100px 1fr;padding:19px;gap:15px}.person-portrait{height:136px;background-size:408% 200%;background-position:16.5% 0}.person-portrait span{font-size:4px;bottom:3px;right:2px;padding:2px;letter-spacing:0}.detail-copy{padding:0}.detail-copy .eyebrow{font-size:6px;letter-spacing:.2px;line-height:1.5}.detail-copy h3{font-size:24px}.detail-dates{font-size:6px;margin:10px 0}.detail-copy>p:not(.eyebrow):not(.mono){font-size:11px;line-height:1.5}.detail-fact{font-size:10px}.detail-fact span{font-size:7px}.detail-copy .text-link{font-size:11px;gap:12px}.source-note{font-size:9px;margin-top:12px}.crossing-inner{display:block;padding:49px 28px 33px}.crossing h2{font-size:40px}.crossing-title>p:not(.eyebrow){font-size:14px;margin:20px 0}.steamship{width:84%;margin:4px auto 0;display:block}.crossing .ship-caption{font-size:6px!important;letter-spacing:1px;margin-bottom:15px!important}.crossing blockquote{font-size:25px;line-height:1.22;margin:28px 0 37px;padding-left:18px}.crossing cite{font-size:6px;margin-top:10px}.timeline li{grid-template-columns:70px 1fr;gap:25px;min-height:120px;padding-bottom:26px}.timeline .year{font-size:29px}.timeline li:before{left:79px;width:7px;height:7px}.timeline li:after{left:82px}.timeline .age{font-size:7px;letter-spacing:.7px;margin-bottom:7px}.timeline h3{font-size:24px;line-height:1.1}.timeline p{font-size:12px}.timeline li:last-child{padding-bottom:0;min-height:110px}.siblings-grid{grid-template-columns:1fr 1fr;gap:10px}.sibling{min-height:174px;padding:15px 12px 13px}.sibling>span{font-size:8px}.sibling h3{font-size:21px;line-height:1.02;min-height:43px;margin:8px 0 10px}.sibling p{font-size:7px;line-height:1.8;min-height:27px;margin-bottom:8px}.badge{font-size:6px;padding:3px 4px;letter-spacing:0}.family-register h3{font-size:26px}.family-register a{font-size:11px}.family-surnames{margin-top:29px;padding-top:21px}.family-surnames .eyebrow{font-size:7px;letter-spacing:.8px}.family-surnames p{font-size:20px;line-height:1.6}.family-surnames i{margin:0 5px}.records-layout{display:block}.records-display{grid-template-columns:1fr 82px;gap:15px;margin:0 3px 31px}.record-large{padding:9px}.record-large img{height:282px}.records-thumbnails{gap:12px}.records-thumbnails button{padding:5px}.records-thumbnails img{height:57px}.records-thumbnails span{font-size:8px;margin-top:4px}.records-thumbnails small{font-size:8px}.record-transcript h3{font-size:32px}.record-transcript .eyebrow{font-size:7px}.record-context{font-size:14px}.transcription{padding:16px 18px}.transcript-label{font-size:7px;letter-spacing:.6px}.transcription dl{font-size:10px}.transcription dl>div{grid-template-columns:85px 1fr}.transcript-disclaimer{font-size:8px}.record-transcript .text-link{font-size:12px}.archive-tabs{gap:17px}.archive-tabs button{font-size:10px}.album{display:flex;flex-direction:column;gap:25px;padding:0 10px}.album-photo{width:100%;padding:10px 10px 13px}.album-photo:nth-child(2),.album-photo:nth-child(3){margin-top:0}.album-photo:nth-child(2){width:86%;align-self:flex-end;transform:rotate(2deg)}.album-photo:nth-child(3){width:91%}.album-caption strong{font-size:22px}.album-caption>span{font-size:8px}.archive-section .source-note{margin-top:25px}.place-grid{display:block}.place{margin-bottom:28px}.place>img{height:214px}.place>div{padding:18px 0 0}.place .eyebrow{font-size:7px;margin-bottom:9px}.place h3{font-size:30px;margin-bottom:10px}.place p:not(.eyebrow){font-size:14px;margin-bottom:0}.visit-card{padding-top:23px;gap:13px;align-items:flex-start;flex-wrap:wrap}.visit-mark{width:42px;height:42px;flex-shrink:0;font-size:23px}.visit-card>div{width:calc(100% - 57px)}.visit-card .eyebrow{font-size:6px}.visit-card h3{font-size:30px;display:block;margin:8px 0}.visit-card p:not(.eyebrow){font-size:12px;display:block;line-height:1.5}.visit-link{margin:0 0 0 56px;font-size:12px}.visit-link b{margin-left:27px}.contact-section{display:block}.contact-story h2{margin-bottom:23px}.contact-story>p:not(.eyebrow){font-size:14px}.tape{margin-top:26px;margin-bottom:32px;font-size:7px}.form-row{display:block}.contact-form label{font-size:12px;margin-bottom:17px}input,select,textarea{font-size:13px;padding:11px;min-height:44px}.form-bottom{gap:12px;align-items:flex-start}.form-bottom small{font-size:9px;max-width:125px;padding-top:4px}.form-bottom .button{font-size:12px;padding:11px 15px;gap:15px;min-height:44px}.form-status{font-size:9px;line-height:1.5;margin-top:14px}footer{padding:34px 22px 23px}.footer-top{display:block;margin-bottom:24px}.footer-top .brand{margin-bottom:27px}.footer-top>p{font-size:26px;margin-bottom:23px}.footer-top>div{gap:8px;font-size:12px}.footer-bottom{display:block;font-size:10px;line-height:1.6;padding-top:17px}.footer-bottom>span:last-child{display:block;margin-top:15px;font-size:7px}.footer-note{font-size:8px;margin-top:15px}dialog{padding:44px 15px 20px;max-width:94vw}#lightbox-content .quadrant{width:80vw}.export-tree .tree-section{padding:40px 22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.initial-portrait{height:100%;display:grid;place-items:center;font:52px var(--serif);color:#7b806b}.album-photo[hidden]{display:none!important}
@media(max-width:700px){.detail-dates{font-size:9px;line-height:1.6}.detail-copy .eyebrow{font-size:7px}.sibling p{font-size:9px;line-height:1.55;min-height:30px}.badge{font-size:9px;line-height:1.45}.sibling{min-height:197px}.sibling h3{font-size:22px}.person strong{font-size:21px}.person span{font-size:11px}.person small{font-size:9px}.person-detail{grid-template-columns:85px 1fr;gap:13px;padding:16px}.person-portrait{height:128px}.detail-copy>p:not(.eyebrow):not(.mono){font-size:12px}.detail-fact{font-size:11px}.detail-fact span{font-size:9px}.detail-copy .text-link{font-size:12px}}
.marriage-note{top:365px}@media(max-width:700px){.tree-scroll{flex:none;height:335px;min-height:335px}.tree-caption a{display:block;width:100%;margin-top:5px}.tree-caption{font-size:10px;line-height:1.5}}
.brand img{filter:none;mix-blend-mode:normal}.footer-top .brand img{filter:none;mix-blend-mode:normal}

/* Original family images retain their natural size within the existing frames. */
.original-portrait{display:flex;align-items:center;justify-content:center;background:#e1ddcf;overflow:hidden;background-image:none!important}
.original-portrait>img,.profile-image img{width:auto;height:auto;max-height:100%;max-width:100%;object-fit:contain}
.profile-image{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border:0;padding:0;background:none;cursor:zoom-in}
.original-portrait>span{pointer-events:none;text-transform:uppercase}
.photo-mat{display:flex;align-items:center;justify-content:center;aspect-ratio:1.5;background:#e8e4d8;overflow:hidden}
.photo-mat img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.album-item{min-width:0}.album-item .album-photo{width:100%;margin:0}.album-item:nth-child(2){padding-top:43px}.album-item:nth-child(2) .album-photo{transform:rotate(1.8deg)}.album-item:nth-child(3){padding-top:12px}.album-item:nth-child(3) .album-photo{transform:rotate(-.8deg)}
.photo-credit{display:block;font:11px/1.5 var(--sans);color:var(--muted);margin-top:10px}.photo-credit a{text-decoration:underline;text-underline-offset:3px}
.additional-records{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:18px}.additional-records button{font:12px/1.4 var(--sans);color:var(--forest);border:0;border-bottom:1px solid var(--line);background:none;padding:4px 0;text-align:left}.additional-records button.active{border-color:var(--forest)}
#lightbox-content>img.original-lightbox{width:auto;height:auto;max-height:65vh;max-width:100%;object-fit:contain}
.full-archive h1{font:normal 64px/1.1 var(--serif);margin:20px 0}.full-archive .section-heading{margin-top:32px}.archive-group{margin-top:72px}.archive-group h2{font-size:40px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:32px}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.archive-card{padding:16px;background:#fbf8ed;border:1px solid #dfdccc;align-self:start}.archive-image{display:flex;align-items:center;justify-content:center;width:100%;height:300px;border:0;padding:0;background:#e8e4d8;cursor:zoom-in}.archive-image img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}.archive-card h3{font:normal 27px/1.2 var(--serif);margin:18px 0 10px}.archive-card p{font-size:14px;line-height:1.6;margin:10px 0}.archive-card .mono{font-size:11px}
@media(max-width:700px){.album-item{width:100%}.album-item:nth-child(2){width:86%;align-self:flex-end;padding-top:0}.album-item:nth-child(3){width:91%;padding-top:0}.album-item .album-photo{width:100%}.archive-grid{grid-template-columns:1fr;gap:24px}.full-archive h1{font-size:48px}.archive-group{margin-top:45px}.archive-group h2{font-size:32px}.archive-image{height:280px}.additional-records{gap:8px}.additional-records button{font-size:11px}.tree-caption>div{margin-top:5px}}

/* A recipe beside the family album, using the existing archive styling. */
.recipe-home-section{padding-top:0}
.recipe-home-card{display:grid;grid-template-columns:145px minmax(0,1fr) auto;gap:32px;align-items:center;border:1px solid var(--line);background:#eeeadf;padding:28px}
.recipe-home-card figure{min-width:0}
.recipe-home-card img{width:100%;height:156px;object-fit:contain;background:#e8e4d8}
.recipe-home-card figcaption{font-size:11px;color:var(--muted);line-height:1.5;margin-top:9px}
.recipe-home-card .eyebrow{margin-bottom:10px}
.recipe-home-card h2{font-size:40px;margin-bottom:12px}
.recipe-home-card p:last-child{margin-bottom:0;max-width:560px}
.recipe-home-card>.text-link{white-space:nowrap}
.site-header nav>a{white-space:nowrap}
@media(min-width:701px) and (max-width:950px){.site-header nav{display:none;position:absolute;top:115px;left:-36px;right:-36px;padding:25px 36px;background:var(--paper);border-bottom:1px solid var(--line);z-index:20;flex-direction:column}.site-header nav.open{display:flex}.site-header .menu-button{display:block;margin-left:auto;border:0;background:none;font-size:21px;min-width:44px;min-height:44px}}
@media(max-width:700px){.recipe-home-card{grid-template-columns:86px minmax(0,1fr);gap:22px 17px;padding:20px}.recipe-home-card img{height:116px}.recipe-home-card figcaption{font-size:10px}.recipe-home-card h2{font-size:32px}.recipe-home-card p:last-child{font-size:14px}.recipe-home-card>.text-link{grid-column:1/-1;justify-self:start;min-height:44px}.site-header .menu-button{min-width:44px;min-height:44px}}
@media(min-width:701px) and (max-width:1150px){.site-header:before{left:-36px;right:-36px}}

.arrival-views{border-bottom:1px solid var(--line)}
.arrival-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.arrival-photo{min-width:0}.arrival-photo>button{display:block;width:100%;padding:12px;border:1px solid #d9d3c3;background:#fbf8ed;cursor:zoom-in;box-shadow:0 3px 8px #203c3210}
.arrival-photo img{width:100%;height:auto;aspect-ratio:1.25;object-fit:contain;filter:sepia(.32) saturate(.65)}
.arrival-photo figcaption{padding:22px 0 0}.arrival-photo h3{font-size:34px;margin-bottom:12px}.arrival-photo figcaption>p{margin-bottom:13px;max-width:540px}
@media(max-width:700px){.arrival-photo-grid{grid-template-columns:minmax(0,1fr);gap:35px}.arrival-photo>button{padding:9px}.arrival-photo h3{font-size:29px}.arrival-photo figcaption>p{font-size:14px}.arrival-photo .photo-credit{font-size:11px}}

/* San Fele monument: nested inside the existing .section wrapper. */
.monument-section{margin-top:72px;padding-top:64px;border-top:1px solid var(--line);min-width:0}
.monument-intro{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:64px;align-items:start;margin-bottom:36px}
.monument-intro h3{font-size:44px;line-height:1.08;letter-spacing:-1.1px;color:var(--forest);max-width:14ch}
.monument-intro-copy p{font-size:16px;line-height:1.75;margin-bottom:0;color:var(--navy)}
.monument-gallery{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:24px;align-items:start}
.monument-photo{min-width:0;margin:0}
.monument-image-button{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;aspect-ratio:4 / 3;border:1px solid var(--line);padding:10px;background:var(--white);cursor:zoom-in;overflow:hidden}
.monument-image-button img{display:block;width:100%;height:100%;object-fit:contain;max-width:100%;max-height:100%}
.monument-image-action{position:absolute;right:10px;bottom:10px;padding:6px 9px;background:var(--paper);color:var(--forest);border:1px solid var(--line);font:11px/1.4 var(--sans);pointer-events:none}
.monument-photo figcaption{font:14px/1.55 var(--sans);color:var(--navy);margin-top:14px;overflow-wrap:anywhere}
.monument-photo figcaption small{display:block;margin-top:8px;font:11px/1.5 var(--sans);color:var(--muted)}
.monument-photo figcaption a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line)}
.monument-photo-note{font:13px/1.6 var(--sans);color:var(--muted);margin:22px 0 0}
.monument-dedication{padding:32px 36px;margin-top:44px;border:1px solid var(--line);background:var(--white)}
.monument-dedication h4,.monument-donors h4{font:500 30px/1.15 var(--serif);letter-spacing:-.3px;color:var(--forest);margin:0 0 24px}
.monument-translations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.monument-dedication-text{min-width:0}
.monument-dedication-text + .monument-dedication-text{border-left:1px solid var(--line);padding-left:36px}
.monument-dedication-text .eyebrow{margin-bottom:12px;font-size:10px}
.monument-dedication-text blockquote{font:400 21px/1.45 var(--serif);color:var(--navy);margin:0;padding:0}
.monument-family-context{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:60px;margin-top:48px;align-items:start}
.monument-donors,.monument-family-note{min-width:0}
.monument-donors .eyebrow{margin-bottom:13px}
.monument-donor-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.monument-donor-list li{font:12px/1.85 var(--mono);color:var(--navy);padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.monument-status{display:inline-block;font:500 11px/1.5 var(--mono);letter-spacing:.5px;margin:0 0 18px;padding:7px 11px;border:1px solid #bcaa79;background:#c3a14b12;color:var(--forest)}
.monument-family-note>p:not(.monument-status){font:16px/1.7 var(--sans);margin:0 0 18px}
.monument-contact{min-height:44px}
.monument-closing{font:17px/1.7 var(--sans);color:var(--navy);max-width:74ch;margin:34px 0 0;padding-top:26px;border-top:1px solid var(--line)}
@media(max-width:1050px){.monument-intro{gap:36px}.monument-intro h3{font-size:38px}.monument-gallery{gap:18px}.monument-family-context{gap:32px}.monument-dedication{padding:28px}.monument-translations{gap:26px}.monument-dedication-text + .monument-dedication-text{padding-left:26px}}
@media(max-width:700px){.monument-section{margin-top:42px;padding-top:38px}.monument-intro{display:block;margin-bottom:25px}.monument-intro h3{font-size:34px;line-height:1.12;letter-spacing:-.7px;max-width:18ch;margin-bottom:23px}.monument-intro-copy p{font-size:15px;line-height:1.7}.monument-gallery{grid-template-columns:minmax(0,1fr);gap:27px}.monument-image-button{aspect-ratio:3 / 2;padding:8px}.monument-image-action{right:8px;bottom:8px;font-size:11px}.monument-photo figcaption{font-size:13px;margin-top:11px}.monument-photo figcaption small{font-size:11px;margin-top:4px}.monument-photo-note{font-size:12px;margin-top:20px}.monument-dedication{padding:22px 20px;margin-top:30px}.monument-dedication h4,.monument-donors h4{font-size:28px;margin-bottom:21px}.monument-translations{display:block}.monument-dedication-text + .monument-dedication-text{border-left:0;border-top:1px solid var(--line);padding:21px 0 0;margin-top:21px}.monument-dedication-text blockquote{font-size:21px;line-height:1.45}.monument-family-context{display:block;margin-top:32px}.monument-donor-list li{font-size:12px;line-height:1.85;padding:15px 0}.monument-family-note{margin-top:29px}.monument-status{font-size:10px;margin-bottom:16px}.monument-family-note>p:not(.monument-status){font-size:15px;line-height:1.7}.monument-closing{font-size:15px;line-height:1.7;margin-top:27px;padding-top:23px}}

/* Homepage introduction to the generation-by-generation family tree. */
.tree-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:10px}
.tree-preview-step{position:relative;min-width:0}
.tree-preview-step>.eyebrow{font-size:9px;letter-spacing:1px;margin-bottom:16px;min-height:14px}
.tree-preview-step+.tree-preview-step:before{content:'→';position:absolute;left:-29px;top:112px;color:#a7853b;font:23px var(--serif)}
.tree-preview-couple{display:grid;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);align-items:stretch}
.tree-preview-person{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;min-width:0;min-height:192px;padding:20px 10px 16px;text-align:center;border:1px solid #bec8af;border-top:3px solid #6d7847;background:#f7f8f1;color:var(--forest)}
.tree-preview-person.us{border-color:#bbc8cc;border-top-color:#506773;background:#f3f6f7}
.tree-preview-person.direct{border:2px solid #a7853b;border-top:4px solid #a7853b;background:#f9f5e8}
.tree-preview-person:hover{background:var(--white);box-shadow:0 3px 12px #203c3210}
.tree-preview-person strong{font:600 23px/1.08 var(--serif);overflow-wrap:normal}
.tree-preview-years{font-size:12px;line-height:1.5;color:var(--muted)}
.tree-preview-person small{font-size:11px;line-height:1.4;margin-top:auto;padding-top:5px;color:#52653f}
.tree-preview-person.us small{color:#456171}
.tree-preview-marriage{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;position:relative;color:var(--muted)}
.tree-preview-marriage i{height:1px;width:100%;background:#a8b396}
.tree-preview-marriage>span{font:8px var(--mono);white-space:nowrap}
.tree-preview-note{font-size:13px;color:var(--muted);line-height:1.5;margin:15px 0 0}
.tree-preview-footer{display:flex;justify-content:space-between;align-items:center;gap:32px;border-top:1px solid var(--line);padding-top:26px;margin-top:30px}
.tree-preview-footer p{font-size:15px;line-height:1.6;max-width:550px;color:var(--muted);margin:0}
.tree-preview-footer .button{flex-shrink:0}
@media(max-width:1100px){.tree-preview-grid{gap:27px}.tree-preview-step+.tree-preview-step:before{left:-22px;font-size:20px}.tree-preview-couple{grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr)}.tree-preview-person{padding:16px 7px 13px;min-height:215px}.tree-preview-person strong{font-size:21px}.tree-preview-step>.eyebrow{font-size:8px;letter-spacing:.6px}.tree-preview-marriage>span{font-size:7px}}
@media(max-width:900px){.tree-preview-grid{grid-template-columns:1fr;gap:47px;max-width:560px;margin:0 auto}.tree-preview-step+.tree-preview-step:before{content:'↓';left:calc(50% - 7px);top:-38px;font-size:25px}.tree-preview-couple{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)}.tree-preview-person{padding:20px 14px 16px;min-height:166px}.tree-preview-person strong{font-size:25px}.tree-preview-step>.eyebrow{font-size:10px;letter-spacing:1px}.tree-preview-marriage>span{font-size:9px}.tree-preview-footer{flex-direction:column;align-items:flex-start;gap:18px}}
@media(max-width:700px){.tree-preview-person{min-height:184px;padding:17px 9px 14px}.tree-preview-person strong{font-size:23px}.tree-preview-couple{grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr)}.tree-preview-step>.eyebrow{font-size:8px}.tree-preview-marriage>span{font-size:8px}.tree-preview-note{font-size:12px}.tree-preview-footer{padding-top:23px;margin-top:27px}.tree-preview-footer p{font-size:14px}.tree-preview-footer .button{font-size:14px;gap:25px;max-width:100%}}
