:root{--brand: #2b5a93;--brand-deep: #21456f;--text: #555555;--text-soft: #737b85;--paper: #ffffff;--paper-2: #f5f7fa;--accent: #ff8555;--accent-deep:#ef6836;--link: #2ea3f2;--ok: #2f9e6f;--line: #e6e9ee;--slate: #737b85;--white: #ffffff;--maxw: 1140px;--radius: 8px;--shadow: 0 1px 2px rgba(30,50,80,.05), 0 8px 26px rgba(30,50,80,.07);--display: "Poppins", system-ui, sans-serif;--body: "Open Sans", system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:22px}h1,h2,h3,h4{font-family:var(--display);line-height:1.2;color:var(--brand);margin:0 0 .5em}h1{font-size:clamp(2.1rem,5.5vw,3.9rem);font-weight:300;letter-spacing:-.01em}h2{font-size:clamp(1.6rem,3.6vw,2.35rem);font-weight:600}h3{font-size:1.3rem;font-weight:600;color:#333}p{margin:0 0 1.1em}a{color:var(--link);text-decoration-thickness:1px;text-underline-offset:2px}.eyebrow{font-family:var(--display);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:600;color:var(--accent-deep);margin:0 0 .7em}.topline{height:3px;background:var(--accent)}.site-header{position:sticky;top:0;z-index:50;background:#fffffff0;backdrop-filter:saturate(1.1) blur(6px);border-bottom:1px solid var(--line)}.site-header .wrap{display:flex;align-items:center;gap:24px;min-height:70px}.brand{font-family:var(--display);font-weight:600;font-size:1.12rem;color:var(--brand);text-decoration:none;letter-spacing:-.01em;white-space:nowrap}.brand .heart{color:var(--accent)}.nav{margin-left:auto;display:flex;gap:22px;flex-wrap:wrap}.nav a{color:#4a5560;text-decoration:none;font-weight:400;font-size:.95rem}.nav a:hover{color:var(--accent-deep)}.nav-toggle{display:none}@media (max-width: 880px){.nav{display:none;position:absolute;top:70px;left:0;right:0;flex-direction:column;gap:0;background:var(--paper);border-bottom:1px solid var(--line);padding:8px 22px 16px}.nav a{padding:11px 0;border-bottom:1px solid var(--line)}.nav-toggle{display:inline-flex;margin-left:auto;background:none;border:1px solid var(--line);border-radius:6px;padding:8px 12px;font-size:1rem;cursor:pointer;color:var(--brand)}#nav-check:checked~.nav{display:flex}}#nav-check{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:.7em 1.4em;border-radius:var(--radius);border:2px solid transparent;cursor:pointer;text-decoration:none;font-size:.82rem;line-height:1.1;transition:transform .08s ease,background .15s ease,color .15s ease,box-shadow .15s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 6px 16px #ff855547}.btn-primary:hover{background:var(--accent-deep);border-color:var(--accent-deep)}.btn-ghost{background:transparent;color:var(--accent-deep);border-color:var(--accent)}.btn-ghost:hover{background:var(--accent);color:#fff}.btn-block{width:100%}.btn[data-todo="1"]{background:repeating-linear-gradient(45deg,#ffe3d4,#ffe3d4 8px,#ffd2bd 8px 16px);color:var(--accent-deep);box-shadow:none;border:2px dashed var(--accent-deep)}.btn[data-todo="1"]:after{content:" ⚙"}section{padding-block:clamp(44px,6vw,78px)}.section-alt{background:var(--paper-2)}.lead{font-size:1.1rem;color:var(--text-soft);max-width:62ch}.hero{position:relative;isolation:isolate;color:#fff;padding-block:clamp(84px,13vw,150px);background:#1b2f4a}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#14233ad1,#14233a8c 55%,#14233a59)}.hero h1{color:#fff;max-width:16ch}.hero .eyebrow{color:#ffd0bb}.hero .lead{color:#fffffff0}.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:1.4em}.hero .btn-ghost{color:#fff;border-color:#fff}.hero .btn-ghost:hover{background:#fff;color:var(--brand)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}@media (max-width: 800px){.cards{grid-template-columns:1fr}}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);display:flex;flex-direction:column}.card h3{margin-bottom:.35em}.card p{color:var(--text-soft);flex:1}.card a.more{font-family:var(--display);font-weight:600;color:var(--accent-deep);text-decoration:none;font-size:.95rem}.card a.more:hover{text-decoration:underline}.card-media{margin:-22px -22px 16px;border-bottom:1px solid var(--line)}.card-media img{width:100%;height:158px;object-fit:cover}.compare-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow)}table.compare{border-collapse:collapse;width:100%;min-width:900px;font-size:.93rem}table.compare th,table.compare td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}table.compare thead th{background:var(--brand);color:#fff;font-family:var(--display);font-weight:600;position:sticky;top:0}table.compare thead th .badge{display:inline-block;margin-top:6px}table.compare tbody th[scope=row]{font-weight:600;color:var(--brand);background:var(--paper-2);white-space:nowrap}table.compare .price{font-family:var(--display);font-weight:600;font-size:1.02rem;color:var(--brand)}table.compare .yes{color:var(--ok);font-weight:700}table.compare .no{color:var(--slate)}.badge{font-family:var(--display);font-size:.64rem;text-transform:uppercase;letter-spacing:.07em;font-weight:600;padding:3px 9px;border-radius:999px}.badge-sell{background:var(--accent);color:#fff}.badge-fav{background:var(--brand);color:#fff}.pros li{color:var(--ok)}.cons li{color:var(--slate)}.mini-list{margin:0;padding-left:1.1em;font-size:.88rem}.look-img{width:92px;height:92px;object-fit:cover;border-radius:6px;border:1px solid var(--line);background:#fff}.price-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.ticket{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:16px;text-align:center;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px}.ticket .dur{font-family:var(--display);font-weight:600;color:var(--brand)}.ticket .child{font-size:.82rem;color:var(--slate)}.ticket .adult{font-family:var(--display);font-size:1.5rem;font-weight:600;color:#222}.ticket .btn{margin-top:4px}.sight-prices{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 680px){.sight-prices{grid-template-columns:1fr}}.price-col{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow);overflow:hidden}.price-col h4{background:var(--brand);color:#fff;margin:0;padding:12px 16px;font-family:var(--display);font-weight:600}.price-col ul{list-style:none;margin:0;padding:0}.price-col li{display:flex;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--line)}.price-col li b{font-family:var(--display);color:var(--brand)}.price-col .foot{padding:14px 16px}.pass-block{border-top:3px solid var(--accent);padding-top:28px;margin-top:28px}.pass-block:first-of-type{margin-top:0}.callout{background:var(--paper-2);border-left:4px solid var(--accent);padding:14px 18px;border-radius:0 8px 8px 0;margin:1.2em 0}.savings{font-family:var(--display);font-weight:700;color:var(--ok)}.pass-figure{float:right;width:220px;margin:0 0 16px 24px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff}.pass-figure img{width:100%;display:block}@media (max-width: 620px){.pass-figure{float:none;width:100%;margin:0 0 18px}}.portrait{display:flex;gap:18px;align-items:center}.portrait img{width:92px;height:92px;border-radius:50%;object-fit:cover;border:3px solid var(--accent);flex:none}.faq details{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);margin-bottom:12px;box-shadow:var(--shadow)}.faq summary{cursor:pointer;padding:16px 20px;font-family:var(--display);font-weight:600;color:var(--brand);list-style:none;display:flex;justify-content:space-between;gap:12px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--accent-deep);font-size:1.4rem;line-height:1}.faq details[open] summary:after{content:"–"}.faq details>div{padding:0 20px 18px;color:var(--text)}.form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px}.field{margin-bottom:16px}.field label{display:block;font-family:var(--display);font-weight:600;font-size:.9rem;color:var(--brand);margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:6px;font:inherit;background:#fff;color:var(--text)}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);border-color:var(--accent)}.field textarea{min-height:130px;resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 560px){.field-row{grid-template-columns:1fr}}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-note{font-size:.84rem;color:var(--slate)}.form-flash{padding:12px 16px;border-radius:6px;margin-bottom:18px;font-weight:600}.form-flash.ok{background:#e7f6ec;color:#1c6b3b;border:1px solid #b6e2c4}.form-flash.err{background:#fdeaea;color:#9a2b2b;border:1px solid #f3c2c2}.site-footer{background:var(--brand-deep);color:#cdd8e6;margin-top:40px;padding-block:46px}.site-footer a{color:#eaf1f8;text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px}@media (max-width: 720px){.footer-grid{grid-template-columns:1fr}}.site-footer .brand{color:#fff}.site-footer h4{color:#fff;font-size:.88rem;text-transform:uppercase;letter-spacing:.1em}.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.footer-legal{border-top:1px solid rgba(255,255,255,.14);margin-top:30px;padding-top:18px;font-size:.82rem;color:#9fb1c6}.prose{max-width:72ch}.prose h2{margin-top:1.4em}.prose ul{padding-left:1.2em}.center{text-align:center}.mt-0{margin-top:0}img{max-width:100%;height:auto;display:block}.hero-grid{display:block}
