:root{color-scheme:light;--ink:#1c263b;--muted:#607084;--violet:#6756d8;--line:#e5e8f0;--cream:#faf9f6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.6 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}button,input,select{font:inherit}.skip{position:absolute;left:-9999px;top:8px;z-index:9;background:#fff;padding:10px}.skip:focus{left:8px}.site-header{background:#fff;border-bottom:1px solid var(--line)}.header-inner,.page-wrap,.footer-inner{max-width:1180px;margin:auto;padding-left:24px;padding-right:24px}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:7px;text-decoration:none;font-weight:800;letter-spacing:.02em;font-size:20px}.brand img{width:50px;height:38px;object-fit:contain}.site-header nav{display:flex;gap:28px;align-items:center}.site-header nav a{text-decoration:none;color:#526076;font-size:14px;font-weight:650}.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--violet)}.crumbs{display:flex;align-items:center;gap:10px;color:#7d8796;font-size:12px;padding:23px 0}.crumbs a{text-decoration:none;color:#53617b}.hero{position:relative;min-height:460px;display:grid;grid-template-columns:1.04fr .96fr;overflow:hidden;border:1px solid #e0e2f4;border-radius:28px;background:linear-gradient(125deg,#eeedff 0%,#e9eafe 53%,#e6e2f7 100%)}.hero-copy{position:relative;z-index:2;padding:58px 30px 46px 62px}.eyebrow,.section-kicker{margin:0 0 16px;font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--violet)}.eyebrow{display:inline-flex;align-items:center;gap:9px}.eyebrow-dot{width:8px;height:8px;border-radius:50%;background:#765de0;box-shadow:0 0 0 5px #dbd6ff}.hero h1{font-family:Georgia,serif;font-weight:500;letter-spacing:-.06em;font-size:clamp(58px,7vw,91px);line-height:.96;margin:0 0 22px;color:#202342}.hero h1 em{color:#745fdd;font-weight:400}.hero-lead{max-width:450px;margin:0 0 25px;color:#4c5675;font-size:17px;line-height:1.65}.hero-cta{display:inline-flex;gap:34px;align-items:center;padding:12px 20px;background:#222345;color:#fff;text-decoration:none;border-radius:99px;font-size:14px;font-weight:700}.hero-cta:hover,.hero-cta:focus-visible{background:#5144b9}.hero-footnote{max-width:445px;margin:26px 0 0;color:#707b97;font-size:11px}.hero-art{position:relative;min-height:390px;overflow:hidden}.sun-disc{position:absolute;right:-65px;top:26px;width:470px;height:470px;background:#d8d3fa;border-radius:50%;box-shadow:0 0 0 52px #e3e0fa,0 0 0 105px #eceaff}.arch{position:absolute;border:19px solid #5752a3;border-bottom:0;border-radius:170px 170px 0 0;width:340px;height:390px;bottom:-100px;right:90px;transform:rotate(-8deg);box-shadow:inset 0 0 0 9px #aaa0e0}.arch-back{right:-40px;bottom:-190px;border-color:#9290d4;transform:rotate(16deg);opacity:.75}.arch-front:before{content:"";position:absolute;inset:34px 25px 0;border:2px solid #9994d6;border-bottom:0;border-radius:130px 130px 0 0}.art-ticket{position:absolute;left:9%;top:34%;z-index:2;display:flex;flex-direction:column;width:min(310px,75%);padding:22px 25px;background:#fff;border:1px solid #eeeafb;border-radius:13px;box-shadow:0 22px 45px #3b327833;transform:rotate(-7deg)}.art-ticket span{font-size:10px;letter-spacing:.15em;font-weight:800;color:#8774d3}.art-ticket strong{font-family:Georgia,serif;font-size:31px;color:#222345;white-space:nowrap}.art-ticket i{font-size:23px;font-style:normal;color:#aaa4d6}.art-ticket small{border-top:1px dashed #d6d1ec;padding-top:10px;color:#7a83a1}.art-stamp{position:absolute;z-index:3;right:15%;bottom:55px;width:94px;height:94px;border:2px solid #fff;border-radius:50%;display:grid;place-content:center;text-align:center;line-height:1.1;transform:rotate(13deg);background:#7469c9;color:white;font-size:25px;font-family:Georgia,serif;box-shadow:0 12px 26px #40348a33}.art-stamp span{font:800 9px/1.5 ui-sans-serif,system-ui;letter-spacing:.18em}.checker-section,.directory{padding-top:78px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:25px}.section-head h2,.next-step h2{font-family:Georgia,serif;font-weight:500;line-height:1.15;letter-spacing:-.035em;font-size:clamp(31px,4vw,45px);margin:0}.section-head>p{max-width:390px;margin:0 0 5px;color:var(--muted);font-size:14px}.checker-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-card,.result-card{min-height:322px;padding:28px;background:#fff;border:1px solid var(--line);border-radius:19px;box-shadow:0 9px 30px #3c486209}.form-card{display:flex;flex-direction:column}.form-card label{display:block;margin:0 0 7px;color:#3a4560;font-size:12px;font-weight:750}.form-card select,.form-card input{width:100%;height:45px;border:1px solid #dfe3ed;border-radius:9px;background:#fdfdff;color:#26314a;padding:0 12px;margin-bottom:17px}.form-card select:focus,.form-card input:focus{outline:2px solid #b7abfa;outline-offset:1px}.date-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-card button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin-top:auto;background:#6756d8;border:0;border-radius:9px;color:white;font-weight:750;cursor:pointer}.form-card button:hover,.form-card button:focus-visible{background:#5140c2}.result-card{background:#252a50;border-color:#252a50;color:#fff;display:flex;flex-direction:column;justify-content:center}.result-kicker{margin:0 0 16px;color:#bfb7ff;font-size:10px;font-weight:800;letter-spacing:.17em}.result-card h3{font-family:Georgia,serif;font-size:clamp(27px,3vw,36px);font-weight:500;line-height:1.15;margin:0 0 14px}.result-card p{max-width:450px;color:#d7daf0;margin:0 0 10px;font-size:14px}.result-card .status-tag{align-self:flex-start;border-radius:99px;padding:5px 12px;margin-bottom:16px;background:#e8d7a9;color:#4f3c0d;font-size:11px;font-weight:800;letter-spacing:.07em}.result-card[data-status="open"] .status-tag{background:#c5f4dc;color:#164b33}.result-card[data-status="late"] .status-tag,.result-card[data-status="closed"] .status-tag{background:#ffd3d3;color:#74202a}.result-details{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:11px 0}.result-details div{padding:9px 11px;background:#343a63;border-radius:7px}.result-details span{display:block;color:#aeb5dc;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.result-details strong{font-size:14px}.result-card a{color:#fff;text-underline-offset:3px;font-size:13px;margin-top:8px}.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.place-card{min-height:270px;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;flex-direction:column}.place-top{display:flex;justify-content:space-between;gap:10px;color:#7867cf;font-size:10px;font-weight:800;letter-spacing:.13em}.place-top span:last-child{color:#c7c7d5}.place-card h3{margin:20px 0 9px;font:500 23px/1.14 Georgia,serif;letter-spacing:-.025em}.place-card h3 small{font:650 12px/1.5 ui-sans-serif,system-ui;color:#787f96;letter-spacing:0}.place-card p{margin:0 0 19px;color:#647086;font-size:12px;line-height:1.65}.place-card a{margin-top:auto;color:#5f50bb;font-size:12px;font-weight:750;text-decoration:none}.place-card a:hover,.place-card a:focus-visible{text-decoration:underline}.note{display:flex;gap:20px;margin-top:55px;padding:26px 29px;background:#f0eefb;border:1px solid #e2ddf6;border-radius:15px}.note-icon{flex:none;width:29px;height:29px;border-radius:50%;background:#6c59d2;color:#fff;display:grid;place-items:center;font-weight:800}.note h2{font-size:15px;margin:0 0 7px}.note p{margin:0;color:#59647d;font-size:13px;line-height:1.7}.next-step{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:65px 0}.next-step p:last-child{color:var(--muted);font-size:14px;margin:12px 0 0}.next-step>div:last-child{display:flex;gap:10px;flex-wrap:wrap}.next-step a{display:inline-block;border:1px solid #d9dcea;border-radius:99px;background:#fff;padding:9px 15px;text-decoration:none;font-size:12px;font-weight:750}.next-step a:hover,.next-step a:focus-visible{border-color:#8170dd;color:#5b49c9}footer{background:#252a43;color:#cbd0df}.footer-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}.footer-inner span:last-child{display:flex;gap:22px}.footer-inner a{text-decoration:none}.footer-inner a:hover{text-decoration:underline}@media(max-width:850px){.hero{grid-template-columns:1fr}.hero-copy{padding:45px 34px}.hero-art{min-height:280px}.sun-disc{top:-180px;right:10%}.arch{bottom:-220px;right:22%}.art-ticket{left:16%;top:8%}.art-stamp{bottom:20px}.place-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.header-inner,.page-wrap,.footer-inner{padding-left:18px;padding-right:18px}.header-inner{min-height:68px}.site-header nav{gap:12px}.site-header nav a{font-size:11px}.site-header nav a:last-child{display:none}.brand{font-size:17px}.brand img{width:38px;height:30px}.hero{border-radius:19px}.hero-copy{padding:36px 26px 22px}.hero h1{font-size:57px}.hero-lead{font-size:15px}.hero-art{min-height:220px}.sun-disc{width:350px;height:350px}.arch{width:280px;height:320px;right:7%;bottom:-210px}.art-ticket{top:0;left:10%;width:250px}.art-ticket strong{font-size:24px}.art-stamp{width:74px;height:74px;font-size:19px;right:10%;bottom:16px}.checker-section,.directory{padding-top:56px}.section-head{display:block}.section-head>p{margin-top:11px}.checker-grid,.place-grid{grid-template-columns:1fr}.form-card,.result-card{min-height:unset}.result-card{min-height:250px}.note{padding:20px;gap:12px}.next-step{display:block;padding:52px 0}.next-step>div:last-child{margin-top:20px}.footer-inner{padding-top:20px;padding-bottom:20px;align-items:flex-start;flex-direction:column}}

/* City catalog: the full attraction list remains readable without JavaScript. */
.city-group{margin:12px 0;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}
.city-group summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 21px;cursor:pointer;list-style:none}
.city-group summary::-webkit-details-marker{display:none}
.city-group summary::after{content:"+";order:3;color:#6959cb;font-size:23px;line-height:1}
.city-group[open] summary::after{content:"−"}
.city-group summary strong{font:500 24px/1.25 Georgia,serif}
.city-group summary span{margin-left:auto;color:#747e94;font-size:12px;font-weight:650}
.city-group .place-grid{padding:0 18px 18px}
.city-group .place-card{background:#fdfdff;min-height:290px}
.city-group .place-top span:last-child{color:#6959bb;text-align:right;letter-spacing:0;font-size:10px}
.city-group .place-card h3{font-size:22px;margin:17px 0 9px}
.city-group .place-card p{margin-bottom:10px}
.city-group .place-card .place-mini{color:#475775;font-weight:700;font-size:11px}
.city-group .place-card .place-hours{color:#5446a8;font-size:12px;font-weight:700}
.city-group .place-card a{display:block;margin-top:9px}
.city-group .place-card a+a{margin-top:4px;color:#66718a}
.result-card[data-status="unknown"] .status-tag,.result-card[data-status="area"] .status-tag{background:#dfe6fa;color:#293963}
@media(max-width:640px){.city-group summary{padding:15px}.city-group summary strong{font-size:21px}.city-group summary span{font-size:10px}.city-group .place-grid{padding:0 12px 12px}.city-group .place-card{min-height:unset}}

.checker-grid{align-items:start}
