@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{--bg: #ffffff;--surface: #ffffff;--surface-soft: #f5f7fb;--surface-tint: #eef4ff;--ink: #121826;--muted: #657084;--faint: #dbe2ee;--line: #d9e0eb;--blue: #0b4fcb;--blue-dark: #083b9a;--blue-soft: #e8f0ff;--red: #e33b2e;--green: #20a35b;--gold: #c97d05;--purple: #6b56d6;--shadow: 0 18px 45px rgba(18, 24, 38, .08);--radius: 8px}*{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;scroll-behavior:smooth}body{margin:0;min-width:320px;background:linear-gradient(180deg,#eef4ff8a 0,#fff0 210px),var(--bg)}button,input,select{font:inherit;letter-spacing:0}button,select{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid rgba(11,79,203,.22);outline-offset:2px}.app-shell{width:min(1488px,calc(100vw - 32px));margin:0 auto;padding:22px 0 34px}.topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:46px}.logo{display:inline-flex;align-items:center;gap:10px;min-width:196px}.logo-button{border:0;background:transparent;padding:0;text-align:left}.logo-mark{position:relative;display:grid;width:34px;height:42px;color:var(--blue);place-items:center}.logo-mark:before,.logo-mark:after,.logo-mark span{position:absolute;content:"";background:currentColor}.logo-mark:before{width:4px;height:38px;border-radius:8px;transform:rotate(9deg)}.logo-mark:after{bottom:4px;width:30px;height:4px;border-radius:8px}.logo-mark span{right:1px;bottom:2px;width:10px;height:5px;background:var(--red);transform:rotate(20deg)}.logo-text{font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:700;line-height:1;color:var(--blue-dark)}.logo-text span{color:var(--red)}.topbar nav{display:flex;align-items:center;gap:24px;color:var(--ink);font-size:16px;font-weight:600}.topbar nav button{border:0;background:transparent;color:var(--ink);font-size:16px;font-weight:700;padding:0}.topbar nav button+button{color:var(--muted);font-size:14px;font-weight:600}.topbar nav button.active,.top-actions button.active{color:var(--blue)}.top-actions{display:flex;align-items:center;gap:18px}.top-actions button{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:#202838;font-size:14px;font-weight:600;white-space:nowrap}.top-actions button.active svg{fill:#0b4fcb1f}.search-panel{margin-top:20px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffffeb;box-shadow:0 12px 32px #2731440a}.search-fields{display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(220px,1fr) minmax(240px,.9fr) 162px;gap:12px;padding:15px}.field{display:flex;align-items:center;gap:10px;min-width:0;min-height:48px;border:1px solid #cfd8e6;border-radius:var(--radius);background:#fff;color:var(--muted);padding:0 12px}.field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:15px;font-weight:600}.field button{display:grid;flex:0 0 28px;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:#7a8496;place-items:center}.party-control{justify-content:space-between}.party-control>span{overflow:hidden;min-width:0;color:var(--ink);font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.stepper{display:inline-flex;align-items:center;flex:0 0 auto;gap:4px}.guest-controls{display:inline-flex;align-items:center;gap:9px}.stepper span{color:var(--muted);font-size:11px;font-weight:900}.stepper button{display:grid;width:26px;height:26px;border:1px solid var(--line);border-radius:50%;background:var(--surface-soft);color:var(--ink);place-items:center}.search-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;border:0;border-radius:var(--radius);background:var(--blue);color:#fff;font-size:15px;font-weight:750;box-shadow:0 14px 28px #0b4fcb3d}.region-tabs{display:flex;flex-wrap:wrap;gap:10px;padding:14px 12px 15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-left:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);background:#fff}.region-tabs button,.filter-chip{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:34px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#2d374a;font-size:13px;font-weight:650;white-space:nowrap}.region-tabs button{padding:0 17px}.filters{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;margin:18px 0 14px}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.filter-chip{gap:5px;padding:0 10px;font-size:11.5px}.filter-chip svg{width:14px;height:14px}.filter-tail{display:flex;align-items:center;gap:10px}.select-shell,.price-shell,.sort-select{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:38px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--muted);font-size:13px;font-weight:650;padding:0 10px}.select-shell select,.sort-select select{min-width:142px;border:0;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:var(--ink);font-weight:700;padding-right:18px}.select-shell svg:last-child,.sort-select svg:last-child{position:absolute;right:9px;pointer-events:none}.price-shell{min-width:228px}.price-shell span{color:var(--ink);white-space:nowrap}.price-shell input{width:84px;accent-color:var(--blue)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,438px);gap:18px;align-items:start}.results-pane{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:14px}.results-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.results-head>div{display:grid;gap:2px}.results-head span{color:var(--muted);font-size:13px;font-weight:650}.results-head strong{color:var(--ink);font-size:16px}.sort-select{min-width:236px}.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(226px,1fr));gap:14px}.attraction-card{position:relative;display:flex;min-width:0;min-height:352px;overflow:hidden;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 8px 22px #141f340a;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.attraction-card:hover,.attraction-card.selected{border-color:#0b4fcb75;box-shadow:0 16px 32px #0b4fcb1c;transform:translateY(-1px)}.media-button{position:relative;display:block;width:100%;height:164px;overflow:hidden;border:0;border-radius:0;background:var(--surface-soft);padding:0;text-align:left}.media-button img,.image-fallback{width:100%;height:100%}.media-button img{display:block;object-fit:cover;transition:transform .22s ease}.attraction-card:hover .media-button img{transform:scale(1.025)}.image-fallback{display:grid;align-content:center;justify-items:center;gap:8px;background:linear-gradient(135deg,#0b4fcb29,#e33b2e1f),#f1f5fb;color:var(--blue-dark);font-size:13px;font-weight:800}.status-pill{position:absolute;top:10px;left:10px;min-height:24px;border-radius:6px;color:#fff;font-size:12px;font-weight:800;line-height:24px;padding:0 9px;box-shadow:0 8px 18px #0f172a2e}.status-pill.success{background:var(--green)}.status-pill.warning{background:#dd8b07}.status-pill.danger{background:var(--red)}.icon-button{display:grid;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#fff;color:#1d2738;place-items:center}.icon-button.is-active{color:var(--red)}.icon-button.is-active svg{fill:currentColor}.attraction-card>.icon-button{position:absolute;top:9px;right:9px;box-shadow:0 8px 20px #12182629}.card-body{display:flex;flex:1;flex-direction:column;padding:12px 12px 13px}.card-title{display:block;width:100%;border:0;background:transparent;color:var(--ink);font-size:16px;font-weight:800;line-height:1.18;padding:0;text-align:left}.meta-line{display:flex;align-items:center;gap:5px;margin-top:6px;color:#475569;font-size:12px;font-weight:650}.card-body p{display:-webkit-box;overflow:hidden;min-height:45px;margin:9px 0 0;color:#4b5567;font-size:13px;line-height:1.38;-webkit-box-orient:vertical;-webkit-line-clamp:3}.tag-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.tag-list span{display:inline-flex;align-items:center;min-height:24px;border:1px solid rgba(11,79,203,.32);border-radius:999px;background:#f9fbff;color:var(--blue-dark);font-size:11px;font-weight:750;padding:0 8px}.tag-list span:nth-child(2n){border-color:#20a35b5c;color:#087043}.tag-list span:nth-child(3n){border-color:#6b56d657;color:#4930b7}.card-footer{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:14px}.from-label{display:block;color:var(--muted);font-size:12px;font-weight:650}.card-footer strong{color:var(--gold);font-size:22px;line-height:1}.card-footer button,.reservation-preview button,.checkout-form button{border:0;border-radius:6px;background:var(--blue);color:#fff;font-size:12px;font-weight:800;box-shadow:0 10px 20px #0b4fcb38}.card-footer button{min-width:108px;min-height:32px;padding:0 12px;white-space:nowrap}.side-pane{position:sticky;top:14px;display:grid;gap:12px;min-width:0}.map-card,.side-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 8px 24px #1218260a}.map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 12px 10px}.map-toolbar div,.side-heading div{display:grid;gap:3px}.map-toolbar span,.side-heading span{color:var(--muted);font-size:12px;font-weight:700}.map-toolbar strong,.side-heading strong{color:var(--ink);font-size:16px;line-height:1.15}.france-map{position:relative;height:286px;overflow:hidden;border-top:1px solid var(--line);background:linear-gradient(90deg,rgba(11,79,203,.06) 1px,transparent 1px),linear-gradient(0deg,rgba(11,79,203,.05) 1px,transparent 1px),radial-gradient(circle at 52% 42%,rgba(11,79,203,.12),transparent 32%),#f4f7fb;background-size:38px 38px,38px 38px,auto,auto}.france-map:before{position:absolute;top:20px;right:42px;bottom:18px;left:40px;content:"";border:2px solid rgba(11,79,203,.16);border-radius:46% 51% 44% 48%/38% 38% 51% 54%;background:#ffffff7a;transform:rotate(-7deg)}.map-river{position:absolute;height:3px;border-radius:999px;background:#44a4d475;transform-origin:left}.river-one{top:132px;left:88px;width:280px;transform:rotate(-12deg)}.river-two{top:188px;left:178px;width:210px;transform:rotate(20deg)}.river-three{top:82px;left:160px;width:180px;transform:rotate(6deg)}.map-label{position:absolute;z-index:1;color:#667085;font-size:11px;font-weight:800;text-transform:uppercase}.label-paris{top:72px;left:214px}.label-lyon{top:162px;left:262px}.label-marseille{right:50px;bottom:40px}.map-pin{position:absolute;z-index:2;display:grid;width:27px;height:27px;border:2px solid #fff;border-radius:50%;background:var(--blue);color:#fff;font-size:11px;font-weight:900;place-items:center;transform:translate(-50%,-50%);box-shadow:0 8px 14px #0b4fcb47}.map-pin:nth-of-type(4n){background:#35a1d4}.map-pin.active{z-index:3;width:33px;height:33px;background:var(--purple)}.map-details{display:grid;gap:8px;border-top:1px solid var(--line);padding:10px}.map-details button{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:36px;border:1px solid var(--line);border-radius:6px;background:#fbfcff;color:var(--ink);padding:6px 8px;text-align:left}.map-details button span{display:grid;width:22px;height:22px;border-radius:50%;background:var(--blue);color:#fff;font-size:11px;font-weight:900;place-items:center}.map-details button strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.map-details button small{color:var(--muted);font-size:11px;font-weight:800}.side-card{padding:14px}.side-heading{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:12px}.side-heading button{border:0;background:transparent;color:var(--blue);font-size:12px;font-weight:800}.side-heading button:disabled{color:var(--muted)}.itinerary-list{display:grid;border-top:1px solid var(--line)}.empty-line{color:var(--muted);font-size:13px;font-weight:650;padding:14px 0}.itinerary-row{display:grid;grid-template-columns:16px 28px minmax(0,1fr) 28px;align-items:center;gap:9px;min-height:58px;border-bottom:1px solid var(--line)}.drag-dots{color:#a5adba;font-size:17px;letter-spacing:1px;transform:rotate(90deg)}.route-index{display:grid;width:24px;height:24px;border-radius:50%;background:var(--blue);color:#fff;font-size:12px;font-weight:900;place-items:center}.itinerary-row div{display:grid;gap:2px;min-width:0}.itinerary-row strong,.checkout-item strong{overflow:hidden;font-size:13px;line-height:1.18;text-overflow:ellipsis;white-space:nowrap}.itinerary-row div span,.checkout-item div span{color:var(--muted);font-size:12px;font-weight:600}.itinerary-row button{display:grid;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:#344054;place-items:center}.reservation-preview{display:grid;gap:14px;padding-top:16px}.reservation-preview div{display:flex;align-items:end;justify-content:space-between;gap:14px}.reservation-preview span{color:#344054;font-size:15px;font-weight:650}.reservation-preview strong{color:var(--gold);font-size:34px;line-height:.95}.reservation-preview button{min-height:52px;font-size:16px}.detail-page{display:grid;gap:18px;margin-top:20px}.detail-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 14px 34px #1218260f}.detail-media{position:relative;min-height:388px;overflow:hidden;background:var(--surface-soft)}.detail-media>img,.detail-media .image-fallback{display:block;width:100%;height:100%;min-height:388px;object-fit:cover}.detail-gallery{align-self:start;display:grid;grid-template-rows:342px 74px;gap:8px;min-height:440px;padding:8px}.gallery-main{position:relative;min-height:342px;overflow:hidden;border-radius:7px;background:var(--surface-soft)}.gallery-main img{display:block;width:100%;height:100%;min-height:342px;object-fit:cover}.gallery-count{position:absolute;right:10px;bottom:10px;min-height:26px;border-radius:999px;background:#121826bd;color:#fff;font-size:12px;font-weight:900;line-height:26px;padding:0 10px}.gallery-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.gallery-thumbs button{min-width:0;overflow:hidden;border:2px solid transparent;border-radius:7px;background:var(--surface-soft);padding:0}.gallery-thumbs button.active{border-color:var(--blue);box-shadow:0 8px 18px #0b4fcb2e}.gallery-thumbs img{display:block;width:100%;height:70px;object-fit:cover}.detail-hero-body{display:grid;align-content:center;gap:16px;min-width:0;padding:28px}.back-button,.detail-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--blue);font-size:13px;font-weight:850;padding:0 13px}.back-button{justify-self:start}.detail-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--blue);font-size:13px;font-weight:900;text-transform:uppercase}.detail-hero h1{margin:0;color:var(--ink);font-size:clamp(34px,4vw,56px);line-height:.98}.detail-hero p,.detail-section p{margin:0;color:#465267;font-size:15px;line-height:1.58}.detail-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.detail-metrics div{display:grid;gap:4px;min-height:82px;border:1px solid var(--line);border-radius:7px;background:#fbfcff;padding:12px}.detail-metrics svg{color:var(--blue)}.detail-metrics strong{color:var(--ink);font-size:19px;line-height:1}.detail-metrics span{color:var(--muted);font-size:12px;font-weight:750}.detail-actions{display:flex;flex-wrap:wrap;gap:10px}.detail-actions button:first-child.active{border-color:#e33b2e57;color:var(--red)}.detail-actions button:first-child.active svg{fill:currentColor}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 398px;gap:18px;align-items:start}.detail-content{display:grid;gap:14px;min-width:0}.detail-section,.detail-booking-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 8px 24px #1218260a}.detail-section{display:grid;gap:14px;padding:18px}.section-title{display:flex;align-items:center;gap:8px;color:var(--blue)}.section-title h2{margin:0;color:var(--ink);font-size:19px}.highlight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.highlight-grid span{min-height:48px;border:1px solid var(--line);border-radius:7px;background:#fbfcff;color:#263246;font-size:13px;font-weight:800;line-height:1.35;padding:10px}.detail-tags{margin-top:0}.detail-booking-panel{position:sticky;top:14px;display:grid;gap:15px;padding:16px}.booking-panel-head{display:grid;gap:3px}.booking-panel-head span{color:var(--blue);font-size:12px;font-weight:900;text-transform:uppercase}.booking-panel-head strong{color:var(--gold);font-size:38px;line-height:.95}.booking-panel-head small{color:var(--muted);font-size:13px;font-weight:750}.detail-field{display:grid;gap:7px;color:#344054;font-size:13px;font-weight:850}.detail-field>span{display:flex;align-items:center;gap:9px;min-height:44px;border:1px solid var(--line);border-radius:7px;color:var(--muted);padding:0 11px}.detail-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-weight:750}.date-quick-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.date-quick-grid button{min-height:38px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#2b3548;font-size:12px;font-weight:850;line-height:1.15;padding:5px 6px}.date-quick-grid button.active{border-color:#20a35b85;background:#20a35b1a;color:#087043}.time-slot-group{display:grid;gap:9px}.time-slot-group>div:first-child{display:inline-flex;align-items:center;gap:7px;color:#344054;font-size:13px;font-weight:850}.time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.time-grid button{min-height:38px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#2b3548;font-size:13px;font-weight:850}.time-grid button.active{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 10px 18px #0b4fcb2e}.guest-ticket-list,.ticket-summary{display:grid;gap:9px}.guest-ticket-row{display:grid;grid-template-columns:minmax(0,1fr) auto 104px;align-items:center;gap:10px;min-height:58px;border:1px solid var(--line);border-radius:7px;background:#fbfcff;padding:10px}.guest-ticket-row>div:first-child{display:grid;gap:2px}.guest-ticket-row strong{color:var(--ink);font-size:14px}.guest-ticket-row span{color:var(--muted);font-size:12px;font-weight:700}.guest-ticket-price{color:var(--gold);font-size:15px;font-weight:900;white-space:nowrap}.guest-ticket-stepper{display:grid;grid-template-columns:30px 1fr 30px;align-items:center;gap:5px}.guest-ticket-stepper button{display:grid;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);place-items:center}.guest-ticket-stepper>span{color:var(--ink);font-size:15px;font-weight:900;text-align:center}.ticket-summary{border-top:1px solid var(--line);padding-top:12px}.ticket-summary div{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px;font-weight:750}.ticket-summary strong{color:var(--ink);font-size:14px}.detail-reserve{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;border:0;border-radius:7px;background:var(--blue);color:#fff;font-size:15px;font-weight:900;box-shadow:0 14px 28px #0b4fcb3d}.page-main{display:grid;gap:16px;margin-top:22px}.page-header{display:flex;align-items:end;justify-content:space-between;gap:20px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:18px;box-shadow:0 12px 30px #1218260a}.page-header>div:first-child{display:grid;gap:5px;max-width:760px}.page-header span{color:var(--blue);font-size:12px;font-weight:900;text-transform:uppercase}.page-header h1{margin:0;font-size:30px;line-height:1.08}.page-header p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}.page-actions{display:flex;flex:0 0 auto;gap:10px}.page-actions button,.empty-state button,.booking-actions button,.account-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--blue);font-size:13px;font-weight:850;padding:0 13px}.page-actions button:first-child,.empty-state button,.account-actions button:first-child{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 10px 20px #0b4fcb2e}.page-results{padding:14px}.empty-state{display:grid;justify-items:center;gap:9px;min-height:268px;border:1px dashed #cbd5e1;border-radius:var(--radius);background:#fbfcff;color:var(--muted);padding:34px;text-align:center}.empty-state svg{color:var(--blue)}.empty-state strong{color:var(--ink);font-size:18px}.empty-state span{max-width:430px;font-size:14px;line-height:1.45}.booking-list,.account-layout{display:grid;gap:12px}.booking-card,.account-card,.account-summary{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 8px 24px #1218260a}.booking-card{display:grid;gap:14px;padding:16px}.booking-card-head,.booking-card-body,.booking-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}.booking-card-head>div{display:grid;gap:3px}.booking-card-head span:first-child{color:var(--blue);font-size:12px;font-weight:900}.booking-card-head strong{font-size:17px}.booking-status{display:inline-flex;align-items:center;gap:6px;min-height:28px;border-radius:999px;background:#20a35b1a;color:#087043;font-size:12px;font-weight:900;padding:0 10px}.booking-status.cancelled{background:#e33b2e1a;color:var(--red)}.booking-status.payment{background:#c774001c;color:#a45d00}.booking-status.failed{background:#e33b2e1a;color:var(--red)}.booking-items{display:flex;flex-wrap:wrap;gap:7px}.booking-items span{min-height:25px;border:1px solid var(--line);border-radius:999px;background:#fbfcff;color:#344054;font-size:12px;font-weight:750;line-height:25px;padding:0 9px}.booking-total{display:grid;justify-items:end;gap:2px;flex:0 0 auto}.booking-total span{color:var(--muted);font-size:12px;font-weight:750}.booking-total strong{color:var(--gold);font-size:24px}.booking-actions{justify-content:flex-start}.booking-actions .payment-button{border-color:var(--blue);background:var(--blue);color:#fff}.booking-actions .payment-button:hover{border-color:var(--blue-dark);background:var(--blue-dark);color:#fff}.booking-actions button:disabled,.account-actions button:disabled{color:var(--muted);background:#f7f9fc;box-shadow:none}.account-layout{grid-template-columns:minmax(0,1fr) 360px}.account-card,.account-summary{display:grid;align-content:start;gap:13px;padding:16px}.account-card label{display:grid;gap:6px;color:#344054;font-size:13px;font-weight:850}.account-card input{min-height:44px;border:1px solid var(--line);border-radius:7px;outline:0;padding:0 12px}.account-card input:focus{border-color:#0b4fcbb3;box-shadow:0 0 0 3px #0b4fcb1f}.account-actions{display:flex;flex-wrap:wrap;gap:9px;padding-top:4px}.account-summary span{color:var(--blue);font-size:12px;font-weight:900;text-transform:uppercase}.account-summary strong{font-size:20px}.account-summary p{margin:0;color:var(--muted);font-size:14px;line-height:1.4}.toast{position:fixed;right:18px;bottom:18px;z-index:30;display:flex;align-items:center;gap:10px;max-width:min(420px,calc(100vw - 36px));border:1px solid rgba(11,79,203,.22);border-radius:9px;background:#fff;color:var(--ink);box-shadow:0 18px 45px #12182629;padding:12px 13px}.toast>svg{flex:0 0 auto;color:var(--green)}.toast span{font-size:13px;font-weight:800}.toast button{display:grid;width:26px;height:26px;border:0;border-radius:50%;background:#f2f5fa;color:var(--ink);place-items:center}.modal-backdrop{position:fixed;z-index:20;display:grid;top:0;right:0;bottom:0;left:0;background:#0c12206b;padding:24px;place-items:center}.booking-modal{width:min(860px,100%);max-height:min(720px,calc(100vh - 48px));overflow:auto;border-radius:12px;background:#fff;box-shadow:0 35px 80px #0c122047}.modal-head{display:flex;align-items:start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:20px}.modal-head span{color:var(--muted);font-size:13px;font-weight:800}.modal-head h2{margin:3px 0 0;font-size:26px;line-height:1.1}.checkout-grid{display:grid;grid-template-columns:1fr 320px;gap:18px;padding:20px}.checkout-items{display:grid;align-content:start;gap:10px}.checkout-item{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:62px;border:1px solid var(--line);border-radius:var(--radius);padding:12px}.checkout-item>div{display:grid;gap:3px;min-width:0}.checkout-item>span{color:var(--gold);font-size:19px;font-weight:900}.checkout-form{display:grid;align-content:start;gap:12px}.checkout-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.checkout-form label{display:grid;gap:6px;color:#344054;font-size:13px;font-weight:800}.checkout-form input{min-height:42px;border:1px solid var(--line);border-radius:6px;outline:0;padding:0 11px}.checkout-form input:focus{border-color:#0b4fcbb3;box-shadow:0 0 0 3px #0b4fcb1f}.checkout-form button{min-height:48px;margin-top:4px;font-size:14px}@media(max-width:1180px){.topbar{grid-template-columns:1fr auto}.topbar nav{display:none}.search-fields{grid-template-columns:1fr 1fr}.search-button{grid-column:span 2}.filters,.workspace,.detail-hero,.detail-layout{grid-template-columns:1fr}.side-pane{position:static;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr)}.detail-booking-panel{position:static}}@media(max-width:820px){.app-shell{width:min(100% - 20px,620px);padding-top:14px}.topbar{grid-template-columns:1fr;gap:14px}.logo{min-width:0}.top-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.top-actions button{justify-content:center;min-height:38px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;font-size:12px}.search-fields,.side-pane,.checkout-grid,.checkout-row,.account-layout{grid-template-columns:1fr}.page-header,.booking-card-head,.booking-card-body{align-items:stretch;flex-direction:column}.page-actions,.booking-actions{flex-wrap:wrap}.booking-total{justify-items:start}.search-button{grid-column:auto}.filters{gap:12px}.filter-tail{align-items:stretch;flex-direction:column}.select-shell,.price-shell,.sort-select{width:100%}.price-shell{justify-content:space-between}.results-head{align-items:stretch;flex-direction:column}.results-grid{grid-template-columns:1fr}.media-button{height:190px}.detail-media,.detail-media>img,.detail-media .image-fallback{min-height:290px}.detail-gallery{grid-template-rows:minmax(244px,1fr) 62px;min-height:322px}.gallery-main,.gallery-main img{min-height:244px}.gallery-thumbs{gap:6px}.gallery-thumbs img{height:58px}.detail-hero-body,.detail-section,.detail-booking-panel{padding:14px}.detail-hero h1{font-size:34px}.detail-metrics,.highlight-grid{grid-template-columns:1fr}.france-map{height:250px}.modal-backdrop{padding:10px}.booking-modal{max-height:calc(100vh - 20px)}}@media(max-width:520px){.logo-text{font-size:27px}.top-actions button span{display:none}.field{min-height:46px}.party-control{align-items:start;flex-direction:column;padding-block:10px}.guest-controls{width:100%;justify-content:space-between}.chip-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.filter-chip{flex:0 0 auto}.side-card{padding:12px}.itinerary-row{grid-template-columns:24px minmax(0,1fr) 28px}.drag-dots{display:none}.page-header{padding:14px}.page-header h1{font-size:25px}.map-details button{grid-template-columns:25px minmax(0,1fr)}.map-details button small{grid-column:2;justify-self:start}.time-grid,.date-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-ticket-row{grid-template-columns:minmax(0,1fr) auto}.guest-ticket-stepper{grid-column:1 / -1}}:root{--bg: #f7f9fc;--surface: #ffffff;--surface-soft: #f3f6fb;--surface-tint: #edf4ff;--ink: #0f172a;--muted: #667085;--faint: #e8edf5;--line: #d9e2ee;--blue: #1557e6;--blue-dark: #123f9f;--blue-soft: #eaf1ff;--red: #df3f3a;--green: #18a45b;--gold: #d98205;--purple: #5f58d9;--shadow: 0 18px 48px rgba(15, 23, 42, .08);--shadow-soft: 0 10px 28px rgba(15, 23, 42, .06);--radius: 8px}html{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}body{background:linear-gradient(180deg,#fff 0,#f7f9fc 340px),var(--bg)}button,input,select{letter-spacing:0}.app-shell{width:min(1512px,calc(100vw - 32px));padding:14px 0 38px}.topbar{position:sticky;top:0;z-index:15;min-height:68px;border:1px solid rgba(217,226,238,.86);border-radius:10px;background:#fffffff0;box-shadow:0 12px 30px #0f172a0f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:0 18px}.logo{min-width:196px;gap:11px}.logo-mark{width:32px;height:32px;border-radius:8px;background:var(--blue);color:#fff;box-shadow:0 10px 22px #1557e63d}.logo-mark:before,.logo-mark:after,.logo-mark span{background:#fff}.logo-mark:before{width:18px;height:4px;border-radius:4px;transform:rotate(45deg)}.logo-mark:after{bottom:auto;width:18px;height:4px;border-radius:4px;transform:rotate(-45deg)}.logo-mark span{right:auto;bottom:auto;width:4px;height:22px;border-radius:4px;opacity:.95;transform:rotate(0)}.logo-text{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:22px;font-weight:850;color:var(--blue-dark)}.logo-text span{color:var(--blue)}.topbar nav{justify-content:center}.topbar nav button{display:inline-flex;align-items:center;justify-content:flex-start;gap:10px;width:min(100%,430px);min-height:42px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#4b5a72;font-size:14px;font-weight:700;box-shadow:inset 0 1px #ffffffd1;padding:0 14px}.topbar nav button.active{color:var(--blue-dark)}.topbar nav button svg{color:#7b8799}.top-actions{gap:10px}.top-actions button{min-height:42px;border:1px solid transparent;border-radius:8px;color:#172033;font-size:14px;font-weight:760;padding:0 12px}.top-actions button:hover,.top-actions button.active{border-color:var(--line);background:#f7faff;color:var(--blue-dark)}.explore-intro{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:32px 0 14px}.explore-intro h1{margin:0;color:var(--ink);font-size:clamp(30px,3vw,42px);font-weight:860;line-height:1.04}.explore-intro p{margin:8px 0 0;color:#536178;font-size:16px;line-height:1.5}.intro-meta{display:grid;min-width:158px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow-soft);padding:13px 16px}.intro-meta span{color:var(--muted);font-size:12px;font-weight:760}.intro-meta strong{color:var(--ink);font-size:18px;line-height:1.1}.search-panel{margin-top:0;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow-soft)}.search-fields{grid-template-columns:minmax(260px,1.25fr) minmax(190px,.75fr) minmax(230px,.9fr) 148px;gap:10px;padding:14px}.field{min-height:48px;border-color:var(--line);border-radius:8px;background:#fff;color:#738198;padding:0 13px}.field input{font-size:14px;font-weight:710}.field:focus-within{border-color:#1557e6b8;box-shadow:0 0 0 3px #1557e61a}.party-control>span{font-size:13px;font-weight:760}.stepper span{color:#536178}.stepper button{border-color:var(--line);background:#fff}.stepper button:hover,.guest-ticket-stepper button:hover{border-color:#1557e694;color:var(--blue)}.search-button{min-height:48px;border-radius:8px;background:linear-gradient(180deg,#1e63f2,var(--blue));font-size:14px;font-weight:820;box-shadow:0 16px 26px #1557e638}.search-button:hover,.card-footer button:hover,.reservation-preview button:hover,.detail-reserve:hover,.checkout-form button:hover{transform:translateY(-1px)}.region-tabs{margin-top:12px;border:0;background:transparent;padding:0}.region-tabs button,.filter-chip{min-height:36px;border-color:var(--line);border-radius:8px;background:#fff;color:#344054;font-size:13px;font-weight:740;box-shadow:0 6px 16px #0f172a09}.region-tabs button:hover,.filter-chip:hover{border-color:#1557e65c;color:var(--blue-dark)}.region-tabs button.active,.filter-chip.active{border-color:var(--blue);background:var(--blue);color:#fff}.filters{margin:16px 0;gap:16px}.filter-chip{padding:0 12px}.select-shell,.price-shell,.sort-select{min-height:40px;border-color:var(--line);border-radius:8px;background:#fff;font-size:13px;box-shadow:0 6px 16px #0f172a09}.workspace{grid-template-columns:minmax(0,1fr) minmax(360px,410px);gap:24px}.results-pane{border:0;background:transparent;box-shadow:none;padding:0}.results-head{margin-bottom:14px}.results-head span{color:var(--muted);font-size:13px;font-weight:760}.results-head strong{font-size:20px;font-weight:860}.results-grid{grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:18px}.attraction-card{min-height:338px;border-color:var(--line);border-radius:8px;box-shadow:0 10px 28px #0f172a0e}.attraction-card:hover,.attraction-card.selected{border-color:#1557e67a;box-shadow:0 20px 44px #1557e621}.media-button{height:174px;background:var(--surface-soft)}.status-pill{top:12px;left:12px;min-height:26px;border-radius:7px;font-size:11px;line-height:26px;padding:0 10px}.icon-button{border-color:#d9e2eeeb;background:#fffffff0;color:#172033;box-shadow:0 10px 24px #0f172a1a}.icon-button:hover{color:var(--blue)}.card-body{padding:13px 14px 14px}.card-title{font-size:16px;font-weight:840;line-height:1.2}.card-title:hover{color:var(--blue-dark)}.meta-line{margin-top:7px;color:#69778d;font-size:12px}.card-body p{min-height:40px;margin-top:10px;color:#536178;font-size:13px;line-height:1.45;-webkit-line-clamp:2}.tag-list{gap:6px}.tag-list span,.booking-items span{min-height:24px;border-color:#dfe7f2;border-radius:7px;background:#f8fbff;color:#35517f;font-size:11px;font-weight:760}.tag-list span:nth-child(2n),.tag-list span:nth-child(3n){border-color:#dfe7f2;color:#35517f}.from-label{color:#7a8799;font-size:11px;text-transform:lowercase}.card-footer strong{color:var(--gold);font-size:22px;font-weight:900}.card-footer button,.reservation-preview button,.checkout-form button{border-radius:8px;background:linear-gradient(180deg,#1e63f2,var(--blue));font-weight:860;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.card-footer button{min-width:112px;min-height:36px;font-size:12px}.side-pane{top:86px;gap:16px}.map-card,.side-card,.detail-section,.detail-booking-panel,.booking-card,.account-card,.account-summary{border-color:var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow-soft)}.map-toolbar,.side-card{padding:16px}.map-toolbar{padding-bottom:14px}.map-toolbar span,.side-heading span{color:#667085;font-size:12px;font-weight:780}.map-toolbar strong,.side-heading strong{font-size:18px;font-weight:860}.france-map{height:262px;border-top-color:var(--line);background:linear-gradient(90deg,rgba(21,87,230,.07) 1px,transparent 1px),linear-gradient(0deg,rgba(21,87,230,.06) 1px,transparent 1px),#f3f7fd;background-size:42px 42px,42px 42px,auto}.france-map:before{border-color:#1557e62e;background:#ffffffa3}.map-pin{width:28px;height:28px;background:var(--blue);box-shadow:0 8px 16px #1557e640}.map-pin:nth-of-type(3n){background:var(--gold)}.map-pin:nth-of-type(4n){background:#2198ce}.map-pin.active{width:35px;height:35px;background:#6c5ce7;box-shadow:0 12px 24px #6c5ce742}.map-details{gap:8px;padding:12px}.map-details button,.highlight-grid span,.guest-ticket-row,.checkout-item{border-color:var(--line);border-radius:8px;background:#fbfdff}.itinerary-list{border-top-color:var(--line)}.empty-line{color:#69778d}.itinerary-row{grid-template-columns:14px 28px minmax(0,1fr) 30px;min-height:62px}.route-index{background:var(--blue)}.reservation-preview{gap:14px}.reservation-preview strong{color:var(--gold);font-size:38px;font-weight:900}.reservation-preview button{min-height:50px}.detail-page{gap:22px;margin-top:24px}.detail-hero{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);border-color:var(--line);border-radius:10px;box-shadow:var(--shadow-soft)}.detail-gallery{grid-template-rows:360px 74px;min-height:458px;gap:8px;padding:10px}.gallery-main,.gallery-main img{min-height:360px}.gallery-main,.gallery-thumbs button{border-radius:8px}.gallery-thumbs button.active{border-color:var(--blue)}.gallery-count{right:12px;bottom:12px;min-height:28px;background:#0f172ac7;font-size:12px;line-height:28px}.detail-hero-body{gap:17px;padding:32px}.back-button,.detail-actions button,.page-actions button,.empty-state button,.booking-actions button,.account-actions button{min-height:40px;border-color:var(--line);border-radius:8px;background:#fff;font-weight:820}.back-button:hover,.detail-actions button:hover,.page-actions button:hover,.booking-actions button:hover{border-color:#1557e65c;color:var(--blue-dark)}.detail-kicker{color:var(--blue-dark);font-size:12px}.detail-hero h1{max-width:720px;font-size:clamp(40px,5vw,62px);font-weight:890;line-height:.98}.detail-hero p,.detail-section p{color:#536178;font-size:15px;line-height:1.62}.detail-metrics{gap:12px}.detail-metrics div{min-height:88px;border-color:var(--line);border-radius:8px;background:#fbfdff;padding:13px}.detail-metrics strong{font-size:22px}.detail-layout{grid-template-columns:minmax(0,1fr) minmax(360px,410px);gap:22px}.detail-content{gap:16px}.detail-section{gap:15px;padding:20px}.section-title{color:var(--blue)}.section-title h2{font-size:20px;font-weight:860}.highlight-grid{gap:10px}.highlight-grid span{min-height:54px;color:#27364d;font-size:13px;font-weight:790}.detail-booking-panel{top:86px;gap:16px;padding:18px}.booking-panel-head span{color:var(--blue-dark)}.booking-panel-head strong{color:var(--gold);font-size:42px;font-weight:900}.detail-field{color:#27364d}.detail-field>span,.checkout-form input,.account-card input{min-height:46px;border-color:var(--line);border-radius:8px;background:#fff}.date-quick-grid,.time-grid{gap:8px}.date-quick-grid button,.time-grid button{min-height:40px;border-color:var(--line);border-radius:8px;background:#fff}.date-quick-grid button.active{border-color:#18a45b80;background:#18a45b1a;color:#087443}.time-grid button.active{border-color:var(--blue);background:var(--blue);box-shadow:0 10px 20px #1557e62e}.guest-ticket-row{grid-template-columns:minmax(0,1fr) auto 110px;min-height:62px}.guest-ticket-price{color:var(--gold)}.guest-ticket-stepper{grid-template-columns:32px 1fr 32px}.guest-ticket-stepper button{width:32px;height:32px;border-color:var(--line);background:#fff}.ticket-summary{border-top-color:var(--line)}.detail-reserve{min-height:54px;border-radius:8px;background:linear-gradient(180deg,#1e63f2,var(--blue));font-size:15px;box-shadow:0 16px 28px #1557e638}.page-header{border:0;border-radius:0;background:transparent;box-shadow:none;padding:6px 0 2px}.page-header h1{font-size:34px;font-weight:870}.booking-card{padding:18px}.booking-status{border-radius:8px}.empty-state{border-color:#d7e0ec;border-radius:10px;background:#fff}.booking-modal{border-radius:12px}.modal-head,.checkout-grid{padding:22px}.checkout-form button{min-height:50px}@media(max-width:1180px){.topbar{grid-template-columns:1fr auto;top:8px}.topbar nav{display:none}.workspace,.detail-hero,.detail-layout{grid-template-columns:1fr}.side-pane{top:auto;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr)}.detail-booking-panel{position:static}}@media(max-width:820px){.app-shell{width:min(100% - 20px,640px);padding-top:10px}.topbar{position:static;grid-template-columns:1fr;min-height:auto;gap:14px;padding:14px}.top-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.top-actions button{justify-content:center;border-color:var(--line);background:#fff}.explore-intro{align-items:stretch;flex-direction:column;gap:12px;margin-top:22px}.intro-meta{min-width:0}.search-fields,.side-pane,.checkout-grid,.checkout-row,.account-layout{grid-template-columns:1fr}.search-button{grid-column:auto}.filters{grid-template-columns:1fr}.filter-tail{align-items:stretch;flex-direction:column}.results-grid{grid-template-columns:1fr}.media-button{height:218px}.detail-gallery{grid-template-rows:minmax(260px,1fr) 62px;min-height:338px}.gallery-main,.gallery-main img{min-height:260px}.detail-hero-body{padding:20px}.detail-hero h1{font-size:38px}.detail-metrics,.highlight-grid{grid-template-columns:1fr}.detail-section,.detail-booking-panel{padding:16px}}@media(max-width:520px){.logo-text{font-size:21px}.top-actions button span{display:inline}.explore-intro h1{font-size:30px}.chip-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.filter-chip{flex:0 0 auto}.guest-ticket-row{grid-template-columns:minmax(0,1fr) auto}.guest-ticket-stepper{grid-column:1 / -1}}:root{--bg: #f6f8fb;--surface-soft: #f4f7fb;--ink: #081226;--muted: #66758c;--line: #dfe6f0;--blue: #0758f7;--blue-dark: #073cba;--gold: #d98608;--green: #16a05a;--shadow-soft: 0 16px 44px rgba(8, 18, 38, .07)}body{background:linear-gradient(180deg,#fff 0,#f7f9fc 520px),var(--bg)}.app-shell{width:min(1496px,calc(100vw - 32px));padding-top:12px}.topbar{min-height:64px;border-color:#dfe6f0eb;box-shadow:0 10px 28px #0812260b}.topbar nav button{width:min(100%,370px);background:#fbfdff}.explore-intro{position:relative;min-height:292px;overflow:hidden;align-items:center;margin:20px 0 0;border:1px solid rgba(223,230,240,.92);border-radius:12px;background:linear-gradient(90deg,#fff,#fffffff5 38%,#ffffffa8 62%,#ffffff14),url(/attractions/eiffel-1.jpg) right center / cover no-repeat;box-shadow:var(--shadow-soft);padding:44px 42px 84px}.explore-intro>div:first-child{position:relative;z-index:1;max-width:560px}.explore-intro h1{max-width:520px;font-size:clamp(42px,5vw,68px);font-weight:900;line-height:.96}.explore-intro p{max-width:430px;margin-top:16px;color:#3f4d63;font-size:17px}.intro-meta{position:absolute;right:28px;top:28px;bottom:auto;z-index:1;min-width:174px;border-color:#ffffffbd;background:#ffffffe0;box-shadow:0 18px 44px #0812261f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.search-panel{position:relative;z-index:3;margin:-54px 28px 0;border-color:#dfe6f0fa;border-radius:12px;box-shadow:0 24px 70px #08122621}.search-fields{grid-template-columns:minmax(300px,1.2fr) minmax(190px,.72fr) minmax(250px,.82fr) 150px;padding:16px}.field,.select-shell,.price-shell,.sort-select{border-color:#dfe7f2;box-shadow:none}.region-tabs{margin-top:18px}.filters{margin-top:14px}.workspace{grid-template-columns:minmax(0,1fr) minmax(300px,330px);gap:22px}.results-grid{grid-template-columns:repeat(auto-fill,minmax(226px,1fr));gap:16px}.attraction-card{min-height:334px;border-color:#dfe6f0f5;box-shadow:0 12px 36px #08122612}.attraction-card:hover,.attraction-card.selected{box-shadow:0 24px 52px #0758f724}.media-button{height:198px}.status-pill{background:#16a05af0}.attraction-card>.icon-button{width:40px;height:40px;background:#ffffffe0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.card-body{gap:0;padding:14px}.card-title{font-size:15px}.meta-line{margin-top:5px}.card-rating{display:flex;align-items:center;gap:5px;min-height:24px;margin-top:9px;color:#f5a400;font-size:12px;font-weight:820}.card-rating strong{color:#1d2939;font-size:12px}.card-rating span{color:#66758c;font-weight:720}.attraction-card .card-body p,.attraction-card .tag-list{display:none}.card-footer{align-items:center;margin-top:12px;padding-top:12px}.from-label{display:inline;margin-right:3px;text-transform:none}.card-footer strong{font-size:20px}.card-footer button{min-width:100px;min-height:34px;font-size:11.5px}.side-pane{top:82px;gap:14px}.side-card{padding:16px}.side-card.itinerary{border-color:#0758f72e;background:linear-gradient(180deg,#eaf1ff8c,#fff0 42%),#fff}.empty-line{border:1px dashed #cad6e8;border-radius:8px;background:#ffffffad;padding:14px}.map-card{background:#fff}.map-toolbar{padding:14px 14px 12px}.france-map{height:190px;background:linear-gradient(90deg,rgba(7,88,247,.055) 1px,transparent 1px),linear-gradient(0deg,rgba(7,88,247,.045) 1px,transparent 1px),#f8fbff;background-size:38px 38px,38px 38px,auto}.map-label,.map-river{opacity:.72}.map-pin{width:24px;height:24px;font-size:10px}.map-pin.active{width:30px;height:30px}.detail-commerce-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,392px);gap:24px;align-items:start}.detail-commerce-main{display:grid;gap:18px;min-width:0}.detail-commerce-main .detail-hero{grid-template-columns:1fr}.detail-gallery{grid-template-rows:326px 70px;min-height:416px}.gallery-main,.gallery-main img{min-height:326px}.detail-hero-body{align-content:start;gap:14px;padding:24px}.detail-hero h1{font-size:clamp(38px,4.3vw,56px)}.detail-actions{margin-top:2px}.detail-booking-panel{top:82px;border-color:#dfe6f0fa;box-shadow:0 20px 54px #0812261a}.booking-panel-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;border-bottom:1px solid var(--line);padding-bottom:14px}.booking-panel-head span,.booking-panel-head small{grid-column:1}.booking-panel-head strong{grid-row:1 / span 2;grid-column:2;font-size:40px}.time-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.date-quick-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.guest-ticket-row{grid-template-columns:minmax(0,1fr) auto}.guest-ticket-stepper{grid-column:1 / -1}.ticket-summary{margin-top:2px}.detail-content{grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr);align-items:start}.detail-tags{display:flex}@media(max-width:1180px){.explore-intro{padding-right:32px}.search-fields{grid-template-columns:1fr 1fr}.detail-commerce-grid{grid-template-columns:1fr}.detail-booking-panel{position:static}}@media(max-width:820px){.explore-intro{min-height:auto;background:linear-gradient(180deg,#fffffff0,#ffffffd1),url(/attractions/eiffel-1.jpg) center / cover no-repeat;padding:28px 18px}.explore-intro h1{font-size:40px}.intro-meta{display:none}.search-panel{margin:12px 0 0}.search-fields,.detail-content,.workspace,.side-pane{grid-template-columns:1fr}.media-button{height:226px}}@media(max-width:520px){.topbar{padding:12px}.top-actions{grid-template-columns:1fr 1fr}.explore-intro h1{font-size:34px}.search-fields{padding:12px}.time-grid,.date-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{--font-ui: "Manrope", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif}html,body,button,input,select{font-family:var(--font-ui);font-synthesis-weight:none;text-rendering:optimizeLegibility}body{font-weight:500}.logo-text{font-family:var(--font-ui);font-weight:800}.top-search{display:flex;align-items:center;justify-self:center;gap:10px;width:min(100%,460px);min-height:42px;border:1px solid var(--line);border-radius:8px;background:#fbfdff;color:#7b8799;box-shadow:inset 0 1px #ffffffd1;padding:0 10px 0 12px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.top-search:focus-within{border-color:#0758f78c;background:#fff;box-shadow:0 0 0 3px #0758f71a,inset 0 1px #ffffffd1}.top-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--blue-dark);font-size:14px;font-weight:600}.top-search input::placeholder{color:#7b8799}.top-search-icon,.top-search-clear{display:grid;flex:0 0 auto;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:currentColor;place-items:center}.top-search-icon:hover,.top-search-clear:hover{background:#eef4ff;color:var(--blue)}.explore-intro h1{font-family:var(--font-display);font-size:clamp(66px,5.7vw,78px);font-weight:600;line-height:.9;text-wrap:balance}.explore-intro p,.detail-hero p,.detail-section p{font-weight:500;line-height:1.65}.topbar nav button,.top-actions button{font-weight:600}.search-button,.card-footer button,.reservation-preview button,.checkout-form button,.detail-reserve,.page-actions button,.empty-state button,.booking-actions button,.account-actions button,.back-button,.detail-actions button{font-weight:700}.field input,.party-control>span,.region-tabs button,.filter-chip,.select-shell,.price-shell,.sort-select,.meta-line,.from-label,.detail-field,.time-slot-group>div:first-child,.detail-metrics span,.booking-panel-head small,.ticket-summary span{font-weight:600}.intro-meta span,.results-head span,.map-toolbar span,.side-heading span,.tag-list span,.booking-items span,.status-pill,.detail-kicker,.date-quick-grid button,.time-grid button,.guest-ticket-row strong,.guest-ticket-row span,.guest-ticket-stepper>span,.ticket-summary strong{font-weight:600}.intro-meta strong,.results-head strong,.map-toolbar strong,.side-heading strong,.detail-metrics strong,.booking-panel-head span,.booking-card-head strong,.booking-total strong,.empty-state strong,.page-header h1{font-weight:700}.card-title{font-size:15px;font-weight:600;line-height:1.32}.card-rating,.card-rating span{font-weight:600}.card-rating strong,.card-footer strong,.reservation-preview strong,.booking-panel-head strong{font-weight:700}.detail-hero h1{font-family:var(--font-display);font-size:clamp(54px,4.8vw,66px);font-weight:600;line-height:.9;text-wrap:balance}.page-header h1,.modal-head h2{font-family:var(--font-display);font-weight:600;line-height:.98}.section-title h2{font-weight:600}.detail-kicker,.booking-panel-head span{line-height:1.3;text-transform:none}.page-header span,.account-summary span{text-transform:none}.detail-reserve{letter-spacing:0}.detail-booking-panel{max-height:calc(100vh - 104px);overflow-y:auto;scrollbar-gutter:stable}.detail-booking-panel .detail-reserve{position:sticky;bottom:0;z-index:2}@media(max-width:1180px){.explore-intro h1{font-size:62px}.detail-hero h1{font-size:54px}.detail-booking-panel{max-height:none;overflow:visible}.detail-booking-panel .detail-reserve{position:static}}@media(max-width:820px){.top-search{justify-self:stretch;width:100%}.explore-intro h1{font-size:48px;line-height:.92}.detail-hero h1{font-size:44px;line-height:.92}}@media(max-width:520px){.explore-intro h1{font-size:42px}.detail-hero h1{font-size:38px}}
