/* Warm editorial appearance; layout.css retains the information hierarchy. */
@font-face{font-family:GuidePretendard;src:url('../assets/fonts/PretendardVariable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--cream:#fff9ee;--paper:#fffdf8;--line:#e5d9c6;--text-muted:#65717a;--shadow:0 8px 28px #75552909;--rust:#a84d38;--olive:#65794d;--radius:16px}
body{background:radial-gradient(ellipse at 12% 0,#eedbbd38,transparent 45%),var(--cream)}
.site-header{background:#fffaf1f5;border-bottom-color:#e7dcc9}.brand-emblem{width:32px;height:32px;flex-shrink:0}.desktop-nav a[aria-current]:after,.bottom-nav a[aria-current]:before{background:var(--terracotta)}
.brand-name{font-size:18px}.brand-name small{letter-spacing:.08em}.button{border-radius:9px}.button.primary{background:linear-gradient(130deg,#ae503a,#bd6550);border-color:#ad523d;box-shadow:0 3px 8px #a84d3812}.button.primary:hover{background:#9c4835}.button.secondary{background:var(--paper)}.button:hover{background:#f5eddf}.subtle-link{color:var(--rust)}
.home-hero{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:28px;padding-top:26px}.home-hero h1{font-size:30px;margin-top:10px}.destination-title{font:italic 56px/1.05 var(--serif);letter-spacing:-.055em;margin:0 0 18px;color:var(--navy)}.overview-period{color:var(--rust);font-size:12px;letter-spacing:.12em}.home-hero .hero-description{font-size:15px}.hero-art img{border-radius:0;mix-blend-mode:multiply}.home-hero .hero-art{align-self:center}.trip-summary{margin-top:27px}.summary-item strong{font:400 38px/1.2 var(--serif);letter-spacing:-.04em}.summary-item strong span{font:500 16px var(--sans)}.summary-item small{margin-top:5px}.hero-actions{margin-top:25px}
.today-strip{background:#f3eddc;border-color:#e6d9bf;border-radius:12px}.today-strip .button{color:var(--rust)}.section{margin-top:54px}.section-head h2:before{content:'';display:inline-block;width:5px;height:22px;border-radius:4px;background:var(--terracotta);margin-right:11px;vertical-align:-3px}
.route-stops li:before{color:var(--olive);font:italic 15px var(--serif)}.route-stops li{border-bottom-color:#e7ddce}.route-notes{background:#edf0e2;border:1px solid #dfe5d1;border-radius:10px}.route-notes dd{color:#4f6240}.atlas-map{box-shadow:var(--shadow);border-color:#deceb2}
.entry-card{background:var(--paper);border-radius:14px;border-color:var(--line);box-shadow:var(--shadow);border-top:3px solid #9eae7e}.entry-card:nth-child(2){border-top-color:#cc9775}.entry-card:nth-child(3){border-top-color:#85b4c5}.entry-card:hover{border-color:#b7986e}.entry-card .icon{color:var(--rust)}.planning-summary{background:#f0f1e5;border:1px solid #dfe3cd;border-radius:14px;padding:25px 28px}.planning-summary h2{color:#536541}
.page-hero{grid-template-columns:minmax(0,1fr) 280px;min-height:208px;padding:26px 0 24px}.page-hero figure{width:280px}.page-hero:not(.itinerary-hero) img{mix-blend-mode:multiply;border-radius:0}.page-hero h1{font-size:35px}.page-hero p{max-width:550px}.page-hero:not(:has(figure)){background:linear-gradient(100deg,#f3ead761,transparent 75%);border-radius:0 0 25px 0;margin-bottom:12px;padding:30px 0 24px}.eyebrow{color:var(--rust)}
.itinerary-controls,.day-card,.stay-card,.packing-group,.family-card{background:var(--paper);border-color:var(--line);border-radius:13px;box-shadow:var(--shadow)}.itinerary-controls{padding:16px 18px}.control-top{border-color:#e8dfd2}.segmented{background:#f1eadc}.segmented button[aria-pressed=true]{background:#fffdf7;color:var(--navy)}.chip{border-radius:18px}.chip[aria-pressed=true]{background:#315e79;color:#fffdf8}.badge{background:#e9f0f3;color:#315e79;border-radius:5px}.badge.olive{background:#edf0df;color:#566b3c}.badge.optional{background:#eee7f4;color:#765b8b}.badge.warning{background:#f8e6dd;color:#984a35}
.region-heading img{width:80px;height:60px;border-radius:9px}.region-heading{gap:15px}.region-heading h2{font-size:24px}.region-count{font:italic 19px var(--serif);color:var(--olive)}.day-number b{font:400 30px/1.1 var(--serif)}.day-number small{color:var(--olive)}.day-card[open]{border-color:#bac5aa;box-shadow:0 6px 20px #74634108}.rest-day summary{background:#eff2e6}.quick-facts{background:#f2f0e6}.timeline-time{color:#42778d}.timeline-body:before{background:var(--terracotta)}.baby-line{background:#fbf0df;color:#795737}.note.family{background:#edf0e3;color:#53663f}.note.drive{background:#edf3f3;color:#3a6579}.note.verify,.note.baby{background:#fbede3;color:#884f35}.note.weather{background:#f0eaf4;color:#6d5580}
.stay-overview a{background:var(--paper);border-radius:10px}.stay-overview span,.stay-heading .nights{color:var(--olive)}.stay-top{grid-template-columns:minmax(0,1fr) 290px;gap:32px;padding:28px}.stay-top>img{display:block;width:290px;aspect-ratio:3/2;mix-blend-mode:multiply}.stay-bottom{background:#f0f2e8;border-top-color:#e0e3d3}.warning-card{background:#fcf1e7;border-color:#e3cab8;border-left-color:var(--terracotta);border-radius:10px}
.packing-progress{background:#f1eedc;border-color:#e2d6b7;border-radius:14px}.packing-progress progress::-webkit-progress-value{background:var(--olive)}.packing-progress progress::-moz-progress-bar{background:var(--olive)}.packing-group-head{background:#faf4e8}.check-row input{accent-color:var(--olive)}.packing-item-note{display:block;font-size:11px;line-height:1.6;color:var(--text-muted);margin-top:4px}.packing-categories a:hover{color:var(--rust)}
.operation-summary{background:#eff1e3;border-color:#dfe4ce;border-radius:12px}.operation-summary>div{border-color:#d9dfc8}.family-card .callout,.mobility-compare>div,.shift-schedule{background:#f2f2e7;color:#536344}.section-index{color:var(--olive)}.site-footer{border-top-color:#ddd1bc;background:linear-gradient(180deg,transparent,#f5ecd8)}.bottom-nav{background:#fffcf5fa;border-color:var(--line)}.bottom-nav a[aria-current]{color:var(--rust)}
.guide-jumps{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}.guide-jumps a{padding:8px 14px;border:1px solid var(--line);background:var(--paper);border-radius:20px;font-size:12px;min-height:40px;display:inline-flex;align-items:center}.guide-jumps a:hover{border-color:var(--terracotta);color:var(--rust)}
.travel-section{margin:0 0 38px;scroll-margin-top:95px}.travel-section>.section-head{margin-bottom:18px}.travel-section>.section-head h2{font-size:25px}.travel-section>.section-head p{font-size:13px}.ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.travel-card{padding:25px;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.ticket-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:var(--rust);margin-bottom:18px}.ticket-label h3{font-size:15px}.flight-route{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center}.airport-code{font:400 35px/1.2 var(--serif);display:block}.flight-route .arrival{text-align:right}.airport-city{font-size:12px;color:var(--text-muted);display:block;margin-top:3px}.flight-via{text-align:center;font-size:11px;color:var(--text-muted);line-height:1.7}.flight-via b{display:block;font-size:20px;font-weight:400;color:#769ba5;letter-spacing:.08em}.flight-times{display:flex;justify-content:space-between;gap:14px;margin-top:20px;padding-top:15px;border-top:1px dashed #d9cbb5}.flight-times div:last-child{text-align:right}.flight-times strong{font-size:20px;font-weight:600}.flight-times small{display:block;color:var(--text-muted);font-size:11px;margin-top:4px}.travel-caption{font-size:12px;color:var(--text-muted);margin-top:12px;line-height:1.8}
.rental-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:20px}.rental-header h3{font-size:22px}.rental-header p{font-size:12px;margin-top:5px;color:var(--text-muted)}.rental-times{display:grid;grid-template-columns:1fr 1fr;gap:25px}.rental-times>div+div{border-left:1px solid var(--line);padding-left:25px}.rental-times dt{font-size:12px;color:var(--rust);margin-bottom:8px}.rental-times dd{margin:0}.rental-times strong{font-size:21px;font-weight:600}.rental-times small{display:block;font-size:12px;margin-top:7px;line-height:1.7;color:var(--text-muted)}.rental-docs{margin-top:20px;padding-top:20px;border-top:1px dashed var(--line)}.rental-docs h3{font-size:16px;margin-bottom:12px}.document-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.document-list li{margin:0;border-radius:9px;background:#f3f0e5;padding:14px;font-size:13px;font-weight:600}.document-list small{display:block;font-size:11px;font-weight:400;color:var(--text-muted);margin-top:5px;line-height:1.65}.rental-docs .travel-caption{max-width:850px}.practical-list{padding-left:19px;font-size:13px;line-height:1.85;margin:14px 0 0}.practical-list li+li{margin-top:9px}
.drive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.drive-card{padding:22px;border:1px solid var(--line);border-radius:12px;background:#fcf7eb}.drive-card h3{font-size:17px;margin-bottom:10px}.drive-card p{font-size:13px;line-height:1.85;color:#526273}.source-note{font-size:11px;color:var(--text-muted);line-height:1.8;margin:14px 0 0}.source-note a{text-decoration:underline;text-underline-offset:3px;display:inline-block;margin-right:9px;color:#466c7d}.source-note summary{cursor:pointer;min-height:32px;display:list-item}.source-note[open] summary{margin-bottom:7px}
.flight-guide{border:1px solid var(--line);border-radius:16px;background:var(--paper);overflow:hidden}.flight-guide-block{padding:24px 27px;border-top:1px solid var(--line)}.flight-guide-block:first-child{border:0}.flight-guide-block h3{font-size:19px;margin-bottom:13px}.flight-guide-block>p{font-size:13px;line-height:1.85;color:#536473}.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:0}.role-grid dt{font-size:13px;font-weight:600;margin-bottom:6px;color:#536b43}.role-grid dd{font-size:13px;line-height:1.8;margin:0;color:var(--text-muted)}.seat-plan{display:grid;grid-template-columns:24px repeat(4,minmax(0,1fr)) 24px;gap:10px;align-items:center;margin:20px 0 15px;max-width:760px}.seat-plan .aisle{font-size:10px;color:var(--text-muted);text-align:center;writing-mode:vertical-rl;justify-self:center}.seat{padding:19px 8px;border:1px solid #cfd9c1;border-bottom:5px solid #a9ba8d;border-radius:15px 15px 8px 8px;text-align:center;background:#f0f3e6;font-size:13px;font-weight:600}.seat small{display:block;font-size:10px;font-weight:400;margin-top:4px;color:var(--text-muted)}.seat.infant{background:#fbeed9;border-color:#deba7c;border-bottom-color:#c99951}.flight-tips{display:grid;grid-template-columns:1fr 1fr;gap:20px 30px}.flight-tips h4{font-size:14px;margin:0 0 6px}.flight-tips p{font-size:13px;line-height:1.8;color:var(--text-muted)}.flight-checks{font-size:13px;line-height:1.9;margin:14px 0 0;padding:14px 18px;border-radius:9px;background:#f2f3e7;color:#526344}.day-resource-link{display:block;font-size:12px;text-decoration:underline;text-underline-offset:4px;color:var(--rust);padding:7px 0;min-height:36px}.packing-trip-note{margin:0 0 18px;padding:14px 16px;background:#f0f2e6;border-radius:10px;font-size:12px;line-height:1.8}.packing-trip-note a{text-decoration:underline;text-underline-offset:3px;color:var(--rust)}
@media(max-width:1000px){.destination-title{font-size:45px}.home-hero h1{font-size:27px}.home-hero{gap:22px}.stay-top{grid-template-columns:minmax(0,1fr) 240px}.stay-top>img{width:240px}.document-list{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.destination-title{font-size:38px}.home-hero h1{font-size:23px}.page-hero{grid-template-columns:minmax(0,1fr) 230px}.page-hero figure{width:230px}.page-hero h1{font-size:31px}.stay-top{grid-template-columns:minmax(0,1fr) 190px;gap:22px}.stay-top>img{width:190px}.flight-route{gap:8px}.travel-card{padding:21px}.role-grid{gap:14px}.rental-times strong{font-size:18px}}
@media(max-width:600px){.brand-emblem{width:27px;height:27px}.brand-name{font-size:15px}.brand-name small{font-size:9px}.home-hero{gap:16px;padding-top:27px}.destination-title{font-size:43px;line-height:1.08;margin-bottom:15px}.home-hero h1{font-size:26px;margin-top:8px}.overview-period{font-size:10px;letter-spacing:.08em}.home-hero .hero-description{font-size:13px;margin-top:7px}.trip-summary{margin-top:22px}.summary-item strong{font-size:35px}.summary-item strong span{font-size:15px}.hero-actions{margin-top:23px}.home-hero .hero-art{width:100%;align-self:stretch}.hero-art img{border-radius:0}.section{margin-top:35px}.section-head h2:before{height:19px;width:4px;margin-right:8px;vertical-align:-2px}.today-strip{margin-top:12px}.entry-card{border-top-width:1px;border-left:3px solid #9eae7e}.entry-card:nth-child(2){border-top-color:var(--line);border-left-color:#cc9775}.entry-card:nth-child(3){border-top-color:var(--line);border-left-color:#85b4c5}.planning-summary{padding:20px}.page-hero{grid-template-columns:minmax(0,1fr) 130px;align-items:center;gap:10px;min-height:145px;padding:20px 0}.page-hero:not(.itinerary-hero) figure{width:130px;margin:0}.page-hero h1{font-size:28px}.page-hero p{font-size:12px}.page-hero:not(:has(figure)){padding:26px 0 19px}.region-heading img{width:65px;height:49px}.region-heading h2{font-size:20px}.region-count{font-size:17px}.day-number b{font-size:27px}.itinerary-controls{padding:12px}.stay-top{display:flex;flex-direction:column;gap:15px;padding:18px}.stay-top>img{display:block;order:0;width:100%;height:150px;aspect-ratio:auto;object-fit:contain;align-self:center}.stay-info{width:100%}.stay-heading h2{font-size:24px}.stay-heading .nights{font:400 30px/1 var(--serif)}.guide-jumps{gap:6px;margin-bottom:24px}.guide-jumps a{font-size:11px;padding:7px 11px;min-height:38px}.travel-section{margin-bottom:30px}.travel-section>.section-head h2{font-size:22px}.travel-section>.section-head p{font-size:12px}.ticket-grid,.drive-grid,.flight-tips{grid-template-columns:1fr;gap:13px}.travel-card{padding:20px}.ticket-label{margin-bottom:15px}.airport-code{font-size:34px}.flight-route{gap:16px}.rental-header{align-items:start}.rental-header h3{font-size:20px}.rental-times{grid-template-columns:1fr;gap:18px}.rental-times>div+div{padding:17px 0 0;border-left:0;border-top:1px solid var(--line)}.rental-times strong{font-size:21px}.document-list{gap:8px}.document-list li{font-size:12px;padding:12px}.document-list small{font-size:10px}.drive-card{padding:19px}.drive-card h3{font-size:16px}.flight-guide-block{padding:21px 17px}.flight-guide-block h3{font-size:17px}.role-grid{grid-template-columns:1fr;gap:15px}.role-grid>div{padding-left:12px;border-left:2px solid #b6c6a1}.seat-plan{gap:5px;grid-template-columns:13px repeat(4,minmax(0,1fr)) 13px;margin-top:17px}.seat{font-size:11px;padding:15px 3px}.seat small{font-size:9px}.seat-plan .aisle{font-size:9px}.flight-checks{padding:12px 13px;font-size:12px}.source-note{font-size:10px}.flight-times strong{font-size:20px}.packing-item-note{font-size:11px}.packing-trip-note{font-size:11px}.family-card{border-radius:12px}.operation-summary strong{font-size:12px}}
@media print{body{background:white}.brand-emblem,.guide-jumps{display:none}.travel-card,.drive-card,.flight-guide-block{break-inside:avoid}.home-hero{grid-template-columns:1fr 260px}.destination-title{font-size:36px}.flight-guide{overflow:visible}.ticket-grid{grid-template-columns:1fr 1fr}.stay-top>img{display:none}}
