@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;600;800&family=Parisienne&display=swap');
:root{--ink:#292518;--muted:#746d58;--paper:#f8ecd5;--paper2:#fff9ec;--card:#fffaf0;--olive:#59683c;--sage:#cfd8b6;--vine:#879465;--terracotta:#a95534;--wine:#6d3644;--pool:#6f98a0;--gold:#c79a43;--line:#4c3a1f24;--shadow:0 22px 70px #3d2b151f;--radius:26px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,sans-serif;color:var(--ink);background:var(--paper);min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-3;background:radial-gradient(circle at 12% 8%,#fff7db 0 12%,transparent 27%),radial-gradient(circle at 86% 14%,#d8e5c0 0 10%,transparent 28%),linear-gradient(180deg,#f7e8c9 0%,#fbf2df 48%,#e8e0c1 100%)}body:after{content:"";position:fixed;inset:0;z-index:-2;opacity:.34;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E")}.skyline{position:fixed;left:0;right:0;bottom:0;height:38vh;z-index:-1;pointer-events:none;background:linear-gradient(175deg,transparent 0 42%,#b98d5740 42.5% 48%,transparent 48.5%),linear-gradient(168deg,transparent 0 55%,#7d8c5540 55.5% 61%,transparent 61.5%),linear-gradient(180deg,transparent 0 62%,#53633b22 62%)}.skyline:before,.skyline:after{content:"";position:absolute;inset:auto -5vw 0;height:25vh;background:radial-gradient(ellipse at 12% 100%,#5f6d3d33 0 18%,transparent 18.5%),radial-gradient(ellipse at 35% 100%,#8f6e4438 0 25%,transparent 25.5%),radial-gradient(ellipse at 70% 100%,#65734230 0 29%,transparent 29.5%)}.shell{width:min(1420px,94vw);margin:0 auto;padding:34px 0 56px}.hero{position:relative;display:grid;gap:14px;max-width:1080px;margin:0 0 22px;padding:22px 28px;border:1px solid var(--line);border-radius:34px;background:linear-gradient(135deg,#fff8e8dd,#f4e3c2cc);box-shadow:var(--shadow);overflow:hidden}.hero:before,.dossier-head:before{content:"";position:absolute;inset:12px auto auto 12px;width:160px;height:90px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='130' viewBox='0 0 240 130'%3E%3Cg fill='none' stroke='%2359683c' stroke-width='5' stroke-linecap='round'%3E%3Cpath d='M10 105C65 42 122 16 222 17'/%3E%3C/g%3E%3Cg fill='%2359683c' opacity='.78'%3E%3Cellipse cx='43' cy='75' rx='9' ry='20' transform='rotate(45 43 75)'/%3E%3Cellipse cx='70' cy='56' rx='8' ry='18' transform='rotate(52 70 56)'/%3E%3Cellipse cx='101' cy='40' rx='8' ry='18' transform='rotate(58 101 40)'/%3E%3Cellipse cx='137' cy='28' rx='8' ry='18' transform='rotate(70 137 28)'/%3E%3Cellipse cx='176' cy='21' rx='8' ry='18' transform='rotate(80 176 21)'/%3E%3Ccircle cx='61' cy='70' r='6' fill='%232c2a1c'/%3E%3Ccircle cx='119' cy='44' r='6' fill='%232c2a1c'/%3E%3Ccircle cx='159' cy='28' r='6' fill='%232c2a1c'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;opacity:.45}.hero:after{content:"JD";position:absolute;right:32px;top:18px;font-family:Parisienne,cursive;font-size:72px;color:#6f78524a}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:var(--terracotta);font-size:12px;margin:0}.hero h1{font-family:Cormorant Garamond,serif;font-size:clamp(38px,5.8vw,78px);line-height:.92;margin:0;letter-spacing:-.035em;max-width:980px}.intro{font-size:18px;max-width:820px;line-height:1.55;color:#564f3c}.panel{background:linear-gradient(180deg,#fffaf0ee,#f8edd7ee);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);backdrop-filter:blur(12px)}button,.button{border:0;background:var(--ink);color:#fff6df;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 17px;transition:.18s transform,.18s box-shadow,.18s background}button:hover,.button:hover{transform:translateY(-2px);box-shadow:0 12px 30px #0002}.button.ghost{background:#fffaf0;color:var(--ink);border:1px solid var(--line)}.workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;align-items:start}.trip-list,.editor{padding:18px}.trip-list{position:sticky;top:16px}.trip-list h2,.editor h2{font-family:Cormorant Garamond,serif;font-size:32px;margin:0 0 8px}.trip-card{width:100%;text-align:left;color:var(--ink);display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:22px;margin:12px 0;background:#fff9eb;cursor:pointer}.trip-card.active{outline:3px solid #87946580}.trip-card b{display:block;font-family:Cormorant Garamond,serif;font-size:21px;line-height:1}.trip-card small,.trip-card em{display:block;grid-column:2;font-style:normal;font-size:12px;color:var(--muted)}.mini-art{grid-row:1/4;width:38px;height:38px;border-radius:50%;background:radial-gradient(circle at 50% 38%,#fff5cf 0 18%,#d7a74d 19% 28%,transparent 29%),linear-gradient(160deg,#7a8c55 0 48%,#b97944 49%)}.empty{display:grid;place-items:center;min-height:380px;color:var(--muted);border:2px dashed var(--line);border-radius:24px}.small{font-size:13px;color:var(--muted)}.dossier{display:grid;gap:16px}.dossier-head{position:relative;min-height:250px;background:linear-gradient(135deg,#fff9ec,#f1dfbd 70%,#dfe7ce);border:1px solid var(--line);border-radius:32px;padding:26px;overflow:hidden}.dossier-head:after{content:"";position:absolute;right:-40px;bottom:-50px;width:390px;height:210px;background:linear-gradient(170deg,transparent 0 36%,#7d8c5555 36.5% 45%,transparent 45.5%),linear-gradient(160deg,transparent 0 48%,#b1784650 48.5% 58%,transparent 58.5%),radial-gradient(ellipse at 55% 80%,#fff3 0 28%,transparent 29%)}.dossier-head h2{font-family:Cormorant Garamond,serif;font-size:clamp(38px,5.4vw,74px);line-height:.9;margin:8px 0 6px;max-width:820px}.lede{font-size:18px;line-height:1.45;color:#514a37;max-width:760px}.date-ribbon{display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;background:#fffaf0cc;border:1px solid var(--line);border-radius:999px;padding:11px 16px;font-weight:800;color:#4f4a36}.date-ribbon i{width:34px;height:1px;background:var(--gold)}.action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.jump-bar{position:sticky;top:12px;z-index:5;display:flex;gap:8px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:999px;background:#fff7e8e6;box-shadow:0 10px 30px #3d2b1512;backdrop-filter:blur(16px)}.jump-bar a{white-space:nowrap;text-decoration:none;color:var(--ink);font-weight:800;font-size:13px;padding:8px 13px;border-radius:999px;background:#ffffff70}.priority-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.priority-card{min-height:174px;text-decoration:none;color:var(--ink);background:linear-gradient(180deg,#fffaf0,#f3e4c7);border:1px solid var(--line);border-top:6px solid var(--accent);border-radius:24px;padding:15px;display:flex;flex-direction:column;gap:8px;box-shadow:0 16px 40px #3d2b1512;transition:.18s transform}.priority-card:hover{transform:translateY(-3px)}.priority-card small{text-transform:uppercase;letter-spacing:.11em;font-weight:800;color:var(--muted);font-size:10px}.priority-card b{font-family:Cormorant Garamond,serif;font-size:24px;line-height:1.02}.priority-card em{margin-top:auto;font-style:normal;font-size:12px;color:var(--muted);line-height:1.35}.glyph{width:42px;height:42px;border-radius:15px;display:inline-grid;place-items:center;background:var(--accent,#879465);box-shadow:inset 0 -10px 20px #0001}.glyph:before{font-size:24px}.glyph.passport:before{content:"🛂"}.glyph.ticket:before{content:"🎟️"}.glyph.bed:before{content:"🏨"}.glyph.van:before{content:"🚐"}.glyph.calendar:before{content:"🗓️"}.glyph.contact:before{content:"✉️"}.compact-board{display:grid;grid-template-columns:1.35fr .65fr;gap:12px}.board-card,.section-block{background:#fffaf0;border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:0 12px 34px #3d2b1510}.board-card h3,.section-block h3{font-family:Cormorant Garamond,serif;font-size:31px;line-height:1;margin:0}.big-number{font-family:Cormorant Garamond,serif;font-size:32px;line-height:1.05;margin:12px 0 0;color:var(--olive)}.travellers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.person{background:linear-gradient(135deg,#e8edcf,#fff8e7);border:1px solid var(--line);border-radius:18px;padding:12px;display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center}.avatar{grid-row:1/3;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--olive);color:#fff8e7;font-weight:800}.person b,.person small{display:block}.person small{font-size:12px;color:var(--muted)}.section-title{display:flex;align-items:center;gap:12px;margin-bottom:14px}.section-title .eyebrow{margin-bottom:3px}.docs-panel{border-left:7px solid #7e6f55}.travel-panel{border-left:7px solid var(--terracotta)}.warning{background:#fff1d1;border:1px solid #d7a74d55;border-radius:16px;padding:12px;font-weight:800;color:#725329}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:22px}.note-lines{display:grid;gap:6px}.note-lines p{margin:0;line-height:1.45}.note-lines hr{width:100%;border:0;border-top:1px solid var(--line);margin:6px 0}.note-lines a{color:var(--terracotta);font-weight:800;overflow-wrap:anywhere}.tips{padding-left:20px;margin:0}.tips li{margin:0 0 10px;line-height:1.45}.visual-tips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;list-style:none}.visual-tips li{margin:0;background:#f6ead2;border:1px solid var(--line);border-radius:18px;padding:13px}.contact-list a{color:var(--terracotta);font-weight:800}.timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.timeline li{display:grid;grid-template-columns:145px 1fr;gap:12px;background:linear-gradient(135deg,#fff4d4,#fffaf0);border-left:6px solid var(--terracotta);border-radius:18px;padding:13px}.timeline time{font-weight:800;color:#6b321f;font-size:13px}.timeline b,.timeline span{display:block}.timeline span{font-size:12px;color:var(--muted);margin-top:3px}.timeline p{margin:.45em 0;font-size:13px}.cal-link{font-weight:800;color:var(--olive)}.share .paper{width:min(1180px,94vw);margin:34px auto;background:#fffaf0;border:1px solid var(--line);border-radius:36px;padding:34px;box-shadow:var(--shadow);position:relative;overflow:hidden}.share .paper:before{content:"";position:absolute;right:-20px;top:-10px;width:220px;height:130px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='130' viewBox='0 0 240 130'%3E%3Cg fill='none' stroke='%2359683c' stroke-width='5' stroke-linecap='round'%3E%3Cpath d='M10 105C65 42 122 16 222 17'/%3E%3C/g%3E%3Cg fill='%2359683c' opacity='.78'%3E%3Cellipse cx='43' cy='75' rx='9' ry='20' transform='rotate(45 43 75)'/%3E%3Cellipse cx='101' cy='40' rx='8' ry='18' transform='rotate(58 101 40)'/%3E%3Cellipse cx='176' cy='21' rx='8' ry='18' transform='rotate(80 176 21)'/%3E%3Ccircle cx='61' cy='70' r='6' fill='%232c2a1c'/%3E%3Ccircle cx='119' cy='44' r='6' fill='%232c2a1c'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;opacity:.45}.share h1{font-family:Cormorant Garamond,serif;font-size:clamp(42px,7vw,82px);line-height:.92;margin:14px 0}.share .lede{font-size:21px}.back{color:var(--terracotta);font-weight:800}.stamp{display:flex;gap:12px;align-items:center;background:#fffdf8;border:1px solid var(--line);border-radius:999px;width:max-content;padding:12px 18px;margin:20px 0}.grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px}.share li{margin:10px 0}.share li span{display:block;color:var(--muted);font-size:14px}@media(max-width:1200px){.priority-grid{grid-template-columns:repeat(3,1fr)}.timeline{grid-template-columns:1fr}}@media(max-width:900px){.workspace,.compact-board,.two-col,.grid{grid-template-columns:1fr}.trip-list{position:relative;top:auto}.priority-grid{grid-template-columns:repeat(2,1fr)}.travellers,.visual-tips{grid-template-columns:1fr}.timeline li{grid-template-columns:1fr}.hero h1{font-size:42px}.shell{padding-top:18px}.jump-bar{border-radius:20px}.date-ribbon{width:100%;justify-content:center}}@media(max-width:560px){.priority-grid{grid-template-columns:1fr}.hero,.dossier-head,.share .paper{padding:20px}.priority-card{min-height:auto}.dossier-head h2{font-size:40px}}
