@font-face{font-family:Cormorant;src:url(cormorant-300.ttf) format('truetype');font-weight:300;font-display:swap}
@font-face{font-family:Cormorant;src:url(cormorant-400.ttf) format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url(manrope-400.ttf) format('truetype');font-weight:400;font-display:swap}
:root{--ink:#122d3a;--blue:#082936;--paper:#f8f8f3;--muted:#546873;--line:#cad2cf;--sea:#377787;--serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;font-weight:400;line-height:1.8}a{color:inherit;text-decoration:none}button,summary{font:inherit;color:inherit;cursor:pointer}button{background:none}img{max-width:100%;display:block}p{margin:0 0 1.5rem}h1,h2,h3{font-family:var(--serif);font-weight:300;margin:0;line-height:1.04;letter-spacing:-.025em;text-wrap:balance}h2{font-size:clamp(2.75rem,4.8vw,4.8rem)}h3{font-size:2rem}em{font-weight:300}button,a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--sea);outline-offset:6px}::selection{background:#b5d8d6;color:#062b36}
.skip{position:fixed;z-index:20;top:-5rem;left:1rem;background:white;color:var(--ink);padding:.8rem 1.3rem}.skip:focus{top:1rem}.wrap{width:min(1280px,calc(100% - 7rem));margin-inline:auto}.eyebrow{font-size:.75rem;letter-spacing:.19em;text-transform:uppercase;line-height:1.5}.section-title{margin:1.4rem 0 2rem}.soft{color:var(--muted)}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:.22rem;font-size:.875rem}.text-link:hover{opacity:.7}.button{display:inline-flex;justify-content:center;align-items:center;min-height:3.25rem;padding:.8rem 1.65rem;border:1px solid currentColor;font-size:.875rem;letter-spacing:.015em;transition:background .2s,color .2s}.button:hover{background:var(--ink);color:var(--paper)}
.site-header{position:absolute;inset:0 0 auto;z-index:10;color:white;border-bottom:1px solid #ffffff35}.header-inner{min-height:6.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;flex-direction:column;line-height:1.2;flex-shrink:0}.wordmark{font-family:var(--serif);font-size:2rem;font-weight:400;letter-spacing:.12em}.brand small{font-size:.75rem;letter-spacing:.19em;margin-top:.4rem}.main-nav{display:flex;align-items:center;gap:2rem;margin-left:auto;font-size:.875rem}.main-nav a{padding:.4rem 0;border-bottom:1px solid transparent}.main-nav a:hover{border-color:currentColor}.header-actions{display:flex;gap:1.3rem;align-items:center}.language{position:relative}.language summary{list-style:none;font-size:.875rem;display:flex;gap:.7rem;align-items:center;padding:.4rem .1rem;min-height:2.75rem}.language summary::-webkit-details-marker{display:none}.language summary::after{content:'';width:.35rem;height:.35rem;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-top:-.2rem}.language[open] summary::after{transform:rotate(225deg);margin-top:.2rem}.language-menu{position:absolute;top:calc(100% + .6rem);right:0;min-width:13rem;padding:.6rem;background:var(--paper);color:var(--ink);box-shadow:0 10px 50px #001f3b28}.language-menu a{display:flex;align-items:center;gap:1rem;padding:.45rem .65rem;font-size:.875rem}.language-menu span{font-size:.75rem;letter-spacing:.08em;width:1.5rem;color:var(--muted)}.language-menu a:hover,.language-menu a[aria-current]{background:#e5ece8}.menu-button{display:none;border:0;padding:.6rem 0;min-height:2.75rem;font-size:.875rem}.menu-button::before{content:'';display:inline-block;width:1rem;height:.45rem;border-top:1px solid currentColor;border-bottom:1px solid currentColor;margin-right:.6rem}
.hero{position:relative;min-height:760px;min-height:min(900px,100svh);display:flex;flex-direction:column;justify-content:flex-end;color:white;background:var(--blue)}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 56%;filter:saturate(1.08)}.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#08253350 0%,#032b3420 32%,#04243138 50%,#041f35b0 100%);pointer-events:none}.hero-body{position:relative;z-index:1;padding-top:11rem;padding-bottom:4.2rem}.hero h1{font-size:clamp(4.5rem,8vw,8.5rem);max-width:48rem;line-height:.95;margin:1.5rem 0 1.6rem}.hero h1 em{display:block;letter-spacing:-.015em}.hero-description{max-width:27rem;font-size:.9375rem;line-height:1.7;color:#ffffffeb;margin-bottom:1.7rem}.hero .button:hover{background:white;color:var(--ink)}.hero-floor{position:relative;z-index:1;display:flex;justify-content:space-between;gap:1rem;align-items:center;border-top:1px solid #ffffff40;padding:1.3rem 0;font-size:.75rem;letter-spacing:.08em}.hero-floor .location{display:flex;gap:1.25rem}.hero-floor a{font-size:.75rem;border-bottom:1px solid #ffffff70;letter-spacing:.02em}.hero-floor .coordinates{white-space:nowrap}
.intro{padding:7rem 0 6rem;display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:start}.intro h2{margin-top:1.5rem;max-width:34rem}.intro-copy{padding-top:2.8rem;max-width:33rem;color:var(--muted)}.intro-copy .lead{font-family:var(--serif);font-size:1.8rem;color:var(--ink);line-height:1.35;letter-spacing:-.015em}.intro-facts{display:flex;flex-wrap:wrap;gap:.9rem 1.3rem;font-size:.75rem;letter-spacing:.09em;text-transform:uppercase;border-top:1px solid var(--line);padding-top:1.2rem;margin-top:2rem}.intro-facts span+span{padding-left:1.3rem;border-left:1px solid var(--line)}
.lighthouse{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:6.5rem;margin-bottom:6rem}.lighthouse figure{margin:0}.lighthouse img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:57% 50%}.caption{font-size:.75rem;line-height:1.5;color:var(--muted);margin-top:.8rem}.caption a{border-bottom:1px solid #80918d}.lighthouse-copy p{color:var(--muted);max-width:31rem}.date-note{border-top:1px solid var(--line);display:flex;align-items:center;gap:1.75rem;margin-top:2.5rem;padding-top:1.5rem}.date-note strong{font-family:var(--serif);font-weight:300;font-size:3rem;line-height:1}.date-note span{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}
.hours{padding:5rem 0 6rem;border-top:1px solid var(--line)}.hours-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem}.hours-heading h2{max-width:44rem}.hours-heading .eyebrow{margin-bottom:.8rem}.hour-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3.5rem;margin-top:3.5rem}.hour{border-top:1px solid var(--line);padding-top:1.5rem}.hour-number{font-family:var(--serif);font-size:1.2rem;color:var(--muted)}.hour h3{margin:1.25rem 0 1rem}.hour p{color:var(--muted);font-size:.9375rem;margin:0}
.season-section{background:var(--blue);color:var(--paper);padding:5.5rem 0}.season-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:7rem;align-items:center}.season-section h2{margin:1.3rem 0 2rem;max-width:28rem}.season-tabs{display:flex;flex-wrap:wrap;gap:.6rem;margin:2rem 0 2.5rem}.season-tab{border:1px solid #ffffff45;padding:.7rem 1rem;font-size:.875rem;min-height:2.75rem;transition:.2s}.season-tab[aria-selected=true],.season-tab:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.season-panel{max-width:32rem;min-height:9rem}.season-panel h3{font-size:2.35rem;margin-bottom:1rem}.season-panel p{color:#e0e8e6;font-size:.9375rem;max-width:29rem}.season-panel[hidden]{display:none}.season-image{position:relative;margin:0}.season-image img{width:100%;aspect-ratio:1.15;object-fit:cover;object-position:40% 50%}.season-image figcaption{color:#d4e1df;font-size:.75rem;margin-top:.75rem}.season-note{font-size:.75rem;color:#c0d0d1;max-width:29rem;margin:1rem 0 0}
.visit{padding:7rem 0;display:grid;grid-template-columns:1fr 1fr;gap:7rem}.visit h2{margin:1.5rem 0 2rem}.visit-lead{color:var(--muted);max-width:29rem}.visit-links{display:flex;align-items:center;flex-wrap:wrap;gap:1.25rem;margin-top:2.2rem}.visit-note{font-size:.75rem;color:var(--muted);max-width:29rem;margin-top:1.2rem}.visit-step{display:grid;grid-template-columns:2.3rem 1fr;gap:1.2rem;padding:1.55rem 0;border-bottom:1px solid var(--line)}.visit-step:first-child{padding-top:0}.step-number{font-size:.75rem;color:var(--muted);letter-spacing:.08em;margin-top:.5rem}.visit-step h3{font-size:1.9rem;margin-bottom:.65rem}.visit-step p{font-size:.9375rem;color:var(--muted);margin:0}
.faq{padding-bottom:6rem;display:grid;grid-template-columns:.8fr 1.2fr;gap:7rem;border-top:1px solid var(--line);padding-top:4rem}.faq h2{font-size:3rem;margin:1.2rem 0}.faq-items details{border-bottom:1px solid var(--line);padding:1.2rem 0}.faq-items summary{display:flex;justify-content:space-between;gap:1.5rem;list-style:none;font-size:1rem;line-height:1.6}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary::after{content:'+';font-family:var(--sans);font-size:1.25rem;font-weight:400;flex-shrink:0}.faq-items details[open] summary::after{content:'−'}.faq-items details p{font-size:.9375rem;margin:1rem 2rem 0 0;color:var(--muted)}
.closing{padding:2rem 0 5rem;text-align:center}.closing p{font-family:var(--serif);font-size:clamp(2.3rem,4vw,4.3rem);font-weight:300;line-height:1.2;max-width:47rem;margin:0 auto 1.8rem}.closing .eyebrow{font-family:var(--sans);font-size:.75rem;margin-top:1.7rem}
.site-footer{background:var(--blue);color:var(--paper);padding:3.5rem 0 1.5rem}.footer-top{display:flex;justify-content:space-between;gap:3rem;margin-bottom:3rem}.footer-top .wordmark{font-size:2.4rem}.footer-intro{max-width:23rem;font-size:.875rem;color:#c5d3d5;margin:1rem 0 0}.footer-links{display:flex;gap:4rem;align-items:start}.footer-links>div{display:flex;flex-direction:column;gap:.55rem;align-items:flex-start;font-size:.875rem}.footer-links .eyebrow{color:#a9c2c6;margin-bottom:.75rem}.footer-bottom{border-top:1px solid #ffffff25;padding-top:1.25rem;display:flex;justify-content:space-between;gap:1.5rem;align-items:start;font-size:.75rem;color:#c5d3d5}.footer-details summary{font-size:.75rem}.footer-details-content{max-width:34rem;line-height:1.65;margin-top:1rem}.footer-details-content p{margin:.75rem 0}.footer-details-content a{text-decoration:underline}.footer-bottom details{max-width:34rem}.corporate-link{font-size:.75rem;border-bottom:1px solid #71909b;white-space:nowrap}.policy{font-size:.75rem;border-top:1px solid #ffffff25;padding-top:1rem;margin-top:1rem;color:#c5d3d5}.policy summary{width:max-content}.policy p{max-width:46rem;margin-top:1rem}
@media(min-width:1700px){.hero{min-height:900px}}
@media(max-width:1100px){.wrap{width:calc(100% - 4rem)}.main-nav{gap:1.2rem}.header-inner{gap:1.4rem}.intro,.lighthouse,.season-layout,.visit,.faq{gap:3.5rem}.hero h1{font-size:6.4rem}.lighthouse img{aspect-ratio:.9}.footer-links{gap:2rem}}
@media(max-width:800px){.header-inner{min-height:5.25rem}.main-nav{display:none}.menu-button{display:block}.header-actions{gap:1.25rem}.wordmark{font-size:1.7rem}.brand small{font-size:.75rem}.menu-open .main-nav{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;padding:1.2rem 2rem 1.6rem;gap:.2rem;background:var(--paper);color:var(--ink);box-shadow:0 20px 30px #06212d15}.menu-open .main-nav a{padding:.7rem 0;font-size:1rem}.hero{min-height:700px;min-height:92svh;justify-content:flex-end}.hero-body{padding-top:8rem;padding-bottom:3rem}.hero h1{font-size:5.5rem;max-width:37rem}.hero-photo{object-position:61% 50%}.hero-floor .location{gap:.7rem}.intro{padding:4.5rem 0;gap:2rem}.intro,.visit,.faq{grid-template-columns:1fr}.intro h2{max-width:35rem}.intro-copy{padding-top:0;max-width:100%}.lighthouse{gap:2.5rem;margin-bottom:4rem}.lighthouse h2{font-size:3rem}.lighthouse-copy p{font-size:.9375rem}.hours{padding:3.5rem 0 4.5rem}.hours-heading{display:block}.hours-heading .eyebrow{display:block;margin-bottom:1.2rem}.hour-grid{gap:2rem;margin-top:2.5rem}.season-layout{gap:2.5rem}.season-section{padding:4rem 0}.season-section h2{font-size:3.4rem}.season-tabs{gap:.4rem}.season-tab{padding:.6rem .75rem}.season-panel h3{font-size:2rem}.season-image img{aspect-ratio:.8}.visit{padding:4.5rem 0;gap:3rem}.faq{gap:1rem;padding-top:3rem;padding-bottom:4rem}.footer-top{gap:2rem;flex-wrap:wrap}.footer-links{gap:4rem}.footer-bottom{flex-wrap:wrap}.closing{padding-bottom:3.5rem}}
@media(max-width:580px){.wrap{width:calc(100% - 2.5rem)}h2{font-size:3.2rem}.header-inner{gap:1rem}.header-actions{gap:.9rem}.brand small{display:none}.wordmark{font-size:1.65rem;letter-spacing:.08em}.menu-button{font-size:.8125rem}.menu-button::before{margin-right:.4rem}.language summary{font-size:.8125rem}.hero{min-height:700px;min-height:calc(100svh - 1.5rem)}.hero h1{font-size:clamp(3.9rem,15vw,5.2rem);margin:1.25rem 0 1.4rem;max-width:100%}.hero-description{max-width:21rem;font-size:.875rem}.hero-body{padding-top:10rem;padding-bottom:2.5rem}.hero::after{background:linear-gradient(180deg,#08253355 0%,#032b3410 22%,#04243130 40%,#041f35e0 100%)}.hero-floor{font-size:.75rem;padding:1rem 0}.hero-floor .coordinates{display:none}.hero-floor .location span:last-child{display:none}.hero-floor a{font-size:.75rem}.hero-photo{object-position:60% 50%}.intro{padding:3.5rem 0}.intro-copy .lead{font-size:1.75rem}.intro-facts{gap:.8rem 1rem}.intro-facts span+span{padding-left:1rem}.lighthouse{grid-template-columns:1fr;gap:2.5rem}.lighthouse img{aspect-ratio:1.05;object-position:54% 55%}.lighthouse h2{font-size:3.2rem;max-width:24rem}.lighthouse-copy p{font-size:1rem}.date-note{margin-top:2rem}.hour-grid{grid-template-columns:1fr;gap:1.7rem}.hours-heading h2{font-size:3.1rem}.hour{display:grid;grid-template-columns:2rem 1fr;gap:0 1rem}.hour-number{grid-row:1/3;padding-top:.45rem}.hour h3{margin:.2rem 0 .65rem}.hour p{font-size:1rem}.season-layout{grid-template-columns:1fr;gap:2rem}.season-section h2{font-size:3.2rem}.season-tabs{margin:1.8rem 0 1.7rem}.season-tab{flex-grow:1;padding:.7rem .7rem;min-width:20%;font-size:.875rem}.season-panel{min-height:8rem}.season-panel p{font-size:1rem}.season-image img{aspect-ratio:1.5;object-position:33% 50%}.visit{padding:3.5rem 0}.visit-step{grid-template-columns:1.7rem 1fr;gap:.7rem}.visit-step p{font-size:1rem}.faq h2{font-size:2.9rem}.faq-items summary{font-size:.9375rem}.faq-items details p{font-size:.9375rem}.closing p{font-size:2.7rem}.footer-links{width:100%;gap:2rem;justify-content:space-between}.footer-top{margin-bottom:2rem}.footer-bottom{gap:1rem}.footer-intro{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
img{height:auto}body{overflow-wrap:anywhere}.header-inner{flex-wrap:wrap;row-gap:0}.header-inner>*{min-width:0}.brand{min-width:max-content}.main-nav a{overflow-wrap:normal}.language-menu{min-width:min(13rem,calc(100vw - 2.5rem));max-width:calc(100vw - 2.5rem)}.button{max-width:100%;text-align:center}.footer-links>div{min-width:0}.footer-bottom>*{min-width:0}.corporate-link{white-space:normal}
.hero-photo{filter:none}
