@font-face{font-family:Fraunces;src:url('/assets/fonts/fraunces-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fbf8f1;color:#172c3b;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:4px}a:hover{color:#70501a}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #a15422;outline-offset:5px}[hidden]{display:none!important}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:500;line-height:1.12}h1{font-size:clamp(48px,5.6vw,82px);letter-spacing:-2.5px}h2{font-size:clamp(32px,3vw,46px);letter-spacing:-1.1px}h3{font-size:27px;letter-spacing:-.4px}h1 em,h2 em{font-style:normal;color:#596c60}p+p{margin-top:16px}img{display:block;max-width:100%;object-fit:cover}.wrap,.section{width:min(1280px,calc(100% - 112px));margin-inline:auto}.site-header{max-width:1440px;margin:auto;min-height:120px;padding:30px 56px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand>span{font-family:Fraunces,Georgia,serif;font-weight:650;font-size:25px;line-height:1.08;letter-spacing:-.8px}.brand em{font-style:normal}.brand small{display:block;font-family:Arial,sans-serif;font-size:8px;letter-spacing:2.2px;margin-top:8px;font-weight:600}.site-header nav{display:flex;gap:34px;align-items:center}.site-header nav a{text-decoration:none;font-size:14px;font-weight:600;padding:7px 0}.site-header nav a[aria-current]{border-bottom:2px solid #c29532}.hero{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;position:relative;padding:14px 56px 56px;gap:35px;align-items:center}.hero-copy{padding:20px 0 30px}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:700;line-height:1.6}.hero .eyebrow{margin-bottom:24px;letter-spacing:1.8px}.tiny-paw{font-size:20px;color:#a36b24;margin-right:5px}.hero h1{font-size:clamp(52px,5.35vw,77px)}.hero .lead{font-size:17px;max-width:430px;margin-top:25px}.lead{font-size:19px;line-height:1.75;color:#475761}.button{display:inline-flex;gap:28px;align-items:center;justify-content:center;padding:16px 24px;background:#172c3b;color:#fff;text-decoration:none;border-radius:5px;font-size:14px;font-weight:600;line-height:1.45;min-height:52px}.button:hover{background:#304958;color:#fff}.hero .button{margin-top:30px}.hero-note{font-size:11px;margin-top:17px;letter-spacing:.2px;color:#5c6868}.hero-photo{position:relative;min-width:0;align-self:stretch;min-height:580px;border-radius:150px 12px 12px 12px;overflow:hidden;background:#b4c2c3}.hero-photo>img{width:100%;height:100%;position:absolute;inset:0;object-position:46% center}.hero-photo:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#102b32b3);pointer-events:none}.hero-photo figcaption{position:absolute;bottom:52px;left:32px;z-index:1;color:#fff}.hero-photo figcaption>span{font-size:10px;letter-spacing:2px}.hero-photo figcaption>a{display:block;font-family:Fraunces,Georgia,serif;font-size:30px;text-decoration:none;line-height:1.2;margin-top:8px}.hero-photo figcaption>a span{margin-left:22px}.photo-credit{position:absolute;bottom:16px;left:32px;z-index:1;font-size:10px;color:#fff}.hero-stamp{position:absolute;left:calc(50% - 41px);bottom:205px;z-index:2;background:#f4c75a;width:110px;height:110px;border-radius:50%;transform:rotate(-13deg);display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:10px;line-height:1.5;font-weight:700;letter-spacing:.8px;text-align:center;border:5px solid #fbf8f1}.hero-stamp span{font-size:24px;line-height:1.3}.promise-strip{display:flex;justify-content:center;gap:70px;padding:23px;background:#efece3;font-size:12px;color:#445553;border-block:1px solid #e7e3d9}.promise-strip span:before{content:"✓";margin-right:10px;color:#62785e}.section{padding:85px 0}.section-heading{display:flex;gap:70px;justify-content:space-between;align-items:end;margin-bottom:32px}.section-heading>div{max-width:590px}.section-heading .eyebrow{margin-bottom:12px}.section-heading>p{max-width:360px;font-size:14px;color:#5d686b}.filters{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.filter-buttons{display:flex;gap:8px;flex-wrap:wrap}.filter-buttons button{border:1px solid #d9dbd2;background:transparent;padding:10px 17px;font-size:12px;color:#354842;border-radius:30px;cursor:pointer}.filter-buttons button[aria-pressed=true]{background:#172c3b;color:#fff;border-color:#172c3b}.search{position:relative}.search input{width:250px;max-width:100%;background:transparent;border:0;border-bottom:1px solid #a6b0a9;border-radius:0;padding:10px 25px 10px 3px;font-size:12px;color:#172c3b}.search>span:last-child{position:absolute;right:4px;top:3px;font-size:23px}.destination-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.destination-card{border:1px solid #e2e2d8;border-radius:9px;overflow:hidden;background:#fffdf8;display:flex;flex-direction:column}.card-photo{display:block;position:relative;overflow:hidden;aspect-ratio:1.5}.card-photo img{width:100%;height:100%;transition:transform .35s}.destination-card:hover .card-photo img{transform:scale(1.025)}.tag{position:absolute;left:17px;top:17px;background:#fbf8f1;border-radius:30px;padding:4px 12px;font-size:10px;letter-spacing:.4px;font-weight:600}.card-copy{padding:23px;display:flex;flex-direction:column;flex:1}.card-copy .eyebrow{font-size:9px;letter-spacing:1.15px;color:#617164}.card-copy h3{margin-top:8px;font-size:32px}.card-copy h3 a{display:flex;justify-content:space-between;text-decoration:none;align-items:center}.card-copy h3 span{font:22px Arial}.card-copy>p:not(.eyebrow){font-size:14px;color:#5d686b;margin-top:13px;margin-bottom:24px}.text-link{font-size:13px;font-weight:600;text-decoration-thickness:1px}.card-copy>.text-link{margin-top:auto}.approach{background:#e9eee7;padding:72px max(56px,calc((100vw - 1280px)/2));display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.approach-title>.eyebrow{margin-bottom:18px}.approach-title .text-link{display:inline-block;margin-top:28px}.approach-items article{display:grid;grid-template-columns:35px 1fr;column-gap:16px;padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid #cdd6cc}.approach-items article:last-child{border:0;margin:0;padding:0}.approach-items article>span{grid-row:span 2;color:#697c69;font-size:12px}.approach-items h3{font-size:25px;margin-bottom:8px}.approach-items p{font-size:14px;color:#4c6059}.planning-callout{max-width:1280px;margin:75px auto;padding:50px 55px;display:flex;gap:35px;justify-content:space-between;align-items:center;background:#f4c75a;border-radius:10px}.planning-callout .eyebrow{margin-bottom:13px}.planning-callout p:not(.eyebrow){font-size:14px;margin-top:18px}.light{background:#fbf8f1;color:#172c3b}.site-footer{background:#172c3b;color:#e6ebdf;padding:55px max(56px,calc((100vw - 1280px)/2)) 25px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:30px}.footer-brand{font-family:Fraunces,Georgia,serif;font-size:28px;text-decoration:none}.footer-brand span{display:block;font:10px Arial;letter-spacing:1px;margin-top:8px}.site-footer p{font-size:12px;margin-top:15px;color:#bdc9c3}.site-footer nav{display:flex;flex-wrap:wrap;gap:22px;align-items:start;font-size:12px;padding-top:8px}.site-footer a:hover{color:#f4c75a}.site-footer .fineprint{flex-basis:100%;border-top:1px solid #3c5059;padding-top:24px;font-size:10px}.page-intro{padding-block:55px 25px;max-width:1000px;margin-left:max(56px,calc((100vw - 1280px)/2))}.page-intro .eyebrow{margin-bottom:22px}.page-intro .lead{max-width:650px;margin-top:23px}.directory-section{padding-top:30px}.muted{font-size:12px;color:#64746c}.directory-section>.muted{margin-top:30px}.breadcrumbs{font-size:11px;margin-top:15px;margin-bottom:35px}.breadcrumbs nav{display:flex;gap:12px;flex-wrap:wrap}.guide-hero{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;padding-bottom:48px}.guide-hero .eyebrow{margin-bottom:18px}.guide-hero .lead{font-size:17px;margin-top:24px}.review-date{font-size:10px;margin-top:22px;color:#67736b}.guide-hero figure>img{width:100%;height:370px;border-radius:90px 8px 8px 8px}.guide-hero figcaption{font-size:9px;margin-top:10px;color:#52625c}.guide-nav{padding:18px 25px;display:flex;justify-content:center;gap:50px;border-block:1px solid #dce0d5;background:#efece3;font-size:12px;font-weight:600;flex-wrap:wrap}.guide-nav a{text-decoration:none}.guide-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:70px;padding-top:60px;padding-bottom:80px}.guide-main>section{margin-bottom:60px}.guide-main .eyebrow{margin-bottom:12px}.guide-main h2{font-size:38px;margin-bottom:20px}.section-lead{font-size:15px;color:#52625c;margin-bottom:25px}.stay-card{padding:30px;background:#fffdf8;border:1px solid #dedfd5;border-radius:9px;margin-bottom:20px}.stay-card>.eyebrow{letter-spacing:1px;font-size:9px;color:#647165}.stay-card h3{margin-bottom:16px}.stay-card p{font-size:15px}.policy{padding:17px 19px;background:#f0f1e9;margin:23px 0}.policy strong{font-size:12px}.policy p{margin-top:7px;font-size:14px}.official{display:block;font-size:10px;color:#64746c;margin-top:7px}.activity{display:flex;gap:20px;border-bottom:1px solid #dde1d6;padding:25px 0}.step-number{font-size:12px;border-radius:50%;min-width:32px;height:32px;background:#f4c75a;display:inline-flex;justify-content:center;align-items:center;font-weight:600}.activity h3{font-size:26px;margin-bottom:15px}.activity p{font-size:15px}.activity .rule{padding-left:16px;border-left:3px solid #bdc9b7;font-size:13px;margin-block:20px}.day-plan{background:#e9eee7;padding:32px;border-radius:9px}.day-plan article{margin-block:30px}.day-plan h3{font-size:23px;margin-bottom:14px}.day-plan p{font-size:15px}.short-plan{padding:24px;background:#fbf8f1;border-radius:6px;margin-bottom:22px}.day-plan .muted{font-size:11px}.practical{margin-block:25px}.practical h3{font-size:23px;margin-bottom:10px}.practical p{font-size:15px}.faq details{border-bottom:1px solid #d4dbcf;padding:18px 0}.faq summary{font-size:15px;cursor:pointer;font-weight:600}.faq p{font-size:14px;margin-top:14px}.source-note{border-top:1px solid #d4dbcf;padding-top:25px}.guide-main .source-note h2{font-size:23px}.source-note p{font-size:12px;margin-bottom:15px}.at-a-glance{background:#f0eadb;padding:30px;border-radius:9px}.at-a-glance h2{font-size:29px;margin:15px 0 25px}.at-a-glance h3{font-family:Arial,sans-serif;font-weight:600;font-size:12px;letter-spacing:0;margin-bottom:7px}.at-a-glance p:not(.eyebrow){font-size:14px;margin-bottom:25px}.at-a-glance .button{font-size:12px;width:100%;padding-inline:12px}.sidebar-more{margin-top:30px;padding:20px}.sidebar-more>.eyebrow{margin-bottom:15px}.sidebar-more>a{display:flex;justify-content:space-between;text-decoration:none;font-family:Fraunces,Georgia,serif;font-size:22px;border-bottom:1px solid #d8dfd2;padding:12px 0}.info-page{max-width:820px;padding:60px 0 85px}.info-page h1{font-size:58px;margin:18px 0 28px}.info-page .lead{margin-bottom:35px}.info-page h2{font-size:30px;margin:35px 0 18px}.info-page section{margin-block:40px}.info-page section h2{margin-top:15px}.info-page>.button{margin-top:30px}.credit-entry{padding-bottom:25px;border-bottom:1px solid #d8dfd2}.credit-entry>img{width:400px;height:230px;border-radius:8px}.credit-entry p{font-size:13px}.skip{position:absolute;top:-100px;z-index:99;background:#fff;padding:15px}.skip:focus{top:0}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(min-width:1500px){.hero h1{font-size:82px}}
@media(max-width:1100px){.wrap,.section{width:calc(100% - 64px)}.site-header{padding:25px 32px;min-height:100px}.hero{padding:12px 32px 40px;gap:24px}.hero h1{font-size:58px}.hero-photo{min-height:555px}.hero .eyebrow{font-size:9px;letter-spacing:1px}.hero-stamp{bottom:190px;width:95px;height:95px;left:calc(50% - 34px)}.promise-strip{gap:30px}.section-heading{gap:35px}.section-heading>p{max-width:300px}.destination-grid{gap:18px}.card-copy{padding:19px}.card-copy h3{font-size:29px}.card-copy .text-link{font-size:11px}.approach{padding:55px 32px;gap:45px}.planning-callout{margin-inline:32px;padding:40px}.site-footer{padding-inline:32px}.guide-layout{gap:35px}.guide-hero{gap:35px}.guide-hero h1{font-size:59px}.guide-hero figure>img{height:355px}.at-a-glance{padding:23px}.page-intro{margin-left:32px}}
@media(max-width:780px){.site-header{padding:23px 24px;gap:15px;min-height:90px}.brand>span{font-size:21px}.brand img{width:36px;height:36px}.site-header nav{gap:20px}.site-header nav a{font-size:12px}.nav-about{display:none}.hero{padding:20px 24px 35px;gap:20px}.hero h1{font-size:47px;letter-spacing:-1.6px}.hero .eyebrow{font-size:8px;letter-spacing:.7px}.hero .lead{font-size:14px}.hero-photo{min-height:490px;border-top-left-radius:90px}.hero-copy{padding:0}.hero-stamp{bottom:170px;width:82px;height:82px;font-size:8px;left:calc(50% - 34px)}.hero-photo figcaption{left:20px;bottom:50px}.hero-photo figcaption>a{font-size:24px}.hero-photo figcaption>a span{margin-left:6px}.photo-credit{left:20px;font-size:9px}.hero .button{font-size:12px;gap:15px;padding:14px 18px}.hero-note{font-size:9px}.promise-strip{gap:20px;font-size:10px;padding:18px 15px}.promise-strip span:before{margin-right:5px}.wrap,.section{width:calc(100% - 48px)}.section{padding-block:55px}.section-heading{display:block}.section-heading>p{max-width:570px;margin-top:17px}.filters{align-items:start;flex-direction:column}.search{width:100%}.search input{width:100%}.destination-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.card-copy .text-link{font-size:12px}.approach{padding:45px 24px;grid-template-columns:1fr;gap:36px}.approach-title h2 br{display:none}.planning-callout{margin:45px 24px;padding:32px;flex-direction:column;align-items:start;gap:25px}.site-footer{padding-inline:24px}.page-intro{padding-top:35px;margin-left:24px}.page-intro h1{font-size:53px}.directory-section{padding-top:20px}.guide-hero{gap:25px}.guide-hero h1{font-size:47px;letter-spacing:-1.5px}.guide-hero .lead{font-size:15px}.guide-hero .eyebrow{font-size:9px;letter-spacing:1px}.guide-hero figure>img{height:340px}.guide-nav{gap:26px}.guide-layout{grid-template-columns:minmax(0,1fr);padding-top:40px}.guide-sidebar{grid-row:1}.at-a-glance{display:grid;grid-template-columns:1fr 1fr;column-gap:25px}.at-a-glance>.eyebrow,.at-a-glance>h2{grid-column:1/-1}.at-a-glance>h3,.at-a-glance>p:not(.eyebrow){grid-column:1/-1}.at-a-glance>.button{grid-column:1/-1;max-width:300px}.sidebar-more{display:none}.guide-main h2{font-size:34px}.info-page h1{font-size:46px}.info-page{padding-block:40px 60px}.breadcrumbs{margin-bottom:25px}}
@media(max-width:540px){.site-header{flex-wrap:wrap;justify-content:center;padding:20px;gap:18px}.brand>span{font-size:25px}.brand img{width:40px;height:40px}.site-header nav{width:100%;justify-content:center;gap:30px}.site-header nav a{font-size:12px;padding:3px 0}.nav-about{display:block}.hero{display:block;padding:23px 20px 28px}.hero-copy{padding-bottom:30px}.hero h1{font-size:54px;letter-spacing:-2px}.hero h1 br:last-child{display:none}.hero .eyebrow{font-size:9px;letter-spacing:1px;margin-bottom:15px}.hero .lead{font-size:16px;line-height:1.7;margin-top:20px}.hero .button{margin-top:24px;padding:15px 21px;font-size:13px}.hero-note{font-size:10px}.hero-photo{min-height:380px;border-radius:90px 8px 8px 8px}.hero-photo figcaption>a{font-size:30px}.hero-photo figcaption{bottom:46px;left:25px}.photo-credit{left:25px;bottom:15px}.hero-stamp{left:auto;right:33px;bottom:318px;width:88px;height:88px;font-size:8px}.promise-strip{display:grid;gap:9px;text-align:center;font-size:11px;padding:20px}.wrap,.section{width:calc(100% - 40px)}.section-heading h2{font-size:36px}.section{padding-block:43px}.filters{gap:17px;margin-bottom:22px}.filter-buttons{gap:6px}.filter-buttons button{padding:8px 11px;font-size:11px;min-height:40px}.destination-grid{grid-template-columns:1fr;gap:23px}.card-photo{aspect-ratio:1.6}.card-copy{padding:22px}.card-copy h3{font-size:34px}.card-copy .eyebrow{font-size:10px}.card-copy>.text-link{font-size:13px}.card-copy>p:not(.eyebrow){font-size:15px;margin-bottom:20px}.approach{padding:38px 20px}.approach h2{font-size:36px}.approach-title .eyebrow{font-size:9px}.planning-callout{margin:35px 20px;padding:28px}.planning-callout h2{font-size:35px}.planning-callout .button{font-size:12px}.site-footer{padding:38px 20px 22px;gap:25px}.site-footer nav{gap:14px;flex-wrap:wrap}.page-intro{margin-left:20px;padding-top:30px}.page-intro h1{font-size:46px;letter-spacing:-1.5px}.page-intro .lead{font-size:16px}.directory-section{padding-top:10px}.guide-hero{display:flex;flex-direction:column;align-items:stretch;padding-bottom:30px;gap:28px}.guide-hero h1{font-size:56px}.guide-hero .lead{font-size:16px}.guide-hero figure>img{height:270px;border-top-left-radius:65px}.guide-hero .review-date{font-size:10px}.guide-nav{gap:12px 22px;padding:17px 20px;font-size:11px}.guide-layout{gap:35px;padding-top:30px;padding-bottom:20px}.at-a-glance{padding:25px;display:block}.at-a-glance h2{font-size:27px}.at-a-glance p:not(.eyebrow){margin-bottom:18px}.guide-main h2{font-size:32px}.stay-card{padding:22px}.stay-card h3{font-size:27px}.policy{padding:15px}.activity{gap:12px}.activity .step-number{min-width:28px;height:28px;font-size:10px}.activity h3{font-size:25px}.activity p{font-size:15px}.day-plan{padding:23px}.short-plan{padding:20px}.guide-main>section{margin-bottom:43px}.info-page h1{font-size:42px;letter-spacing:-1.4px}.info-page .lead{font-size:17px}.info-page h2{font-size:28px}.credit-entry>img{height:210px}.breadcrumbs{font-size:10px;margin-top:14px;margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.affiliate-disclosure{font-size:13px;line-height:1.6;padding:18px 20px;background:#f8edcc;border-left:3px solid #ba8b23;margin:0 0 25px}.booking-link{font-size:13px;margin-bottom:16px;max-width:100%}.official-link{display:block;width:fit-content}

/* Decorative dog companions: original vector art, no motion or remote assets. */
.tiny-paw{display:inline-block;vertical-align:middle;object-fit:contain;margin-right:7px}.hero-companion{display:flex;align-items:center;gap:15px;margin-top:20px;max-width:390px}.hero-companion>img{flex:0 0 156px;object-fit:contain}.hero-companion .hero-note{margin:0;line-height:1.8;font-size:11px}.hero-note strong{font-weight:600;color:#172c3b}.hero-stamp>img{margin-top:5px;object-fit:contain}.policy strong{display:flex;align-items:center;gap:8px}.policy-paw{flex-shrink:0;object-fit:contain}.guide-companion{margin:-5px auto 18px;object-fit:contain;grid-column:1/-1}.footer-companion{position:relative;padding-left:123px;min-height:92px}.footer-companion>img{position:absolute;left:0;top:2px;object-fit:contain;filter:drop-shadow(0 2px 0 #ffffff0a)}
@media(min-width:541px) and (max-width:780px){.hero-companion{gap:8px}.hero-companion>img{width:110px;height:81px;flex-basis:110px}.hero-companion .hero-note{font-size:9px}}
@media(max-width:540px){.hero-companion{margin-top:14px;gap:12px}.hero-companion>img{width:128px;height:94px;flex-basis:128px}.hero-companion .hero-note{font-size:10px}.hero-stamp{bottom:318px}.guide-companion{width:104px;height:76px;margin:0 0 14px}.footer-companion{padding-left:0;padding-top:88px}.footer-companion>img{top:0}}

.hero-stamp .stamp-copy{font:inherit;line-height:1.5;display:block}.hero-stamp{padding:8px}.hero-stamp>img{flex-shrink:0}

/* Keep the sunny coast bright; reserve caption shading for the lower edge. */
.hero-photo>img{object-position:50% center}.hero-photo:after{inset:64% 0 0;background:linear-gradient(transparent,#102b32d9)}
@media(max-width:540px){.hero-photo figcaption{right:20px}.hero-photo figcaption>a{font-size:26px}.hero-photo figcaption>a span{margin-left:8px}}
