/* The quiet interface is the page; the travel fragments live in its margins. */
html{scroll-behavior:smooth}body{overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}
.skip-link{position:fixed;left:18px;top:-70px;background:var(--ink);color:var(--paper);padding:14px 20px;z-index:20}.skip-link:focus{top:15px}
main:focus{outline:none}.logo{font-size:36px}.logo i{font-size:9px;letter-spacing:2px}.hand{font-family:var(--font-heading);font-style:normal;font-size:30px;line-height:1.2}.polaroid .caption{font-family:var(--font-heading);font-style:normal;font-size:25px}.collage-note{font-size:27px;right:-10px;top:3px;max-width:175px}.hero-copy .hand{font-size:24px;margin-left:155px;margin-top:19px}.hero-copy p{font-size:16px;max-width:395px}.hero-copy h1{font-size:clamp(60px,6.3vw,89px);letter-spacing:-3.3px;margin-bottom:24px}.hero{gap:48px;grid-template-columns:1fr 1fr;min-height:670px}.country-select{box-shadow:0 3px 0 #dbd3c330}.country-select label{font-size:10px}.country-select select{font-size:15px}.country-select .primary{min-height:49px}.eyebrow{line-height:1.5}.news-cutting{position:absolute;left:0;top:90px;width:180px;padding:15px 12px;background:#e7dcc2;transform:rotate(13deg);clip-path:polygon(0 3%,95% 0,100% 92%,3% 100%);font-family:Georgia,serif;font-size:12px;color:#635c49;line-height:1.15;opacity:.88}.news-cutting b{border-bottom:2px solid #635c49;display:block;padding-bottom:5px;font-size:16px;letter-spacing:1px}.news-cutting p{font-size:10px;line-height:1.35;margin-top:7px;columns:2;column-gap:8px}.collage-coordinate{position:absolute;right:80px;bottom:5px;font:10px var(--font-body);letter-spacing:2px;color:var(--muted)}.ticket{padding-right:52px;min-width:275px}.ticket:after{content:'';position:absolute;top:0;bottom:0;right:30px;border-left:1px dashed #a59b79}.ticket-barcode{position:absolute;top:20px;bottom:20px;right:8px;width:13px;background:repeating-linear-gradient(0deg,#5b5943 0px,#5b5943 1px,transparent 1px,transparent 3px,#5b5943 3px,#5b5943 5px,transparent 5px,transparent 7px)}.ticket strong{font-size:28px}.ticket small{font-size:8px;letter-spacing:1.2px}.ticket span{font-size:8px;letter-spacing:1.2px}.home-destination{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin:10px 0 75px;padding:32px 34px 32px 18px;border:1px solid var(--line);position:relative;background:#f8f4e9}.destination-photo{border:9px solid #fffaf0;transform:rotate(-2deg);height:300px;box-shadow:3px 5px 0 #d7cebb55}.destination-photo img{width:100%;height:100%;object-fit:cover}.home-destination>div:last-of-type{align-self:center}.home-destination h2{font-size:44px;margin:18px 0}.home-destination p{color:var(--muted);font-size:14px;max-width:370px;margin-bottom:24px}.destination-hand{position:absolute;bottom:14px;right:25px;font-size:30px;transform:rotate(-7deg)}.page-head p{font-size:15px}.city-button{display:block;font-family:inherit;color:inherit;text-align:left;width:100%;cursor:pointer}.city-kicker{font-size:9px;letter-spacing:2px;color:var(--muted)}.city-card h2{margin-top:9px}.city-card p{font-size:13px}.city-card:focus-visible{outline-offset:8px}.note-strip{padding:24px 28px}.note-strip .text-link{white-space:nowrap}.note-strip b{font-family:var(--font-heading);font-style:normal;font-size:29px}.hover-caption{position:absolute;bottom:0;left:0;right:0;padding:20px 17px;background:linear-gradient(transparent,#1e211fba);color:#fffbf3;font-size:12px;transform:translateY(100%);transition:transform .3s;display:flex;justify-content:space-between}.direction:hover .hover-caption,.direction:focus-visible .hover-caption{transform:translateY(0)}.direction p{font-size:14px}.direction:nth-child(3) .photo{transform:rotate(1.2deg)}.direction:first-child .photo{transform:rotate(-1deg)}.direction h2{font-size:40px}.tabs a{font-size:14px}.section-caption{font-size:11px;line-height:1.5;gap:20px}.place p{font-size:13px;min-height:43px}.place .meta{font-size:10px}.place h3{line-height:1.25}.place h3 a:hover{color:var(--red)}.card-bottom>span{font-size:11px}.add{font-size:12px;min-height:37px;min-width:134px}.image-caption{position:absolute;left:0;bottom:0;right:0;background:linear-gradient(transparent,#292c25d0);padding:35px 50px 18px 16px;color:#fff8ed;font-size:12px;line-height:1.5;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}.image-link:hover .image-caption,.image-link:focus-visible .image-caption{opacity:1;transform:translateY(0)}.image-link .discover{z-index:1}.food .photo-number,.food .image-caption{display:none}.food .place p{min-height:43px}.food .place:nth-child(3n+2){padding-top:42px}.food .image-link{box-shadow:0 4px 0 #e2d7c266}.shopping .place:nth-child(2){transform:translateY(18px)}.shopping .meta{font-size:9px}.shopping .place h3{font-size:28px;min-height:70px}.shopping .place p{min-height:62px}.shopping .image-link{aspect-ratio:1.18}.journal-card{min-height:300px;margin-top:5px;border:1px dashed #c5b599;padding:30px 26px;background:#e9e3d1;position:relative;transform:rotate(1deg)}.journal-card .hand{display:block;transform:rotate(-3deg);font-size:26px;margin-bottom:18px}.journal-card h3{font-size:30px;margin-bottom:14px}.journal-card p{font-size:13px;color:var(--muted);margin-bottom:22px;line-height:1.6}.category-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:60px}.category-bottom .hand{font-size:28px}.back-link{display:inline-block;margin-top:30px;color:var(--red);font-size:12px}.back-link:hover{text-decoration:underline}.detail{padding-top:28px}.detail h1{font-size:64px;line-height:1.05;overflow-wrap:anywhere;letter-spacing:-2px}.detail .facts{gap:25px 22px}.detail .facts dd{font-size:13px;line-height:1.5}.detail .large-add{font-size:13px;min-width:230px;width:auto}.detail-visual .tape{left:40%;top:-4px}.detail-visual .hand{font-size:29px}.photo-disclaimer{text-align:center;font-size:10px!important;margin-top:10px!important}.detail-note .eyebrow{margin-bottom:17px}.detail-note .hand{display:block;font-size:28px;margin-bottom:16px}.detail-note h3{font-size:27px}.source-link{display:inline-flex;margin-top:18px}.detail-fineprint{font-size:10px;color:var(--muted);line-height:1.6;padding-bottom:25px;border-bottom:1px solid var(--line)}.related .intro{padding-top:40px}.related .cards{padding-bottom:55px}.edit-note{padding:14px 17px;border-bottom:1px solid var(--line);font-size:12px;line-height:1.6;background:#e8e9db;color:var(--green)}.editing-active{border-color:var(--green);color:var(--green);background:#e8e9db}.day-title h3{font-size:26px}.day-title h3 em{font-family:var(--font-heading);font-size:22px;font-style:normal;color:var(--muted);display:block;margin-top:5px}.route-row{flex-wrap:wrap;gap:12px}.route-row .marker{border-color:var(--day-color);color:var(--day-color)}.route-row .row-label{min-width:120px}.row-label a{font-size:18px;line-height:1.25}.row-label a:hover{color:var(--red)}.row-label span{font-size:10px;line-height:1.4}.row-actions button{min-width:28px;min-height:32px}.row-actions button:disabled{opacity:.2}.transfer-label{flex-basis:100%;padding-left:105px;font-size:10px;color:var(--muted);display:flex;align-items:center;gap:9px}.transfer-label select{font-size:11px;color:var(--ink);border:1px solid var(--line);background:#faf6ed;padding:6px 10px;max-width:110px}.day-distance{font-size:10px;color:var(--muted);line-height:1.5;padding:13px 0}.empty-day{padding:28px 0;color:var(--muted);font-size:12px}.empty-day p+p{margin-top:8px}.empty-day a{margin-top:12px;display:inline-block}.map-panel{top:25px}.map{transform:rotate(.7deg);overflow:visible}.map svg{overflow:hidden}.map .tape{z-index:2;top:-16px;width:85px;left:42%}.map-top{font-family:var(--font-heading);font-style:normal;font-size:27px}.map-note{font-size:8px;letter-spacing:1px;bottom:15px}.map-legend{justify-content:center}.route-buttons button{font-size:12px;padding:13px 12px;white-space:nowrap}.route-help{font-size:11px;line-height:1.6}.reset-route{margin-top:15px}.demo-link{display:block;width:max-content;margin:22px auto 0}.footer-note{width:100%;display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:20px}.footer-note small{font-size:10px;margin-top:0;width:auto}.footer-info{border:0;background:transparent;font-size:10px;color:var(--muted);cursor:pointer;padding:5px 0}.footer-info:hover{color:var(--red)}.saved-ticket{background:#e8e2ce;border:1px dashed #b2a77f;padding:20px 24px;margin:0 0 25px}.saved-ticket span{font-size:10px;letter-spacing:2px;color:var(--muted)}.saved-ticket b{display:block;font:23px var(--font-heading);margin-top:12px;font-weight:400}.dialog-secondary{display:block;margin-top:18px}.maps-days{display:grid;gap:12px}.maps-days>span{font-size:12px;color:var(--muted)}dialog .eyebrow{font-size:9px}dialog h2{line-height:1.15}dialog .small-note{font-size:11px!important}.noscript{padding:40px;text-align:center}.dialog-secondary{cursor:pointer}.not-found h1{font-size:50px}.source-link:focus-visible,.footer-info:focus-visible{outline:3px solid var(--green);outline-offset:5px}
@media(min-width:1450px){.hero{min-height:710px}}
@media(max-width:1050px){.hero{gap:15px}.hero-copy h1{font-size:72px}.collage{transform:scale(.86);transform-origin:right center}.collage-note{right:0}.home-destination{gap:35px}.direction h2{font-size:33px}.card-bottom{gap:7px}.add{min-width:118px;font-size:11px}.detail{gap:35px}.detail h1{font-size:55px}.detail .facts{gap:20px 15px}.route-buttons{flex-direction:column}.route-buttons button{font-size:12px}.row-actions{flex-direction:row}.row-actions button{font-size:17px;padding:4px;min-width:22px}.row-label a{font-size:17px}.route-row img{width:47px}.transfer-label{padding-left:94px}.shopping .place h3{font-size:26px}.shopping .place{padding:18px}.shopping .place p{min-height:80px}}
@media(max-width:800px) and (min-width:651px){.hero-copy h1{font-size:62px}.hero{min-height:580px}.collage{transform:scale(.73)}.country-select{padding-left:12px}.country-select select{width:125px}.country-select .primary{gap:10px;padding:12px}.directions{gap:18px}.direction h2{font-size:29px}.direction p{font-size:13px}.cards{gap:30px 17px}.card-bottom{flex-direction:column;align-items:stretch;gap:12px}.card-bottom .add{width:100%}.place p{min-height:65px}.food .place p{min-height:65px}.food{gap:30px}.shopping .place h3{font-size:25px;min-height:66px}.shopping .place p{min-height:100px}.detail .facts{grid-template-columns:1fr}.detail h1{font-size:48px}.detail-visual>img{height:420px}.route-workspace{grid-template-columns:1fr}.map-panel{position:static;max-width:500px;width:100%;margin:auto}.route-buttons{flex-direction:row}.home-destination h2{font-size:36px}}
@media(max-width:650px){.logo{font-size:27px;letter-spacing:-1.4px}.logo i{font-size:7px;letter-spacing:1.2px}.hero{display:flex;gap:16px;padding-top:37px;padding-bottom:28px;min-height:0}.hero-copy h1{font-size:62px;letter-spacing:-2.3px;margin:20px 0}.hero-copy p{font-size:14px;max-width:355px}.hero-copy .hand{font-size:23px;margin-left:130px}.eyebrow{font-size:8px;letter-spacing:1.8px}.country-select label{font-size:9px}.country-select select{font-size:14px;width:150px}.country-select .primary{min-height:47px;padding:13px 18px;gap:18px}.collage{width:410px;max-width:calc(100vw - 25px);height:475px;transform:scale(.83);transform-origin:center top;margin:7px auto -70px}.polaroid{width:290px;top:91px;right:36px;padding:10px 10px 42px}.polaroid img{height:248px}.globe{width:375px;right:-16px;top:5px}.collage-note{top:10px;right:3px;font-size:24px;max-width:136px}.news-cutting{left:-10px;top:72px;width:135px}.news-cutting b{font-size:12px}.news-cutting p{font-size:8px}.ticket{left:-7px;bottom:5px;min-width:242px;padding:13px 43px 13px 15px}.ticket strong{font-size:25px}.ticket small{font-size:7px}.ticket span{font-size:7px}.collage-coordinate{display:none}.home-destination{grid-template-columns:1fr;padding:18px 18px 28px;gap:26px;margin-bottom:45px}.destination-photo{height:245px}.home-destination h2{font-size:37px}.home-destination p{font-size:13px}.destination-hand{font-size:25px}.journal-line{gap:10px}.journal-line>span{font-size:7px;letter-spacing:.5px}.journal-line b{font-size:17px;line-height:1.35;max-width:140px}.intro h2{font-size:33px}.page-head h1{font-size:50px;letter-spacing:-1.8px}.page-head p{font-size:14px}.crumb>a:first-child,.tabs>a:first-child{display:inline}.crumb{font-size:10px;gap:8px;padding-top:22px}.tabs{gap:20px}.tabs a{font-size:13px}.tabs .tab-count{font-size:9px}.city-card img{height:245px}.city-kicker{font-size:8px}.city-card h2{font-size:39px}.city-card p{font-size:12px}.note-strip{padding:20px}.note-strip b{font-size:28px}.note-strip .text-link{display:inline-block;margin-top:14px}.note-strip p{font-size:13px}.direction h2{font-size:37px}.direction p{font-size:14px;max-width:345px}.direction .photo{height:290px}.direction:nth-child(3) .photo,.direction:first-child .photo{transform:none}.hover-caption{transform:none;font-size:11px;padding:28px 16px 13px}.section-caption{font-size:9px;gap:15px}.section-caption>span:last-child{text-align:right;max-width:140px}.place h3{font-size:21px}.place p{font-size:12px;min-height:72px;line-height:1.5}.place .meta{font-size:8px;letter-spacing:.6px}.card-bottom{flex-direction:column;gap:11px;align-items:stretch}.card-bottom>span{font-size:10px}.add{font-size:11px;min-height:38px;min-width:0;padding:10px 5px;width:100%}.image-caption{display:none}.image-link .discover{width:28px;height:28px;right:10px;bottom:10px;font-size:18px}.food .place:nth-child(3n+2){padding-top:0}.food .place:nth-child(even){padding-top:24px}.food .place p{min-height:72px}.food .place h3{font-size:21px;min-height:52px}.food .image-link{border-width:6px;margin:7px 4px 20px;outline-offset:3px}.shopping .place:nth-child(2){transform:none}.shopping .place{padding:22px}.shopping .place h3{font-size:30px;min-height:0}.shopping .place p{min-height:0;font-size:13px}.shopping .card-bottom{flex-direction:row;align-items:center}.shopping .add{width:auto;padding:10px 14px;min-width:140px}.shopping .meta{font-size:9px}.shopping .image-link{aspect-ratio:1.5}.journal-card{min-height:0;padding:23px 19px;margin-top:0}.journal-card h3{font-size:25px}.journal-card .hand{font-size:22px}.journal-card p{font-size:12px;min-height:0}.journal-card .text-link{font-size:11px}.category-bottom{flex-direction:column;align-items:flex-start;gap:20px;padding-bottom:40px}.category-bottom .hand{font-size:27px;max-width:290px}.detail{gap:30px;padding-bottom:36px}.detail-visual>img{height:350px}.detail h1{font-size:53px;overflow-wrap:normal}.detail .eyebrow{font-size:9px}.detail p{font-size:14px}.detail-visual .hand{font-size:28px;margin-left:14px;text-align:center}.detail .facts{grid-template-columns:1fr 1fr;gap:22px 18px}.detail .facts dd{font-size:12px}.detail .large-add{width:100%;min-height:50px}.detail-note{padding-bottom:35px}.detail-note .hand{font-size:27px}.detail-fineprint{font-size:10px}.related .intro{display:flex;align-items:center;padding-top:25px;padding-bottom:25px;gap:15px}.related .intro h2{font-size:29px}.related .intro .text-link{font-size:11px}.related .cards .place:last-child{display:none}.route-toolbar .outline{padding:11px 13px;font-size:11px}.day-toggle{font-size:12px}.day-toggle>span{margin-right:8px}.day-title h3{font-size:27px}.day-title h3 em{font-size:24px;display:inline;margin-left:10px}.route-row{gap:10px}.route-row img{width:49px;height:48px}.row-label a{font-size:18px}.row-label span{font-size:10px}.row-actions{flex-direction:row}.row-actions button{font-size:20px;min-width:25px;padding:4px;min-height:35px}.transfer-label{padding-left:94px}.map-panel{position:static}.map-top{font-size:26px}.route-buttons{flex-direction:column}.route-buttons button{font-size:13px;min-height:47px}.route-help{font-size:11px}.day-distance{font-size:9px}.map-legend{gap:20px}.footer-note{align-items:start;flex-wrap:wrap;gap:10px}.footer-info{font-size:10px}footer .logo{font-size:29px}.empty h1{font-size:46px;letter-spacing:-1px}.empty h2{font-size:35px}.empty p{font-size:14px}.saved-ticket b{font-size:21px}dialog h2{font-size:33px}dialog .primary{width:100%}.maps-days .outline{font-size:12px;min-height:44px}}
@media(max-width:380px){header{padding:18px 15px}.logo{font-size:23px}.route-link{font-size:10px;padding:9px}.logo i{font-size:6px;letter-spacing:1px}.hero-copy h1{font-size:54px}.country-select select{width:130px}.country-select .primary{padding:12px 14px;gap:12px}.day-title h3 em{display:block;margin-left:0}.row-label a{font-size:16px}.route-row .row-label{min-width:85px}.row-actions{gap:0}.row-actions button{min-width:23px}.transfer-label{padding-left:93px}.shopping .card-bottom{gap:10px}.shopping .add{min-width:124px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.day-toggle{flex-wrap:wrap}.day-toggle>span{white-space:nowrap}

.route-clear{display:flex;justify-content:flex-end;margin-top:12px}.route-clear .text-link{font-size:12px;min-height:44px;color:var(--muted);border-color:var(--line)}.route-clear .text-link:hover{color:var(--red);border-color:var(--red)}.clear-dialog-actions{display:flex;gap:12px}.clear-dialog-actions>button{flex:1;min-height:44px}

.empty-route-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.empty-route-actions .outline{font-size:12px;align-items:center}
.route-add-places{display:flex;padding:6px 0 20px}.route-add-places .text-link{min-height:44px}.random-invite{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-top:36px}.random-invite .hand{font-size:25px}.random-invite .primary{font-size:12px;min-height:44px;flex-shrink:0;padding:13px 16px}
.route-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.route-buttons [data-action="maps"]{grid-column:1/-1}.route-buttons [data-action="pdf"]{background:var(--green);border-color:var(--green);color:#fff8ed}.route-buttons [data-action="pdf"]:hover{background:#405440;border-color:#405440;color:#fff8ed}.route-buttons button{min-height:44px;min-width:0;white-space:normal}.route-buttons button:disabled,dialog [data-action="pdf"]:disabled{opacity:.65;cursor:wait}
dialog{max-height:calc(100dvh - 40px);overflow-y:auto}.random-day-toggle{margin-bottom:22px;gap:6px}.random-day-toggle>span{font-size:12px}.random-day-toggle button{min-height:40px}
.random-preview{max-height:37vh;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);padding:18px;background:#faf6ed;margin-bottom:20px}.random-preview section+section{margin-top:22px;padding-top:18px;border-top:1px dashed var(--line)}.random-preview h3{display:flex;justify-content:space-between;gap:12px;font:22px var(--font-heading);margin-bottom:15px}.random-preview h3 span{font:11px var(--font-body);align-self:center;color:var(--muted)}.random-preview ol{list-style:none;padding:0;display:grid;gap:13px}.random-preview li{display:flex;gap:11px;font-size:13px;line-height:1.4}.random-preview li i{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-top:6px}.random-preview small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.random-replace-note{font-size:11px!important;line-height:1.6;margin-bottom:17px!important}.random-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.random-dialog-actions button{font-size:12px;min-height:44px;padding:12px 8px;gap:0}
@media(max-width:650px){.empty-route-actions{flex-direction:column;max-width:320px;margin:auto}.random-invite{align-items:flex-start;flex-direction:column;gap:8px}.random-invite .hand{font-size:27px}.random-invite .primary{width:100%}.random-preview{padding:15px;max-height:33vh}.random-day-toggle>span{flex-basis:100%;margin-bottom:5px}}

/* One way to discover any city; Italy is the first open chapter. */
.destination-search{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr) auto;max-width:500px;gap:13px;padding:12px 10px 12px 16px;position:relative;z-index:4}.destination-search>div{min-width:0}.destination-search .country-field{border-right:1px solid var(--line);padding-right:12px}.destination-search select{width:100%;min-height:30px;font-size:14px}.destination-search label{letter-spacing:1px;margin-bottom:5px;font-size:9px}.destination-search .primary{padding:13px 15px;min-height:46px;gap:13px;white-space:nowrap}.city-field{position:relative}.city-input-wrap{display:flex;align-items:center;gap:3px}.city-input-wrap input{width:100%;min-width:0;padding:4px 0;min-height:30px;background:transparent;border:0;color:var(--ink);font-size:14px;border-radius:0}.city-input-wrap input::placeholder{color:#8a887c}.city-toggle{border:0;background:transparent;color:var(--muted);min-width:26px;min-height:32px;padding:2px 5px;font-size:20px}.city-input-wrap:focus-within{box-shadow:0 1px 0 var(--green)}.city-input-wrap input:focus-visible{outline:none}.city-input-wrap input[aria-invalid="true"]{box-shadow:0 1px 0 var(--red)}
.city-options{position:absolute;top:calc(100% + 15px);left:-13px;width:calc(100% + 26px);padding:6px;margin:0;list-style:none;background:#fffaf0;border:1px solid var(--line);box-shadow:0 9px 20px #392b1726;max-height:240px;overflow-y:auto;z-index:5}.city-options[hidden]{display:none}.city-option{width:100%;min-height:56px;padding:9px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;background:transparent;text-align:left;color:var(--ink);font-size:14px}.city-option:hover,.city-option.active{background:#e8e9db}.city-option small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.city-availability{font-size:9px;color:var(--muted);border:1px solid var(--line);padding:4px 6px;white-space:nowrap}.city-availability.available{color:var(--green);border-color:#b4c0a7;background:#f0f3e9}.city-no-results{font-size:12px;line-height:1.6;padding:12px 10px}.city-no-results span{color:var(--muted);font-size:11px}.hero-copy .search-hint{font-size:11px;line-height:1.6;margin-top:12px;max-width:500px}.hero-copy .search-error{font-size:12px;line-height:1.6;color:var(--red);margin-top:12px;max-width:500px}.hero-copy .home-hand{margin:19px 0 0 35px;transform:rotate(-2deg);font-size:27px}
.hero-copy h1{font-size:clamp(48px,5.8vw,82px)}.world-collage{height:540px}.world-sheet{position:absolute;right:50px;top:75px;width:370px;padding:18px 18px 23px;background:#fffaf0;border:1px solid #e0d7c6;box-shadow:0 8px 20px #392b1720;transform:rotate(-7deg)}.world-sheet .tape{top:-13px;left:38%}.world-sheet-label{font-size:8px;letter-spacing:2px;display:block;text-align:center;color:var(--muted);padding:3px 0 9px;border-bottom:1px solid var(--line)}.world-sheet .globe{position:static;display:block;width:100%;height:auto;opacity:.9;color:#7b846d;margin:12px auto 3px}.world-sheet-caption{display:block;text-align:center;font-size:25px;white-space:nowrap;margin-top:5px}.world-collage .news-cutting{top:120px;left:-5px}.world-collage .ticket{z-index:3;bottom:0;left:-4px}.world-collage .ticket span{font-size:7px;letter-spacing:.8px}.world-collage .collage-note{top:5px;right:5px;max-width:160px;font-size:27px}.world-principles .step h3{font-size:38px}.world-principles .step:nth-child(1) h3{color:var(--red)}.world-principles .step:nth-child(2) h3{color:var(--green)}.world-principles .step:nth-child(3) h3{color:#92713f}.home-route-note{margin-bottom:60px}.home-destination .destination-hand{font-size:24px;right:18px;bottom:10px}
@media(max-width:1050px) and (min-width:651px){.destination-search{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);padding:14px;gap:13px}.destination-search>.primary{grid-column:1/-1}.world-sheet{right:30px}.city-options{left:-5px;width:calc(100% + 10px)}.world-sheet-caption{font-size:24px}.world-principles .step h3{font-size:31px}}
@media(max-width:650px){.destination-search{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);padding:14px;gap:13px;max-width:100%}.destination-search .primary{grid-column:1/-1;min-height:46px}.destination-search .country-field{padding-right:12px}.destination-search select,.city-input-wrap input{font-size:14px}.city-options{left:-6px;width:calc(100% + 12px)}.city-option{padding:10px 7px;font-size:13px;gap:6px}.city-availability{font-size:8px;padding:4px}.hero-copy .search-hint{font-size:10px}.hero-copy .home-hand{font-size:25px;margin-left:20px}.world-collage{height:465px;margin-top:12px;margin-bottom:-65px}.world-sheet{width:320px;right:36px;top:60px;padding:16px 16px 20px}.world-sheet-caption{font-size:23px}.world-sheet-label{font-size:7px;letter-spacing:1.4px}.world-collage .news-cutting{left:-5px;top:95px}.world-collage .collage-note{top:0;right:2px;font-size:24px;max-width:145px}.world-collage .ticket{bottom:0;left:0;min-width:260px}.world-collage .ticket span{font-size:6.5px;letter-spacing:.6px}.world-principles .step h3{font-size:33px}.home-route-note{margin-bottom:40px}.home-destination .destination-hand{font-size:21px}.hero-copy h1{font-size:clamp(43px,13.6vw,68px)}}
@media(max-width:380px){.city-option{flex-wrap:wrap;gap:5px}.city-availability{margin-left:0}.world-sheet{right:12px}.world-collage .collage-note{right:0}}.route-row{position:relative}.route-row .row-actions{flex-direction:row;flex-shrink:0;align-items:center;gap:2px}.route-drag-source{opacity:.3}
@media(max-width:650px){.route-row .row-actions{gap:0}}

/* A full-day visit remains a suggestion; the traveller controls manual edits. */
.visit-recommendation{display:inline-block;color:var(--red);font-size:11px;line-height:1.5;padding:7px 10px;border:1px dashed #cbb39a;background:#f5ebdc}
.detail .detail-recommendation{font-size:12px;color:var(--red);margin:0 0 18px}
.vatican-planning-note{margin:0 0 22px;padding:20px 24px;border-left:3px solid var(--red);background:#eee6d4}
.vatican-planning-note strong{font:24px var(--font-heading);display:block;margin-bottom:8px}
.vatican-planning-note p{color:var(--muted);font-size:12px;line-height:1.7;max-width:760px}
.vatican-planning-note .text-link{display:inline-block;margin-top:12px;font-size:12px;text-align:left}
@media(max-width:650px){.visit-recommendation{font-size:10px;padding:6px 8px}.vatican-planning-note{padding:17px 18px}.vatican-planning-note strong{font-size:21px}}
.journal-card-wide{grid-column:1/-1;min-height:0;transform:none;display:grid;grid-template-columns:1.1fr 1fr auto;gap:14px 28px;align-items:center}
.journal-card-wide .hand{grid-column:1/-1;font-size:26px}.journal-card-wide h3{margin:0;font-size:28px}.journal-card-wide p{margin:0}.journal-card-wide .text-link{font-size:12px}
@media(max-width:650px){.journal-card-wide{grid-template-columns:1fr;gap:14px;padding:24px}.journal-card-wide h3{font-size:26px}}

/* New chapters and saved journeys share the paper journal palette. */
.home-destination-list{margin:0 0 75px}.home-destination-list .intro{padding-top:0}
.country-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;padding:12px 5px 65px}
.country-card{background:#faf6ed;border:1px solid var(--line);padding:14px;box-shadow:3px 5px 0 #d7cebb55;transition:transform .2s}
.country-card:hover{transform:translateY(-5px)}.country-card:focus-visible{outline-offset:6px}
.country-photo{height:270px;position:relative}.country-photo img{width:100%;height:100%;object-fit:cover;filter:sepia(.1)}.country-photo .tape{top:-23px;left:38%}
.country-chapter{position:absolute;bottom:15px;left:15px;padding:7px 10px;background:#fffaf0e8;color:var(--red);font-size:10px;letter-spacing:1.5px;text-transform:uppercase}
.country-copy{padding:24px 17px 14px}.country-copy h2{display:flex;justify-content:space-between;gap:15px;margin:9px 0 12px;font-size:40px}.country-copy h2 span{color:var(--red);font-size:30px}.country-copy p{font-size:13px;color:var(--muted)}
.city-grid.single-city{grid-template-columns:minmax(0,720px)}.single-city .city-card img{height:390px}
.favorites-link{white-space:nowrap}#favorites-count{display:inline-block;border-bottom:1px solid var(--red);color:var(--red);margin-left:6px;min-width:15px;text-align:center}
.route-city-switch{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:22px 0 5px}.route-city-switch>span{font-size:10px;color:var(--muted);margin-right:8px}.route-city-switch button{background:transparent;border:1px solid var(--line);padding:9px 16px;font-size:12px;color:var(--ink);border-radius:2px}.route-city-switch button.active{border-color:var(--red);color:var(--red);background:#a9312409}.route-city-switch .text-link{margin-left:auto;font-size:11px}
.favorite-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;padding:10px 0 35px}.favorite-card{min-width:0;background:#faf6ed;border:1px solid var(--line);display:flex;flex-direction:column;box-shadow:3px 5px 0 #d7cebb44}.favorite-photo{height:225px;position:relative;margin:12px 12px 0;overflow:hidden}.favorite-photo img{width:100%;height:100%;object-fit:cover;filter:sepia(.1)}.favorite-photo>span{position:absolute;left:14px;bottom:14px;background:#fffaf0eb;padding:7px 10px;font-size:10px;color:var(--red);letter-spacing:.4px}.favorite-copy{padding:25px;display:flex;flex:1;flex-direction:column}.favorite-copy .eyebrow{font-size:9px;letter-spacing:1px}.favorite-copy h2{font-size:30px;line-height:1.2;overflow-wrap:anywhere;margin:14px 0}.favorite-copy p{font-size:12px;color:var(--muted);margin-bottom:23px}.favorite-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}.favorite-actions button{padding:12px 15px;font-size:11px;min-height:44px}.favorite-remove{align-self:flex-start;margin-top:18px;font-size:10px;color:var(--muted);min-height:32px}.favorite-remove:hover{color:var(--red)}.favorite-storage-note{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding:20px 0 55px;line-height:1.6}.favorite-empty{padding:35px 0 70px;max-width:610px}.favorite-empty .hand{display:block;margin:10px 0 28px}.favorite-empty h2{font-size:40px;line-height:1.15;margin-bottom:20px}.favorite-empty p{font-size:14px;color:var(--muted);max-width:460px;margin-bottom:27px}.favorite-name-label{display:block;font-size:10px;color:var(--muted);margin-bottom:8px}.favorite-name-input{display:block;width:100%;background:#fffaf0;border:1px solid var(--line);padding:12px;color:var(--ink);margin-bottom:22px;font-size:14px;min-height:44px}
@media(max-width:1050px){header{gap:18px}header nav{gap:20px;font-size:12px}.favorite-copy{padding:21px}.favorite-copy h2{font-size:28px}.country-grid{gap:25px}.country-photo{height:240px}}
@media(max-width:800px){header{flex-wrap:wrap}header nav{margin-left:auto}.favorite-actions button{flex:1}}
@media(max-width:650px){header{display:grid;grid-template-columns:1fr;gap:17px}header .logo{justify-self:start}header nav{margin-left:0;width:100%;justify-content:space-between;gap:10px;font-size:11px}header nav>a:first-child{display:inline}header nav>a:first-child span{margin-left:3px}.route-link{white-space:nowrap;padding:10px}.home-destination-list{margin-bottom:35px}.country-grid{grid-template-columns:1fr;gap:30px;padding:10px 3px 40px}.country-photo{height:235px}.country-copy{padding:20px 10px 12px}.country-copy h2{font-size:35px}.country-copy p{font-size:12px}.single-city .city-card img{height:285px}.route-city-switch{gap:8px;padding-top:20px}.route-city-switch>span{flex-basis:100%;margin-bottom:3px}.route-city-switch button{padding:10px 14px}.route-city-switch .text-link{font-size:10px}.favorite-grid{grid-template-columns:1fr;gap:25px}.favorite-photo{height:210px}.favorite-copy{padding:22px}.favorite-copy h2{font-size:30px}.favorite-actions{gap:9px}.favorite-actions button{flex:1;padding:12px 9px;font-size:11px;white-space:nowrap}.favorite-empty h2{font-size:35px}.favorite-empty .hand{font-size:26px}.favorite-storage-note{padding-bottom:35px}.favorite-name-input{font-size:16px}}
@media(max-width:380px){header nav{font-size:10px;gap:8px}.route-link{font-size:10px;padding:9px 8px}#count{margin-left:5px;padding-left:5px}.favorites-link #favorites-count{margin-left:3px}.favorite-actions{flex-direction:column}.favorite-actions button{width:100%}.route-city-switch .text-link{margin-left:0;padding-left:5px}}

@media(min-width:651px){.city-grid.city-trio .city-card:last-child{grid-column:1/-1;transform:rotate(.7deg)}.city-grid.city-trio .city-card:last-child:hover{transform:rotate(0) translateY(-5px)}}

/* Авторский знак проекта: оригинальный PNG без изменения пропорций. */
.logo{display:inline-flex;align-items:center;gap:12px;letter-spacing:-1px}.logo .logo-wordmark{font-weight:700}.logo-mark{display:block;width:51px;height:54px;object-fit:contain;flex-shrink:0}.logo.small .logo-mark{width:38px;height:40px}
@media(max-width:650px){header{gap:12px;flex-wrap:wrap}header nav{flex-basis:100%;justify-content:space-between}header .logo{font-size:20px;gap:7px;letter-spacing:-.7px}header .logo-mark{width:29px;height:31px}header nav{gap:7px}header .route-link{padding:9px 7px}}
@media(max-width:380px){header .logo{font-size:18px;gap:5px}header .logo-mark{width:25px;height:27px}header nav{gap:5px}header .favorites-link{font-size:10px}header .route-link{font-size:10px}}
