@tailwind base;@tailwind components;@tailwind utilities;body{-webkit-font-smoothing:antialiased}.leaflet-container{font-family:Frutiger,Frutiger Linotype,sans-serif;z-index:0}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#d6d3d1;border-radius:20px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:#a8a29e}:root{--color-ink: #1a1a1a;--color-stone: #fdf8f6;--color-green: #9ac133;--color-green-muted: #7a9c26}.auth-shell{font-family:Inter,sans-serif;background-color:var(--color-stone);color:var(--color-ink)}@keyframes luxuryReveal{0%{opacity:0;transform:translateY(30px) scale(.98);filter:blur(8px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes focusPulse{0%{box-shadow:0 0 #9ac13380}to{box-shadow:0 0 0 12px #9ac13300}}@keyframes shimmerGlow{0%{box-shadow:0 0 10px #9ac13333}50%{box-shadow:0 0 25px #9ac13380}to{box-shadow:0 0 15px #9ac1334d}}.focus-luxury{transition:all .5s cubic-bezier(.16,1,.3,1);outline:none!important}.focus-luxury:focus{border-color:var(--color-green)!important;background-color:#fff!important;color:#000!important;transform:scale(1.02);animation:focusPulse .8s cubic-bezier(.16,1,.3,1),shimmerGlow 2s ease-in-out infinite alternate .8s}.animate-luxury{animation:luxuryReveal .9s cubic-bezier(.16,1,.3,1) forwards}.stagger-children>*{opacity:0;animation:luxuryReveal .8s cubic-bezier(.16,1,.3,1) forwards}.stagger-children>*:nth-child(1){animation-delay:.1s}.stagger-children>*:nth-child(2){animation-delay:.2s}.stagger-children>*:nth-child(3){animation-delay:.3s}.stagger-children>*:nth-child(4){animation-delay:.4s}.stagger-children>*:nth-child(5){animation-delay:.5s}.ProseMirror{outline:none}.ProseMirror ul,.ProseMirror ol{list-style-position:outside;padding-left:1.25rem;margin:.25rem 0}.ProseMirror li{margin:.15rem 0}.ProseMirror h3{font-size:.95rem;font-weight:700;color:#44403c;margin:.35rem 0}.ProseMirror blockquote{border-left:3px solid #d6d3d1;padding-left:.75rem;color:#78716c;margin:.35rem 0}.rich-text{white-space:normal;overflow-wrap:break-word;word-break:break-word}.rich-text p{margin:0 0 .75rem}.rich-text p:last-child{margin-bottom:0}.rich-text ul,.rich-text ol{margin:.5rem 0 .75rem 1.25rem;padding:0;list-style-position:outside}.rich-text ul{list-style-type:disc}.rich-text ol{list-style-type:decimal}.rich-text li{margin:.25rem 0}.rich-text a{color:#6b8f1a;text-decoration:underline;text-underline-offset:3px}.rich-text blockquote{border-left:3px solid #d6d3d1;padding-left:.75rem;color:#78716c;margin:.5rem 0}:root{--color-midnight: #0C0C0C;--color-stone-dark: #1C1917;--color-stone-light: #F5F5F4;--color-gold: #9ac133;--color-gold-dim: #9ac133;--color-ivory: #FFFFF0;--lux-gold: #b88a55;--lux-amber: #d7b185;--lux-ink: #1b1410;--lux-cream: #f6f1ea}.itinerary-preview{font-family:Montserrat,sans-serif;background-color:var(--color-stone-light);color:var(--color-midnight);scroll-behavior:smooth;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.itinerary-preview .editorial-content,.itinerary-preview .rich-text{text-align:justify;text-justify:inter-word}.itinerary-preview .luxury-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 15% 5%,rgba(184,138,85,.16),transparent 45%),radial-gradient(circle at 85% 15%,rgba(215,177,133,.18),transparent 55%),linear-gradient(180deg,#f6f1eae6,#f5f5f4d9 40%,#f5f5f4);z-index:0}.itinerary-preview .luxury-grain{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.25;mix-blend-mode:multiply;background-image:radial-gradient(rgba(27,20,16,.08) 1px,transparent 1px);background-size:4px 4px;z-index:0;pointer-events:none}.luxury-day-pill{background:#9ac133;color:#fff;border:1px solid #9ac133;letter-spacing:.24em}.luxury-day-title{color:var(--lux-ink)}.luxury-day-meta{border-top:1px solid rgba(184,138,85,.2);padding-top:.75rem}.luxury-day-divider{height:1px;width:100%;background:linear-gradient(90deg,#b88a5500,#b88a558c 35%,#b88a55d9,#b88a558c 65%,#b88a5500);position:relative}.luxury-day-divider:after{content:"";position:absolute;top:50%;left:50%;width:10px;height:10px;border-radius:999px;background:#b88a55;transform:translate(-50%,-50%);box-shadow:0 0 0 6px #b88a551f}.itinerary-preview ::selection{background:var(--color-gold);color:#fff}.itinerary-preview h1,.itinerary-preview h2,.itinerary-preview h3,.itinerary-preview h4,.itinerary-preview .serif{font-family:Playfair Display,serif}.editorial-content p{margin-bottom:22px;line-height:2;font-weight:400;color:#000}.editorial-content{max-width:100%;overflow-wrap:break-word;word-break:break-word}.editorial-content img{max-width:100%;height:auto;display:block}.editorial-content p:first-of-type:first-letter{float:none;font-family:inherit;font-size:inherit;line-height:inherit;padding:0;color:inherit;font-style:inherit}.ornament-line{display:block;background:linear-gradient(90deg,#ffffff40,#ffffffe6,#ffffff40);background-size:200% 100%;animation:ornament-sheen 4.8s ease-in-out infinite;filter:drop-shadow(0 0 6px rgba(255,255,255,.25))}.ornament-diamond{display:block;background:#ffffffd9;box-shadow:0 0 6px #ffffff40;animation:ornament-pulse 4.5s ease-in-out infinite}.number-float{animation:number-float 6.5s ease-in-out infinite;text-shadow:0 0 12px rgba(255,255,255,.45)}.number-plaque{position:relative;overflow:hidden;isolation:isolate}.number-plaque:after{content:"";position:absolute;top:-40%;right:-40%;bottom:-40%;left:-40%;background:linear-gradient(120deg,#fff0 30%,#ffffff59,#fff0 70%);transform:translate(-60%) rotate(8deg);animation:plaque-shimmer 7s ease-in-out infinite;mix-blend-mode:screen;pointer-events:none}.luxury-border{border-color:#d4af3733}.vertical-text{writing-mode:vertical-rl;text-orientation:mixed}.itinerary-preview::-webkit-scrollbar{display:none}@keyframes slide-up{0%{transform:translateY(60px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes ornament-sheen{0%{background-position:200% 0;opacity:.55}50%{background-position:0% 0;opacity:.95}to{background-position:-200% 0;opacity:.55}}@keyframes ornament-pulse{0%,to{opacity:.65;box-shadow:0 0 4px #ffffff40}50%{opacity:1;box-shadow:0 0 14px #ffffff8c}}@keyframes number-float{0%,to{transform:translateY(0);text-shadow:0 0 8px rgba(255,255,255,.35)}50%{transform:translateY(-10px);text-shadow:0 0 16px rgba(255,255,255,.55)}}@keyframes plaque-shimmer{0%{transform:translate(-60%) rotate(8deg)}to{transform:translate(60%) rotate(8deg)}}
