/* Maritimes-specific composition. Shared visual tokens and components stay intact. */
.skip-link{position:absolute;left:14px;top:-60px;z-index:100;padding:14px;background:var(--navy);color:white}.skip-link:focus{top:12px}.edition-pill{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;margin:0 0 24px;border:1px solid #b9d7cc;border-radius:50px;color:var(--teal);font-size:11px;letter-spacing:1.6px;font-weight:900}.edition-pill span{color:var(--coral);font-size:17px}.gateway-hero{min-height:630px;gap:5vw;padding-top:58px;padding-bottom:65px;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)}.gateway-hero h1{font-size:clamp(46px,5.4vw,77px);max-width:680px}.gateway-hero .hero-text{max-width:570px;font-size:17px;line-height:1.65}.hero-ctas{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.primary-button{background:var(--coral);color:white;border-radius:8px;gap:18px;min-height:47px}.primary-button:hover{filter:brightness(.97)}.hero-secondary{font-size:13px;font-weight:800;border-bottom:1px solid #9ab6ac;padding-bottom:5px}.hero-footnote{font-size:11px;color:#536d77;margin:23px 0 0}.hero-explorer{position:relative;max-width:520px;width:100%;justify-self:center;background:#fffdf85c;border:1px solid #ffffffb3;border-radius:24px;padding:22px 22px 17px;box-shadow:0 25px 60px #1a596214;transform:rotate(1deg)}.explorer-topline{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.4px;font-weight:900;color:#44666c}.coverage-scene{position:relative;height:335px}.explorer-waves{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.explorer-province{position:absolute;text-align:left;border:2px solid #fffdf8;border-radius:20px;box-shadow:0 9px 21px #173f4121;padding:17px;display:grid;gap:8px;color:white;transition:transform .18s,box-shadow .18s;min-width:150px}.explorer-province:hover,.explorer-province.selected{transform:translateY(-5px);box-shadow:0 0 0 3px var(--gold),0 12px 26px #173f4125}.explorer-province strong{font:700 20px/1.05 Georgia,serif;max-width:150px}.explorer-province>span:last-child{font-size:11px;display:flex;justify-content:space-between;gap:8px}.explorer-abbr{width:30px;height:25px;font-size:11px;display:grid;place-items:center;border:1px solid #ffffff55;border-radius:30px;letter-spacing:1px}.explorer-nb{background:linear-gradient(150deg,#498c74,#235b5e);left:1%;top:68px;width:45%;transform:rotate(-4deg)}.explorer-pe{background:linear-gradient(150deg,#a55c50,#6e3e4e);right:0;top:32px;width:43%;transform:rotate(4deg)}.explorer-ns{background:linear-gradient(150deg,#168fa0,#174d73);right:12%;bottom:4px;width:49%;transform:rotate(-3deg)}.explorer-caption{font-size:10px;color:#5b7778;margin:17px 0 0;text-align:center;line-height:1.5}.collection-bar{display:flex;gap:0;align-items:center;justify-content:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);padding:18px 22px;flex-wrap:wrap}.collection-bar>span{font-size:10px;letter-spacing:1.4px;font-weight:900;color:#778784;margin-right:25px}.collection-bar a{font-size:13px;font-weight:700;padding:5px 25px;border-right:1px solid var(--line)}.collection-bar a:last-child{border-right:0}.collection-bar a:hover{color:var(--teal)}.finder-heading{align-items:center}.finder-heading h2{font-size:clamp(32px,3.5vw,45px)}.finder-heading p:not(.eyebrow){max-width:660px}.surprise-button{background:var(--paper);border:1px solid #d6cbb9;border-radius:100px;padding:13px 18px;white-space:nowrap;color:var(--navy);font-size:13px;font-weight:900;box-shadow:0 2px 0 #c9bb9e30}.surprise-button span{color:var(--coral);margin-right:8px}.surprise-button:hover{border-color:var(--teal)}button:disabled{cursor:default;opacity:.5}.finder-controls{background:#fffdf8;border:1px solid var(--line);border-radius:15px;padding:22px;margin-top:26px;display:grid;gap:20px}.finder-top{display:grid;grid-template-columns:1fr 1.25fr 1.3fr;gap:18px;padding-bottom:20px;border-bottom:1px solid var(--line)}.finder-field{display:grid;gap:9px;min-width:0}.finder-field>span{font-size:10px;letter-spacing:1.2px;font-weight:900;color:#5c716d}.finder-field select,.finder-field input,.date-range input{width:100%;min-width:0;border:1px solid #d4dcd3;border-radius:7px;background:white;color:var(--navy);padding:12px;font:inherit;font-size:14px;min-height:44px}.finder-field select:focus-visible,.finder-field input:focus-visible,.date-range input:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.date-range{display:flex;gap:15px;padding-left:100px}.date-range label{font-size:12px;display:flex;align-items:center;gap:10px}.results-bar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:26px 0 18px}.results-count{font-size:14px}.results-bar .text-button{font-size:12px}.event-card{display:flex;flex-direction:column}.event-top{height:64px;justify-content:space-between;align-items:center}.event-top .province-tag{background:#ffffff29;color:white;border:1px solid #ffffff61;letter-spacing:1px;font-size:10px}.event-content{flex:1;padding-bottom:13px}.event-info h3 .event-title{font:inherit;color:inherit;margin:0;display:inline}.event-title:hover{text-decoration:underline;text-underline-offset:3px}.event-venue{font-size:12px;line-height:1.5;margin:9px 0;color:#456074}.event-summary{font-size:12px;line-height:1.6;color:#536977;margin:8px 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.event-price{font-size:12px;font-weight:800;color:var(--teal);margin:10px 0}.event-info small{font-size:10px;line-height:1.5}.event-info small a{font-size:inherit;margin:0;display:inline;text-decoration:underline}.event-actions{padding:12px 17px;border-top:1px solid #eee6da;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fffdfa}.event-open{color:var(--teal);font-size:12px;font-weight:900}.save-event{font-size:12px;font-weight:800;border:1px solid #ccd7cf;border-radius:50px;background:white;color:var(--navy);padding:8px 12px;min-height:35px;display:flex;align-items:center;gap:7px}.save-event span{font-size:17px;line-height:13px}.save-event:hover,.save-event.is-saved{background:var(--mist);border-color:var(--teal);color:var(--teal)}.more-row{display:flex;justify-content:center;padding-top:30px}.outline-button{color:var(--teal);border:1px solid #87a8a1;background:transparent;min-height:45px;gap:15px}.outline-button:hover{background:#e6f1eb}.feed-status{font-size:11px;color:#62767c;line-height:1.6;text-align:center;margin:23px auto 0;max-width:760px}.shortlist-wrap{margin-top:37px;position:relative}.shortlist{border:1px solid #bbd3ca;border-radius:16px;background:#edf6f1;overflow:hidden;max-width:900px;margin:0 auto}.shortlist summary{display:flex;align-items:center;gap:16px;padding:23px;cursor:pointer;list-style:none}.shortlist summary::-webkit-details-marker{display:none}.shortlist summary::after{content:'+';font-size:25px;line-height:1;color:var(--teal)}.shortlist[open] summary::after{content:'−'}.shortlist summary strong{font:700 25px/1.2 Georgia,serif;display:block}.shortlist summary small{display:block;margin-top:5px;color:#53716e;font-size:12px}.shortlist summary>span:nth-child(2){flex:1}.shortlist-icon{font-size:35px;color:var(--teal)}#shortlist-counter{padding:6px 10px;background:white;border-radius:30px;color:var(--teal);font-size:12px;font-weight:800}.shortlist-body{border-top:1px solid #cbdcd4;padding:5px 25px 23px}.shortlist-body>p{color:#4d6d68;font-size:13px;line-height:1.6}.shortlist-body ul{list-style:none;margin:20px 0;padding:0;display:grid;gap:9px}.shortlist-body li{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fffdf8;padding:13px 15px;border:1px solid #d8e1d4;border-radius:8px}.shortlist-body li strong{font-size:14px}.shortlist-body li strong a:hover{text-decoration:underline}.shortlist-body li span{display:block;font-size:11px;color:#60756e;margin-top:5px}.shortlist-body li button{background:none;border:1px solid #d6dfd7;border-radius:50%;width:30px;height:30px;flex:none;color:var(--navy);font-size:20px}.shortlist-body .shortlist-empty{font-size:13px;color:#59706b;line-height:1.6;border-style:dashed}.shortlist-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.shortlist-body .privacy-note{font-size:10px;margin:18px 0 0}.shortlist-empty-hint{font-style:italic}.shortlist-jump{display:flex;justify-content:center;align-items:center;gap:7px;font-size:12px;color:var(--teal);font-weight:800;margin-top:15px}.shortlist-jump span{background:var(--teal);color:white;border-radius:50%;width:21px;height:21px;display:grid;place-items:center}.shortlist-body input{display:block;width:100%;margin-top:6px;border:1px solid var(--line);padding:10px;border-radius:5px}#share-link-wrap{font-size:12px;margin-top:15px}.province-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.province-grid .zone-card{min-height:250px;padding:27px}.province-number{position:absolute;top:22px;left:25px;font-size:11px!important;letter-spacing:2px}.province-grid .zone-card small{margin-top:32px}.province-grid .zone-card strong{max-width:270px;font-size:32px}.province-grid .zone-card>span:last-of-type{margin-top:13px;max-width:280px;min-height:38px}.zone-arrow{position:absolute;right:22px;top:23px;font-size:22px}.travel-strip{padding:55px clamp(22px,5vw,72px);display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;background:#eff6f3}.travel-strip h2{font:700 clamp(30px,3.5vw,43px)/1.08 Georgia,serif;max-width:550px;margin:0 0 19px}.travel-strip p:not(.eyebrow){font-size:15px;line-height:1.65;max-width:520px;color:#476671}.travel-strip .outline-button{margin-top:9px}.travel-links{display:grid;gap:14px}.travel-links>a{border:1px solid #c8d9cf;background:#fffdf8;border-radius:13px;display:flex;align-items:center;gap:16px;padding:22px}.travel-links>a:hover{border-color:var(--teal)}.travel-links>a>span{font:36px/1 Georgia,serif;color:var(--teal);width:36px;text-align:center}.travel-links strong,.travel-links small{display:block}.travel-links strong{font:700 21px/1.2 Georgia,serif}.travel-links small{font-size:12px;color:#60786e;margin-top:6px}.travel-links b{margin-left:auto;color:var(--coral);font-size:21px}.scope-section article>a{display:inline-block;font-weight:800;font-size:13px;color:var(--teal);margin-top:18px}.action-status:not(:empty){position:fixed;bottom:28px;left:50%;transform:translateX(-50%);max-width:min(600px,calc(100% - 32px));padding:16px 22px;background:var(--navy);color:white;border-radius:11px;box-shadow:0 4px 22px #08263d30;z-index:60;font-size:13px;line-height:1.5}.action-status:empty{display:none}dialog{border:0;padding:22px;border-radius:20px;background:var(--cream);color:var(--navy);max-width:490px;width:calc(100% - 30px);max-height:90vh;box-shadow:0 30px 80px #08263d50}dialog::backdrop{background:#08263db3;backdrop-filter:blur(3px)}.dialog-top{display:flex;align-items:start;gap:20px;justify-content:space-between;margin-bottom:20px}.dialog-top h2{font:700 28px/1.1 Georgia,serif;margin:0}.dialog-top button{border:1px solid var(--line);border-radius:50%;background:transparent;width:32px;height:32px;color:var(--navy);font-size:23px;flex:none}.dialog-top .eyebrow{font-size:10px}.info-page{max-width:950px;margin:0 auto;padding:60px 25px 75px}.info-page h1{font:700 clamp(38px,5vw,58px)/1.05 Georgia,serif;margin:0 0 25px}.info-page h2{font:700 28px/1.15 Georgia,serif;margin:32px 0 12px}.info-page p,.info-page li{font-size:16px;line-height:1.75;color:#3f5b6c}.info-page a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}.info-page .source-grid{margin-top:25px}.no-script{padding:15px;background:#fffdf8;border:1px solid var(--line);font-size:14px}.no-results h3{font:700 26px/1.2 Georgia,serif}.no-results p{line-height:1.6;color:#536977;max-width:560px;margin:15px auto 22px}
@media(min-width:1500px){.gateway-hero{padding-left:max(6vw,calc((100vw - 1420px)/2));padding-right:max(6vw,calc((100vw - 1420px)/2))}.events-section,.zones-section,.travel-strip{padding-left:max(5vw,calc((100vw - 1420px)/2));padding-right:max(5vw,calc((100vw - 1420px)/2))}}
@media(max-width:1050px){.gateway-hero{gap:30px;padding-left:35px;padding-right:35px}.gateway-hero h1{font-size:57px}.hero-explorer{padding:17px}.explorer-province{min-width:130px;padding:14px}.explorer-province strong{font-size:18px}.collection-bar a{padding:5px 15px}.hero-ctas{gap:16px}.finder-top{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.province-grid .zone-card strong{font-size:27px}.travel-strip{gap:35px}.travel-links>a{padding:17px}.travel-links strong{font-size:19px}}
@media(max-width:760px){.gateway-hero{grid-template-columns:1fr;gap:35px;padding:38px 21px 35px;min-height:0}.gateway-hero h1{font-size:52px;max-width:600px}.gateway-hero .hero-text{font-size:16px;margin-top:20px}.edition-pill{margin-bottom:19px;font-size:10px}.hero-footnote{font-size:10px}.hero-explorer{max-width:460px;transform:none;padding:18px}.coverage-scene{height:320px}.explorer-province{padding:17px}.explorer-province strong{font-size:20px}.collection-bar{justify-content:start;gap:12px;padding:18px 20px}.collection-bar>span{width:100%;margin:0}.collection-bar a{padding:0 12px 0 0;font-size:12px}.finder-heading .surprise-button{margin-top:18px}.finder-controls{padding:16px;gap:16px}.finder-top{grid-template-columns:1fr;gap:15px;padding-bottom:16px}.search-field{grid-column:auto}.finder-field{gap:6px}.finder-field select,.finder-field input{font-size:16px}.date-range{padding-left:0;flex-wrap:wrap;gap:12px}.date-range label{flex:1 1 140px;display:grid}.results-count{font-size:12px}.results-bar .text-button{font-size:11px}.event-summary{-webkit-line-clamp:4}.shortlist summary{padding:18px 15px;gap:10px}.shortlist summary strong{font-size:21px}.shortlist-icon{font-size:29px}.shortlist summary small{font-size:10px}.shortlist-body{padding:5px 17px 20px}.shortlist-actions .button{font-size:12px;padding:12px}.province-grid{grid-template-columns:1fr}.province-grid .zone-card{min-height:223px}.province-grid .zone-card strong{font-size:32px}.province-grid .zone-card>span:last-of-type{min-height:0}.travel-strip{grid-template-columns:1fr;padding:42px 20px;gap:25px}.travel-strip h2{font-size:36px}.travel-links strong{font-size:21px}.action-status:not(:empty){bottom:121px}.info-page{padding:40px 20px 60px}.info-page .source-grid{grid-template-columns:1fr}.info-page p,.info-page li{font-size:15px}}
@media(max-width:380px){.gateway-hero h1{font-size:46px}.brand{font-size:18px}.brand small{max-width:145px}.hero-explorer{padding:14px}.explorer-province{padding:12px;min-width:120px}.explorer-province strong{font-size:18px}.coverage-scene{height:300px}.shortlist summary strong{font-size:19px}.shortlist-icon{display:none}}
