:root{--sand-50:#fbf7f1;--sand-100:#f5ede2;--sand-200:#ebddcb;--sand-300:#dcc6a8;--ink-900:#2a1f1a;--ink-700:#5b4a3f;--clay-100:#f4dccd;--clay-500:#c2603c;--clay-600:#a84b2c;--clay-700:#8a3b22;--ocean-100:#dce9e6;--ocean-600:#2a6670;--ocean-700:#1f525a;--ocean-900:#133a40;--sun-300:#f0c089;--sun-400:#e8a35f;--wa-500:#25d366;--wa-600:#1fb457;--wa-ink:#0a2e19;--bg:var(--sand-100);--bg-raised:var(--sand-50);--bg-sunken:var(--sand-200);--text:var(--ink-900);--text-muted:var(--ink-700);--line:#2a1f1a24;--line-strong:#2a1f1a52;--primary:var(--clay-600);--primary-hover:var(--clay-700);--on-primary:#fff9f3;--link:var(--ocean-700);--link-hover:var(--clay-700);--focus:var(--ocean-600);--dark:var(--ocean-900);--on-dark:var(--sand-100);--on-dark-muted:#c9d6d3;--dark-accent:var(--sun-300);--fs-xs:.8125rem;--fs-sm:.9375rem;--fs-base:1.0625rem;--fs-md:clamp(1.1875rem,1.1643rem + .0952vw,1.25rem);--fs-lg:clamp(1.3125rem,1.2429rem + .2857vw,1.5rem);--fs-xl:clamp(1.625rem,1.4857rem + .5714vw,2rem);--fs-2xl:clamp(2rem,1.7679rem + .9524vw,2.625rem);--fs-3xl:clamp(2.25rem,1.7857rem + 1.9048vw,3.5rem);--fs-4xl:clamp(2.75rem,2.0071rem + 3.0476vw,4.75rem);--lh-tight:1.06;--lh-snug:1.22;--lh-body:1.6;--ls-caps:.14em;--ls-display:-.015em;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--gutter:clamp(1rem,.2571rem + 3.0476vw,3rem);--maxw:1240px;--maxw-prose:680px;--section:clamp(4rem,2.5143rem + 6.0952vw,8rem);--r-xs:6px;--r-sm:10px;--r-md:16px;--r-lg:24px;--r-pill:999px;--r-arch:0 0 16px 16px;--window:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 400'%3E%3Cpath d='M0 400V70Q0 62 8 62H10C6 45 14 22 50 0C86 22 94 45 90 62H92Q100 62 100 70V400Z'/%3E%3C/svg%3E") top/100% auto no-repeat;--window-shadow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 400'%3E%3Cfilter id='b' x='-20%25' y='-20%25' width='140%25' height='140%25'%3E%3CfeGaussianBlur stdDeviation='3'/%3E%3C/filter%3E%3Cpath filter='url(%23b)' transform='translate(0 3)' fill='rgb(42,31,26)' fill-opacity='.7' fill-rule='evenodd' d='M-20-20H120V420H-20ZM0 400V70Q0 62 8 62H10C6 45 14 22 50 0C86 22 94 45 90 62H92Q100 62 100 70V400Z'/%3E%3C/svg%3E") top/100% auto no-repeat;--sh-1:0 1px 2px #4a2c1914,0 2px 8px #4a2c190f;--sh-2:0 12px 32px -12px #4a2c1947;--sh-3:0 24px 60px -18px #4a2c1961;--tap:44px;--tap-lg:52px;--ease-out:cubic-bezier(.2,.7,.2,1);--dur:.35s}body{background:var(--bg-sunken);color:var(--text);font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;margin:0}*,:before,:after{box-sizing:border-box}:where(h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote){margin:0}:where(ul,ol){padding:0;list-style:none}img{max-width:100%;height:auto}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}.main{background:var(--bg)}.wrap{width:100%;max-width:calc(var(--maxw) + 2*var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.stack>*+*{margin-top:var(--s-5)}.stack-sm>*+*{margin-top:var(--s-3)}.sec{padding-block:var(--section)}.sec-tint{background:var(--bg-sunken)}.sec-head{justify-content:space-between;align-items:end;gap:var(--s-4) var(--s-6);margin-bottom:var(--s-7);flex-wrap:wrap;display:flex}.eyebrow{font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--clay-700);font-weight:700}.h1{font-family:var(--font-display);font-weight:500;font-size:var(--fs-4xl);line-height:var(--lh-tight);letter-spacing:var(--ls-display);text-wrap:balance}.h2{font-family:var(--font-display);font-weight:500;font-size:var(--fs-3xl);letter-spacing:var(--ls-display);text-wrap:balance;line-height:1.1}.h3{font-family:var(--font-display);font-weight:500;font-size:var(--fs-xl);line-height:var(--lh-snug)}.h4{font-weight:700;font-size:var(--fs-md);line-height:var(--lh-snug)}.h1 em,.h2 em{color:var(--clay-600);font-style:italic;font-weight:400}.lead{font-size:var(--fs-md);color:var(--text-muted);text-wrap:pretty;line-height:1.55}.muted{color:var(--text-muted)}.fine{font-size:var(--fs-sm);color:var(--text-muted)}.btn{min-height:var(--tap-lg);border-radius:var(--r-pill);font:600 var(--fs-base)/1.2 var(--font-body);text-align:center;cursor:pointer;border:1.5px solid #0000;justify-content:center;align-items:center;gap:10px;max-width:100%;padding:12px 24px;text-decoration:none;display:inline-flex}.btn svg{flex:none}.btn-sm{min-height:var(--tap);font-size:var(--fs-sm);padding:8px 18px}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover{background:var(--primary-hover);color:var(--on-primary)}.btn-secondary{color:var(--text);border-color:var(--line-strong);background:0 0}.btn-secondary:hover{border-color:var(--text);color:var(--text)}.btn-light{background:var(--sand-50);color:var(--ink-900)}.btn-light:hover{color:var(--ink-900);background:#fff}.btn-wa{background:var(--wa-500);color:var(--wa-ink)}.btn-wa:hover{background:var(--wa-600);color:var(--wa-ink)}.btn-choice{background:var(--ink-900);color:var(--sand-50);min-height:48px}.btn-choice:hover{color:var(--sand-50);background:#000}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.link-arrow{min-height:var(--tap);color:var(--link);align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex}.link-arrow:hover{color:var(--link-hover)}.topbar{background:var(--bg-sunken);font-size:var(--fs-sm);color:var(--text-muted)}.topbar .wrap{justify-content:space-between;align-items:center;gap:var(--s-4);min-height:52px;display:flex}.lang{gap:2px;display:flex}.lang a{min-width:var(--tap);min-height:var(--tap);border-radius:var(--r-pill);font-weight:600;font-size:var(--fs-sm);letter-spacing:.06em;color:var(--text-muted);justify-content:center;align-items:center;padding:0 6px;text-decoration:none;display:inline-flex}.lang a:hover{color:var(--text)}.lang a[aria-current]{background:var(--sand-50);color:var(--text);box-shadow:inset 0 0 0 1px var(--line)}.hdr{z-index:10;background:var(--bg);border-bottom:1px solid var(--line);min-height:84px;transition:background-color var(--dur),border-color var(--dur);display:flow-root;position:sticky;top:0}.hdr .wrap{align-items:center;gap:var(--s-6);min-height:84px;transition:width var(--dur) var(--ease-out),max-width var(--dur) var(--ease-out),min-height var(--dur) var(--ease-out),margin var(--dur) var(--ease-out),padding var(--dur) var(--ease-out),gap var(--dur) var(--ease-out),border-radius var(--dur),border-color var(--dur),background-color var(--dur),box-shadow var(--dur);border:1px solid #0000;display:flex;position:relative}.hdr .logo-word,.hdr .logo-mark{transition:font-size var(--dur) var(--ease-out),height var(--dur) var(--ease-out)}.hdr[data-pill]{pointer-events:none;background:0 0;border-color:#0000}.hdr[data-pill] .wrap{pointer-events:auto;width:calc(100% - var(--gutter));max-width:calc(var(--maxw) + 2*var(--gutter));gap:var(--s-4);border-radius:var(--r-pill);border-color:var(--line);backdrop-filter:blur(14px);min-height:60px;box-shadow:var(--sh-2);background:#fbf7f1e0;margin-top:16px;padding-inline:20px 8px}.hdr[data-pill] .logo-word{font-size:1.25rem}.hdr[data-pill] .logo-mark{height:32px}html{scroll-padding-top:100px}@media (prefers-reduced-motion:reduce){.hdr,.hdr *{transition:none}}.logo{min-height:var(--tap);color:var(--text);flex:none;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.logo-mark{width:auto;height:42px;display:block}.logo-mark-lg{height:56px}.logo-word{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.5rem;font-weight:500;line-height:1}.logo-word i{color:var(--clay-600);font-style:italic;font-weight:400}.nav{flex-wrap:wrap;justify-content:flex-end;column-gap:2px;margin-left:auto;display:flex}.nav a{min-height:var(--tap);border-radius:var(--r-pill);color:var(--text);align-items:center;padding:0 12px;font-weight:500;text-decoration:none;display:inline-flex}.nav a:hover{background:var(--sand-200);color:var(--text)}.nav a[aria-current]{color:var(--clay-700);text-underline-offset:8px;text-decoration:underline 2px}.hdr-cta{flex:none}.hdr-m{align-items:center;gap:6px;margin-left:auto;display:none}.lang-m{display:none}.icon-btn{min-width:var(--tap);min-height:var(--tap);border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--bg-raised);color:var(--text);font:600 var(--fs-sm)/1 var(--font-body);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 12px;display:inline-flex}details>summary{list-style:none}details>summary::-webkit-details-marker{display:none}.drop{position:relative}.drop-panel{z-index:40;background:var(--bg-raised);border-radius:var(--r-md);min-width:200px;box-shadow:var(--sh-3);border:1px solid var(--line);padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.drop-panel a{min-height:var(--tap);border-radius:var(--r-sm);color:var(--text);align-items:center;padding:6px 14px;font-weight:500;text-decoration:none;display:flex}.drop-panel a:hover{background:var(--sand-200)}.menu-panel{width:min(340px,100vw - 32px)}.menu-panel .btn{color:var(--on-primary);margin-top:8px}@media (width<=1240px){.nav,.hdr-cta{display:none}.hdr-m{display:flex}}@media (width<=760px){.topbar{display:none}.lang-m{display:block}.hdr,.hdr .wrap{min-height:64px}.hdr[data-pill] .wrap{min-height:52px;margin-top:10px;padding-inline:14px 4px}.logo-word{font-size:1.25rem}.logo-mark{height:32px}.logo-mark-lg{height:48px}}.ph{isolation:isolate;background:var(--sand-300);box-shadow:var(--sh-2);position:relative;overflow:hidden}.ph:after{content:"";z-index:0;pointer-events:none;background:repeating-linear-gradient(115deg,#ffffff0d 0 2px,#0000 2px 10px);position:absolute;inset:0}.ph-label{z-index:1;border-radius:var(--r-xs);color:#f8f1e7;max-width:calc(100% - 28px);font:600 11px/1.35 var(--font-body);letter-spacing:.06em;text-transform:uppercase;background:#2a1f1abd;padding:6px 10px;display:inline-flex;position:absolute;bottom:14px;left:14px}.ph-label.top{top:14px;bottom:auto}.ph-dusk{background:radial-gradient(circle at 72% 54%,#f9e0b5 0 4.5%,#f9e0b500 5%),linear-gradient(#eec293 0%,#e09a6e 38%,#c66e50 55%,#40666a 55.3%,#2d5258 75%,#d7bd99 75.3%,#c8ab86 100%)}.ph-sea{background:linear-gradient(#d8e5e1 0 32%,#86afae 32.3%,#3f7880 60%,#2e6168 70%,#ebddc7 70.3%,#decaae 100%)}.ph-village{background:linear-gradient(#f2dfc6 0 34%,#0000 34%),repeating-linear-gradient(90deg,#e3c3a0 0 46px,#d3a982 46px 82px,#ecd5b8 82px 140px,#c99a74 140px 160px)}.ph-roof{background:linear-gradient(#f4dfc4 0 46%,#c9714e 46.3% 54%,#b45a3b 54% 56%,#e8d1b5 56.3% 100%)}.ph-yoga{background:linear-gradient(#f6e6d1 0 50%,#d9a27c 50.3% 57%,#ead8c0 57.3% 100%)}.ph-food{background:radial-gradient(circle at 35% 58%,#c9714e 0 13%,#0000 13.5%),radial-gradient(circle at 64% 52%,#e8a35f 0 10%,#0000 10.5%),linear-gradient(#8e5b3e 0 100%)}.arch{border-radius:var(--r-arch);-webkit-mask:var(--window);mask:var(--window)}img.ph{object-fit:cover;width:100%;height:auto;display:block}.ph>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.arch:after,.tile .ph:after{background:var(--window-shadow)}.food-grid img.ph,.house-grid img.ph{height:100%}.hero{padding-bottom:var(--s-8)}.hero-media{clip-path:inset(0);height:460px;position:relative}.hero-media img{object-fit:cover;object-position:50% 100%;width:100%;height:100lvh;position:fixed;inset:0 0 auto}@media (width<=760px),(prefers-reduced-motion:reduce){.hero-media img{object-position:50% 50%;height:100%;position:absolute}}.hero-card{z-index:2;background:var(--bg);border-radius:var(--r-lg);max-width:780px;box-shadow:var(--sh-2);margin-top:-160px;padding:48px 56px;position:relative}.hero-card .lead{max-width:56ch}.intro{gap:var(--s-9);grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;display:grid}.intro-media{gap:var(--s-5);grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:end;display:grid}.intro-media .ph:first-child{aspect-ratio:3/4}.intro-media .ph:last-child{aspect-ratio:4/5;border-radius:var(--r-lg);margin-bottom:-48px}.cards-3{gap:var(--s-6);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.tile{gap:var(--s-3);color:var(--text);flex-direction:column;text-decoration:none;display:flex}.tile .ph{aspect-ratio:4/5;border-radius:var(--r-arch);-webkit-mask:var(--window);mask:var(--window);margin-bottom:var(--s-3)}.tile:hover .h3{color:var(--clay-700)}.dark{background:var(--dark);color:var(--on-dark)}.dark .eyebrow{color:var(--dark-accent)}.dark .lead,.dark .muted,.dark .fine{color:var(--on-dark-muted)}.camp{gap:var(--s-9);grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;display:grid}.camp-photo{aspect-ratio:4/3;border-radius:var(--r-lg)}.pkg-list{border-top:1px solid #f5ede233}.pkg-row{gap:var(--s-2) var(--s-6);padding-block:var(--s-5);border-bottom:1px solid #f5ede233;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.pkg-row .muted{margin-top:6px}.price{font-family:var(--font-display);font-size:var(--fs-2xl);text-align:right;white-space:nowrap;font-weight:500;line-height:1}.price small{font:500 var(--fs-xs)/1.3 var(--font-body);letter-spacing:.04em;color:var(--on-dark-muted);margin-top:8px;display:block}@media (width<=960px){.intro,.camp,.cards-3{gap:var(--s-7);grid-template-columns:1fr}}@media (width<=760px){.hero-media{height:300px}.hero-card{margin-top:-64px;padding:28px 22px}.intro-media .ph:last-child{margin-bottom:0}.tile .ph{aspect-ratio:16/11;border-radius:var(--r-lg);-webkit-mask:none;mask:none}.tile .ph:after{background:0 0}.price{font-size:var(--fs-xl)}}.crumbs{padding-block:var(--s-3);font-size:var(--fs-sm);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:0 8px;display:flex}.crumbs a{min-height:var(--tap);color:var(--link);align-items:center;display:inline-flex}.page-hero{gap:var(--s-8);padding-block:var(--s-6) var(--s-9);grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:center;display:grid}.hero-arch{aspect-ratio:4/5}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border-radius:var(--r-pill);background:var(--bg-raised);border:1px solid var(--line);min-height:36px;font-size:var(--fs-sm);align-items:center;gap:8px;padding:6px 14px;font-weight:500;display:inline-flex}.tag{border-radius:var(--r-pill);min-height:28px;font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;align-items:center;padding:4px 10px;font-weight:700;display:inline-flex}.lv-beg{background:var(--ocean-100);color:var(--ocean-700)}.lv-int{background:var(--clay-100);color:var(--clay-700)}.lv-adv{background:var(--ink-900);color:var(--sand-50)}.tag-letter{letter-spacing:0;cursor:help;justify-content:center;min-width:28px;padding:4px}.tags{flex-wrap:wrap;gap:6px;display:flex}.pkgs{gap:var(--s-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));display:grid}.pkg{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1);flex-direction:column;display:flex;overflow:hidden}.pkg .ph{aspect-ratio:16/10;box-shadow:none}.pkg-body{gap:var(--s-4);padding:var(--s-6);flex-direction:column;flex:1;display:flex}.pkg-price{padding-block:var(--s-4);border-block:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:6px 12px;display:flex}.pkg-price b{font-family:var(--font-display);font-size:var(--fs-3xl);font-weight:500;line-height:1}.ticks{gap:10px;display:grid}.pkg .btn{width:100%;margin-top:auto}.incl{gap:var(--s-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.incl-item{gap:var(--s-3);padding:var(--s-6);border-radius:var(--r-lg);background:var(--bg-raised);border:1px solid var(--line);align-content:start;display:grid}.incl-ico{background:var(--clay-100);width:52px;height:52px;color:var(--clay-700);border-radius:50%;place-items:center;display:grid}.gallery{gap:var(--s-4);grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);display:grid}.gallery .ph{border-radius:var(--r-md);height:380px}.cta-band{gap:var(--s-6);padding:var(--s-8);border-radius:var(--r-lg);background:var(--clay-700);color:var(--sand-50);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.cta-band .eyebrow{color:var(--sun-300)}.cta-band p{color:var(--sand-50)}.cta-band .btn-row{justify-content:flex-end}.spot-head{justify-content:space-between;align-items:end;gap:var(--s-5);padding-block:var(--s-5) var(--s-7);flex-wrap:wrap;display:flex}.spot-head>.stack-sm{flex:100%}.spot-media,img.spot-media{border-radius:var(--r-lg);height:480px}.spot-top{gap:var(--s-6);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:stretch;display:grid}.facts{padding:var(--s-6);background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.fact{gap:var(--s-3);border-bottom:1px solid var(--line);grid-template-columns:132px minmax(0,1fr);padding-block:12px;display:grid}.fact:last-child{border-bottom:0}.fact dt{font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding-top:3px;font-weight:700}.fact dd{font-weight:500}.map{border-radius:var(--r-lg);border:1px solid var(--line);background:#bfd6d2;min-height:420px;position:relative;overflow:hidden}.map svg{width:100%;height:100%;position:absolute;inset:0}.map-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.map-foot .btn{background:var(--sand-50);color:var(--ink-900);box-shadow:var(--sh-2)}.art-head{padding-block:var(--s-5) var(--s-7)}.art-head .h1{font-size:var(--fs-3xl)}.meta{font-size:var(--fs-sm);color:var(--text-muted);flex-wrap:wrap;gap:4px 16px;display:flex}.art-hero{border-radius:var(--r-lg);height:560px}.prose{max-width:var(--maxw-prose);margin-inline:auto;font-size:1.125rem;line-height:1.72}.prose>*+*{margin-top:1.1em}.prose h2{font-family:var(--font-display);font-size:var(--fs-xl);margin-top:2.1em;font-weight:500;line-height:1.2}.prose h3{font-size:var(--fs-md);margin-top:1.6em;font-weight:700;line-height:1.3}.prose a:not(.btn){color:var(--link);text-underline-offset:3px}.prose ul{padding-left:1.25em;list-style:outside}.prose li+li{margin-top:.4em}.prose figure{margin-block:2em}.prose figcaption{font-size:var(--fs-sm);color:var(--text-muted);margin-top:10px}.diagram svg{width:100%;max-width:520px;height:auto;color:var(--text);font-family:var(--font-body);margin-inline:auto;display:block}.diagram figcaption{max-width:520px;margin-inline:auto}.d-sea{fill:var(--ocean-100)}.d-sand{fill:var(--sand-200)}.d-rock{fill:var(--sand-300)}.d-foam{fill:var(--bg-raised)}.d-wave{stroke:var(--ocean-700)}.d-board{fill:var(--bg-raised);stroke:currentColor;stroke-width:1.5px}.d-key,.d-key-text{fill:var(--clay-600)}.d-key-board{fill:var(--clay-100);stroke:var(--clay-600)}.d-key-line{stroke:var(--clay-600)}.d-muted{fill:var(--text-muted)}.breakout{width:min(1040px,calc(100vw - 2*var(--gutter)));margin-left:calc(50% - min(1040px,calc(100vw - 2*var(--gutter)))/2)}.breakout .ph{border-radius:var(--r-lg);height:480px}.fig-arch .ph{aspect-ratio:4/3;border-radius:var(--r-lg)}.table-box{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-raised);overflow-x:auto}.glance{border-collapse:collapse;width:100%;min-width:560px;font-size:var(--fs-sm);line-height:1.45}.glance th,.glance td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:12px 14px}.glance thead th{font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);background:var(--sand-200);font-weight:700}.glance tbody tr:last-child td,.glance tbody tr:last-child th{border-bottom:0}.glance tbody th{font-weight:700}.end-cta{gap:var(--s-6);max-width:880px;padding:var(--s-7);border-radius:var(--r-lg);background:var(--dark);color:var(--on-dark);grid-template-columns:auto minmax(0,1fr);align-items:center;margin-inline:auto;display:grid}.partner-window{width:180px;height:220px}.end-cta .lead{color:var(--on-dark-muted)}.end-cta .eyebrow{color:var(--dark-accent)}.hub-head{gap:var(--s-5);padding-block:var(--s-5) var(--s-7);display:grid}.filters{flex-wrap:wrap;gap:8px;display:flex}.filter{min-height:var(--tap);border-radius:var(--r-pill);border:1px solid var(--line-strong);color:var(--text);align-items:center;padding:0 18px;font-weight:500;text-decoration:none;display:inline-flex}.filter:hover{border-color:var(--text);color:var(--text)}.filter[aria-current]{background:var(--ink-900);border-color:var(--ink-900);color:var(--sand-50)}.spot-grid{gap:var(--s-7) var(--s-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.spot-card{gap:var(--s-3);color:var(--text);flex-direction:column;text-decoration:none;display:flex}.spot-card .ph{aspect-ratio:4/3;border-radius:var(--r-lg)}.spot-card-body{align-content:start;gap:10px;display:grid}.spot-card:hover .h3{color:var(--clay-700)}.hub-cta{justify-content:space-between;align-items:center;gap:var(--s-4);padding:var(--s-6);border-radius:var(--r-lg);background:var(--bg-sunken);flex-wrap:wrap;display:flex}@media (width<=1000px){.pkgs,.incl{grid-template-columns:1fr}.spot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spot-top{grid-template-columns:1fr}}@media (width<=760px){.page-hero{gap:var(--s-6);padding-block:var(--s-3) var(--s-8);grid-template-columns:1fr}.hero-arch{aspect-ratio:1;justify-self:center;width:min(100%,360px)}.gallery{grid-template-columns:1fr 1fr}.gallery .ph{height:180px}.gallery .ph:first-child{grid-column:1/-1;height:240px}.cta-band{padding:var(--s-6) var(--s-5);grid-template-columns:1fr}.cta-band .btn-row{justify-content:flex-start}.cta-band .btn{flex:100%}.spot-media,img.spot-media{height:260px}.map{min-height:340px}.fact{grid-template-columns:112px minmax(0,1fr)}.art-hero{height:280px}.breakout .ph{height:260px}.prose{font-size:1.0625rem}.end-cta{padding:var(--s-6) var(--s-5);grid-template-columns:1fr}.partner-window{width:120px;height:146px}.spot-grid{gap:var(--s-4);grid-template-columns:1fr}.spot-card{align-items:flex-start;gap:var(--s-4);flex-direction:row}.spot-card .ph{aspect-ratio:1;border-radius:var(--r-md);flex:none;width:112px}.spot-card .ph-label{display:none}.spot-card .h3{font-size:1.375rem}}.ftr{padding-block:var(--s-8) var(--s-6);background:var(--bg-sunken);color:var(--text-muted);font-size:var(--fs-sm)}.ftr-grid{gap:var(--s-7);grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,3fr);display:grid}.ftr-partner{max-width:46ch;font-size:var(--fs-base);color:var(--text)}.ftr-h{font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--text-muted);font-weight:700}.ftr-links a{min-height:var(--tap);color:var(--text);align-items:center;text-decoration:none;display:flex}.ftr-links a:hover{color:var(--clay-700)}.ftr-legal{margin-top:var(--s-7);padding-top:var(--s-4);border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:0 24px;display:flex}.ftr-legal a{min-height:var(--tap);color:var(--text);align-items:center;display:inline-flex}@media (width<=760px){.ftr{padding-block:var(--s-7) var(--s-5)}.ftr-grid{gap:var(--s-6);grid-template-columns:1fr}}.dock{z-index:50;gap:var(--s-3);padding:var(--s-4) var(--gutter) var(--s-5);pointer-events:none;display:grid;position:fixed;inset:auto 0 0}.dock>*{pointer-events:auto}.cookie[hidden]{display:none}.cookie{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);max-width:560px;box-shadow:var(--sh-3);gap:14px;padding:20px 24px;display:grid}.cookie p{font-size:var(--fs-sm);line-height:1.5}.cookie a{color:var(--link)}.cookie-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.mbar{display:none}@media (width<=760px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.dock{gap:0;padding:0}.cookie{max-width:none;margin:0 12px 12px;padding:18px}.mbar{padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--bg-raised);border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid;box-shadow:0 -10px 30px -16px #4a2c1959}.mbar .btn{min-height:var(--tap-lg)}}.usp-head{margin-top:var(--s-8);padding-top:var(--s-6);border-top:1px solid #f5ede233}.usp{gap:var(--s-4);margin-top:var(--s-5);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.usp-item{padding:var(--s-5);border-radius:var(--r-lg);background:#f5ede20f;border:1px solid #f5ede22e;align-content:start;gap:10px;display:grid}.usp-big{font-family:var(--font-display);font-size:var(--fs-xl);color:var(--dark-accent);white-space:nowrap;font-weight:500;line-height:1}.usp-ico{width:44px;height:44px;color:var(--dark-accent);background:#f0c08929;border-radius:50%;place-items:center;display:grid}.usp-item h3{font-size:var(--fs-base);font-weight:700;line-height:1.3}.usp-item p{font-size:var(--fs-sm);color:var(--on-dark-muted);line-height:1.45}.why{gap:var(--s-8);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;display:grid}.ratio{gap:var(--s-4);display:grid}.ratio-card{gap:var(--s-4) var(--s-5);padding:var(--s-6);border-radius:var(--r-lg);background:var(--bg-raised);border:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.ratio-card.us{border:2px solid var(--ocean-700);box-shadow:var(--sh-2)}.ratio-num{font-family:var(--font-display);font-weight:500;font-size:var(--fs-3xl);white-space:nowrap;line-height:1}.us .ratio-num{color:var(--ocean-700)}.them .ratio-num{color:var(--ink-700)}.ratio-who{font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;font-weight:700}.us .ratio-who{color:var(--ocean-700)}.them .ratio-who{color:var(--ink-700)}.people{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;display:flex}.p-lead{border-right:1px solid var(--line-strong);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:8px;margin-right:8px;padding-right:16px;font-weight:700;display:inline-flex}.p-lead i{background:var(--clay-600);border-radius:50%;width:28px;height:28px}.dot{background:var(--ocean-700);border-radius:50%;width:20px;height:20px}.dot.maybe{box-shadow:inset 0 0 0 2px var(--ocean-700);background:0 0}.them .dot{background:var(--ink-700)}.why-note{color:var(--ocean-700);align-items:center;gap:10px;padding-left:4px;font-weight:600;display:flex}.review{gap:var(--s-8);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;display:grid}.review-media{padding-bottom:56px;position:relative}.review-media .ph-main{aspect-ratio:4/3;border-radius:var(--r-lg)}.review-thumbs{gap:12px;display:flex;position:absolute;bottom:0;right:-16px}.review-thumbs .ph{border-radius:var(--r-sm);border:4px solid var(--sand-50);width:150px;height:108px;box-shadow:var(--sh-3)}.review-thumbs .ph:nth-child(2){transform:rotate(-3deg)}.steps{gap:var(--s-5);margin-top:var(--s-6);display:grid}.step{gap:var(--s-4);grid-template-columns:52px minmax(0,1fr);align-items:start;display:grid}.step-no{border:1.5px solid var(--dark-accent);width:52px;height:52px;color:var(--dark-accent);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:1.375rem;display:grid}.step h3{margin-bottom:4px}.args{gap:var(--s-9);display:grid}.arg{gap:var(--s-8);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid}.arg:nth-child(2n) .arg-media{order:2}.arg-media{gap:var(--s-4);grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:end;display:grid}.arg-media .ph:first-child{aspect-ratio:4/5;border-radius:var(--r-arch);-webkit-mask:var(--window);mask:var(--window)}.arg-media .ph:last-child{aspect-ratio:1;border-radius:var(--r-lg)}.arg-media.single{grid-template-columns:1fr}.arg-media.single .ph{aspect-ratio:4/3;border-radius:var(--r-lg);-webkit-mask:none;mask:none}.ph-note{padding:var(--s-4) var(--s-5);border:1.5px dashed var(--line-strong);border-radius:var(--r-md);font-size:var(--fs-sm);color:var(--text-muted)}.fit{gap:var(--s-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.fit-card{padding:var(--s-7);border-radius:var(--r-lg)}.fit-yes{background:var(--ocean-100)}.fit-no{background:var(--bg-raised);border:1px solid var(--line)}.fit-list{margin-top:var(--s-5);gap:14px;display:grid}.quotes{gap:var(--s-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.quote-card{gap:var(--s-4);padding:var(--s-7);background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-lg);flex-direction:column;display:flex}.quote-card blockquote{font-family:var(--font-display);font-size:var(--fs-md);flex:1;line-height:1.5}.quote-card figcaption{font-size:var(--fs-sm);gap:2px;display:grid}@media (width<=1000px){.usp{grid-template-columns:repeat(2,minmax(0,1fr))}.usp-item:first-child{grid-column:1/-1}.why,.review,.arg{gap:var(--s-6);grid-template-columns:1fr}.arg:nth-child(2n) .arg-media{order:0}.fit,.quotes{grid-template-columns:1fr}}@media (width<=760px){.ratio-card{padding:var(--s-5)}.dot{width:16px;height:16px}.review-media{padding-bottom:44px}.review-thumbs{right:8px}.review-thumbs .ph{border-width:3px;width:96px;height:72px}.args{gap:var(--s-8)}.fit-card,.quote-card{padding:var(--s-5)}}.drop.menu{position:static}.menu .menu-panel{width:auto;margin:0 var(--gutter);border-radius:0 0 var(--r-lg) var(--r-lg);padding:8px 16px 20px;top:100%;left:0;right:0}.menu-panel>a:not(.btn){border-bottom:1px solid var(--line);min-height:52px;font-size:var(--fs-base);border-radius:0;padding:6px 4px}.menu-lang{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:16px;display:grid}.drop-panel .menu-lang a{min-height:var(--tap);border:1px solid var(--line-strong);border-radius:var(--r-pill);font-size:var(--fs-sm);letter-spacing:.06em;justify-content:center;padding:0;font-weight:600}.drop-panel .menu-lang a[aria-current]{background:var(--ink-900);border-color:var(--ink-900);color:var(--sand-50)}.menu .menu-panel .btn{width:100%;margin-top:12px}.hdr[data-pill] .menu .menu-panel{border-radius:var(--r-lg);margin:8px 0 0}.hassan{gap:var(--s-9);grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;display:grid}.hassan-photo{position:relative}.hassan-photo .ph{aspect-ratio:4/5;border-radius:var(--r-lg)}.hassan-badge{z-index:2;background:var(--bg-raised);border-radius:var(--r-md);max-width:230px;box-shadow:var(--sh-2);gap:4px;padding:16px 20px;display:grid;position:absolute;bottom:56px;right:-28px}.hassan-badge b{font-family:var(--font-display);font-weight:500;font-size:var(--fs-2xl);color:var(--clay-600);line-height:1}.hassan-badge span{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.35}.hfacts{gap:var(--s-4);padding-block:var(--s-5);border-block:1px solid var(--line-strong);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.hfact{align-content:start;gap:6px;display:grid}.hfact b{font-family:var(--font-display);font-weight:500;font-size:var(--fs-2xl);color:var(--clay-600);line-height:1}.hfact span{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.4}.langs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hquote{font-family:var(--font-display);font-style:italic;font-size:var(--fs-lg);line-height:1.4}.hassan.compact{gap:var(--s-8);grid-template-columns:minmax(0,4fr) minmax(0,7fr)}.hassan.compact .hassan-photo .ph{aspect-ratio:1}.food-head{gap:var(--s-8);margin-bottom:var(--s-7);grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:end;display:grid}.food-grid{gap:var(--s-4);grid-template-rows:280px 280px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.food-grid .ph{border-radius:var(--r-lg)}.food-grid .ph:first-child{grid-area:1/1/3/3}.food-grid .ph:nth-child(4){grid-column:3/5}.day{margin-top:var(--s-7);border-top:1px solid var(--line-strong);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.day-item{padding:var(--s-5) var(--s-4) 0 0;align-content:start;gap:8px;display:grid}.day-item+.day-item{padding-left:var(--s-4);border-left:1px solid var(--line)}.day-when{font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--clay-700);font-weight:700}.day-item h3{font-family:var(--font-display);font-weight:500;font-size:var(--fs-lg);line-height:1.2}.day-item p{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.45}.house{gap:var(--s-8);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;display:grid}.house-grid{gap:var(--s-4);grid-template-rows:300px;grid-template-columns:1fr 1fr;grid-auto-rows:220px;display:grid}.house-grid .ph{border-radius:var(--r-lg)}.house-grid .ph:first-child{grid-column:1/-1}.illus{aspect-ratio:16/10;border-radius:var(--r-md);background:var(--sand-200);border:1.5px dashed var(--line-strong);color:var(--clay-600);place-items:center;display:grid;position:relative;overflow:hidden}.illus-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700;position:absolute;bottom:10px;left:12px;right:12px}.learn-feature{gap:var(--s-7);padding:var(--s-5);border-radius:var(--r-lg);background:var(--bg-raised);border:1px solid var(--line);box-shadow:var(--sh-1);color:var(--text);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;text-decoration:none;display:grid}.learn-feature .illus{aspect-ratio:16/9}.learn-grid{gap:var(--s-5);margin-top:var(--s-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.learn-card{gap:var(--s-3);padding:var(--s-4) var(--s-4) var(--s-5);border-radius:var(--r-lg);background:var(--bg-raised);border:1px solid var(--line);color:var(--text);flex-direction:column;text-decoration:none;display:flex}.learn-card .illus{margin-bottom:var(--s-2)}.learn-feature:hover .h2,.learn-card:hover .h3{color:var(--clay-700)}.lsteps{gap:var(--s-8);max-width:1000px;margin-inline:auto;display:grid}.lstep{gap:var(--s-6);grid-template-columns:72px minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.lstep-no{background:var(--clay-600);width:60px;height:60px;color:var(--on-primary);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:1.625rem;display:grid}.lstep-body{gap:var(--s-4);align-content:start;display:grid}.lstep-body h2{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:500;line-height:1.2}.lstep-body p{font-size:1.125rem;line-height:1.7}.callout{gap:var(--s-4);padding:var(--s-5);border-radius:var(--r-md);background:var(--clay-100);color:var(--ink-900);grid-template-columns:44px minmax(0,1fr);display:grid}.callout-ico{background:var(--clay-700);width:44px;height:44px;color:var(--sand-50);border-radius:50%;place-items:center;display:grid}.callout-label{font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--clay-700);font-weight:700}.callout p+p{margin-top:4px}.callout.tip{background:var(--ocean-100)}.callout.tip .callout-ico{background:var(--ocean-700)}.callout.tip .callout-label{color:var(--ocean-700)}.fc-grid{gap:var(--s-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.fc-card{gap:var(--s-4);padding:var(--s-6);border-radius:var(--r-lg);background:var(--bg-raised);border:1px solid var(--line);box-shadow:var(--sh-1);flex-direction:column;display:flex}.fc-top{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.fc-ico{background:var(--ocean-100);width:52px;height:52px;color:var(--ocean-700);border-radius:50%;place-items:center;display:grid}.fc-best{padding-top:var(--s-3);border-top:1px solid var(--line);font-size:var(--fs-sm)}.fc-card .btn{margin-top:auto}.outlook{gap:var(--s-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.out-link{gap:var(--s-4);min-height:104px;padding:var(--s-5);border-radius:var(--r-lg);background:var(--bg-sunken);color:var(--text);grid-template-columns:52px minmax(0,1fr) 24px;align-items:center;text-decoration:none;display:grid}.out-link:hover .h4{color:var(--clay-700)}.spots-table{border-top:1px solid var(--line-strong)}.srow{gap:var(--s-4);padding-block:var(--s-4);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.6fr) minmax(0,1.4fr) minmax(0,1.3fr) minmax(0,1.2fr) minmax(0,1.3fr);align-items:center;display:grid}.srow.head{font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding-block:12px;font-weight:700}.srow .spot-name{font-family:var(--font-display);font-size:var(--fs-lg);color:var(--text);min-height:var(--tap);align-items:center;font-weight:500;text-decoration:none;display:flex}.dir{align-items:center;gap:12px;font-weight:600;display:flex}.compass{flex:none}.lbl-m{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700;display:none}.legend{gap:var(--s-3) var(--s-6);font-size:var(--fs-sm);color:var(--text-muted);flex-wrap:wrap;align-items:center;display:flex}.legend span{align-items:center;gap:8px;display:inline-flex}.legend i{border-radius:3px;width:14px;height:14px}.glance-strip{gap:var(--s-4);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.gl{padding:var(--s-5);border-radius:var(--r-lg);background:var(--bg-raised);border:1px solid var(--line);align-content:start;gap:6px;display:grid}.gl b{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:500;line-height:1.15}.gl span{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.4}.town{gap:var(--s-8);grid-template-columns:250px minmax(0,1fr);align-items:start;display:grid}.town-toc{padding:var(--s-3);border-radius:var(--r-lg);background:var(--bg-raised);border:1px solid var(--line);scroll-target-group:auto;gap:2px;display:grid;position:sticky;top:100px}.town-toc p{padding:8px 10px 4px}.town-toc a{min-height:var(--tap);border-radius:var(--r-sm);color:var(--text);font-size:var(--fs-sm);align-items:center;gap:10px;padding:0 10px;font-weight:500;text-decoration:none;display:flex}.town-toc a:hover{background:var(--sand-200);color:var(--text)}.town-toc a:target-current{background:var(--sand-200)}.toc-jump{display:none}.toc-jump summary{min-height:var(--tap-lg);border-radius:var(--r-pill);background:var(--bg-raised);border:1px solid var(--line-strong);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:0 18px;font-weight:600;display:flex}.toc-jump-list{border-radius:var(--r-md);background:var(--bg-raised);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:2px 8px;margin-top:8px;padding:8px;display:grid}.toc-jump-list a{min-height:var(--tap);color:var(--text);font-size:var(--fs-sm);align-items:center;padding:0 8px;text-decoration:none;display:flex}.chapters{gap:var(--s-9);max-width:840px;display:grid}.ch{gap:var(--s-5);scroll-margin-top:100px;display:grid}.ch-head{gap:var(--s-2);padding-top:var(--s-5);border-top:1px solid var(--line-strong);display:grid}.ch-head .h2{font-size:var(--fs-2xl)}.ch>p{font-size:1.0625rem;line-height:1.7}.ch>p a{color:var(--link)}.ch .ch-photo{border-radius:var(--r-lg);height:360px}.ch-photos{gap:var(--s-4);grid-template-columns:1fr 1fr;display:grid}.kv{gap:var(--s-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.kv.three{grid-template-columns:repeat(3,minmax(0,1fr))}.kv-item{padding:var(--s-5);border-radius:var(--r-md);background:var(--bg-raised);border:1px solid var(--line);align-content:start;gap:6px;display:grid}.kv-item h3{font-size:var(--fs-base);font-weight:700;line-height:1.3}.kv-item p{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.55}.kv-item .big{font-family:var(--font-display);font-size:var(--fs-lg);color:var(--text);font-weight:500;line-height:1.2}.kv-item a{color:var(--link)}.plist{border-top:1px solid var(--line-strong)}.plist-group{padding:var(--s-5) 0 var(--s-2);font-size:var(--fs-xs);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--clay-700);font-weight:700}.plist-row{gap:2px var(--s-4);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;padding-block:12px;display:grid}.plist-row .pi{font-weight:600}.plist-row .pv{font-family:var(--font-display);font-size:var(--fs-md);white-space:nowrap;font-weight:500}.plist-row small{font-size:var(--fs-sm);color:var(--text-muted);grid-column:1/-1}.words{gap:var(--s-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.word{padding:var(--s-4);border-radius:var(--r-md);background:var(--bg-sunken);gap:4px;display:grid}.word b{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:500;line-height:1.2}.word span{font-size:var(--fs-sm);color:var(--text-muted)}.emerg{gap:var(--s-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.emerg a{min-height:96px;padding:var(--s-4);border-radius:var(--r-md);background:var(--clay-100);color:var(--ink-900);align-content:start;gap:4px;text-decoration:none;display:grid}.emerg b{font-family:var(--font-display);font-size:var(--fs-2xl);color:var(--clay-700);font-weight:500;line-height:1}.emerg span{font-size:var(--fs-sm);font-weight:600}@media (width<=1100px){.glance-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.glance-strip .gl:first-child{grid-column:1/-1}.town{gap:var(--s-6);grid-template-columns:1fr}.town-toc{display:none}.toc-jump{display:block}.kv.three,.words{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.kv,.kv.three{grid-template-columns:1fr}.ch .ch-photo{height:220px}.chapters{gap:var(--s-8)}.emerg a{min-height:88px;padding:var(--s-3)}.emerg b{font-size:var(--fs-xl)}}@media (width<=1000px){.hassan,.hassan.compact,.house,.food-head,.learn-feature{gap:var(--s-6);grid-template-columns:1fr}.hfacts{row-gap:var(--s-5);grid-template-columns:repeat(2,minmax(0,1fr))}.day{grid-template-columns:1fr}.day-item,.day-item+.day-item{column-gap:var(--s-4);padding:var(--s-4) 0;border-left:0;border-bottom:1px solid var(--line);grid-template-columns:120px minmax(0,1fr);display:grid}.day-item .day-when{grid-row:1/3;padding-top:4px}.learn-grid,.fc-grid,.outlook{grid-template-columns:1fr}.lstep{gap:var(--s-4);grid-template-columns:60px minmax(0,1fr)}.lstep .illus{grid-column:2}}@media (width<=760px){.hassan-photo .ph{aspect-ratio:1}.hassan-badge{max-width:190px;padding:12px 14px;bottom:12px;right:12px}.food-grid{grid-template-rows:240px 150px 180px;grid-template-columns:1fr 1fr}.food-grid .ph:first-child{grid-area:auto/1/auto/-1}.food-grid .ph:nth-child(4){grid-column:1/-1}.day-item,.day-item+.day-item{grid-template-columns:96px minmax(0,1fr)}.house-grid{grid-template-rows:220px;grid-auto-rows:160px}.learn-feature{padding:var(--s-4)}.lstep{grid-template-columns:1fr}.lstep-no{width:48px;height:48px;font-size:1.375rem}.lstep .illus{grid-column:auto}.lstep-body p{font-size:1.0625rem}.srow.head{display:none}.srow{gap:var(--s-3) var(--s-4);padding:var(--s-4);margin-bottom:var(--s-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-raised);grid-template-columns:1fr 1fr}.spots-table{border-top:0}.srow .spot-cell{grid-column:1/-1}.srow>div{gap:6px;display:grid}.lbl-m{display:block}}.ftr-legal button{min-height:var(--tap);font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.page-body{padding-bottom:var(--s-8)}.page-body .prose{max-width:none;margin-inline:0}.hub-head+.page-body .prose{margin-inline:0}.end-wrap{padding-bottom:var(--s-9)}.end-cta .h3{font-size:var(--fs-2xl)}.end-cta .btn-row{margin-top:var(--s-4)}.social-proof{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.reviews-link{min-height:var(--tap);font-size:var(--fs-sm);color:var(--link);align-items:center;gap:8px;margin-right:4px;font-weight:600;text-decoration:none;display:inline-flex}.reviews-link .label{text-underline-offset:4px;text-decoration:underline 1.5px}.reviews-link:hover{color:var(--link-hover)}.icon-link{width:var(--tap);height:var(--tap);background:var(--ink-900);color:var(--sand-50);border-radius:50%;place-items:center;transition:background-color .15s;display:inline-grid}.icon-link:hover{background:var(--clay-700);color:var(--sand-50)}.stars{color:var(--sun-400);letter-spacing:1px;font-size:1.05rem;line-height:1}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.spot-body{padding-block:0 var(--s-8)}.spot-photo{margin-block:0 var(--s-7)}.credit{font-size:var(--fs-xs);color:var(--text-muted);margin-top:8px}.credit a{color:inherit}.spot-text,.spot-cta{padding-bottom:var(--s-8)}.spot-text .prose{margin-inline:0}@media (width>=1000px){.spot-text .prose,.hub-intro .prose{columns:2;column-gap:var(--s-8);max-width:none}.spot-text .prose>*,.hub-intro .prose>*{break-inside:avoid}.spot-text .prose h2,.hub-intro .prose h2{break-after:avoid}.spot-text .prose>h2:first-child,.hub-intro .prose>h2:first-child{margin-top:0}}.fact-note{font-size:var(--fs-sm);color:var(--text-muted);margin-top:4px;font-weight:400;display:block}.facts-links{margin-top:var(--s-5);flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.hub-intro .prose{margin-inline:0}.map-overview{aspect-ratio:16/9;width:100%;min-height:0;max-height:760px}.spot-filter{margin:0 0 var(--s-6);border:0;min-width:0;padding:0}.filter{cursor:pointer;position:relative}.filter input{opacity:0;pointer-events:none;position:absolute}.filter:has(input:checked){background:var(--ink-900);border-color:var(--ink-900);color:var(--sand-50)}.filter:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.spot-filter:has(input[value=beginner]:checked)~.spot-grid>li:not([data-level~=beginner]),.spot-filter:has(input[value=intermediate]:checked)~.spot-grid>li:not([data-level~=intermediate]),.spot-filter:has(input[value=advanced]:checked)~.spot-grid>li:not([data-level~=advanced]),.spot-filter:has(input[value=learn]:checked)~.spot-grid>li:not([data-category=learn]),.spot-filter:has(input[value=trip]:checked)~.spot-grid>li:not([data-category=trip]){display:none}@media (width<=1000px){.map-overview{aspect-ratio:4/3}}@media (width<=760px){.map-overview{aspect-ratio:auto}}.map .map-sm{display:none}@media (width<=760px){.map{min-height:0}.map svg{height:320px;display:block;position:static}.map .map-lg{display:none}.map .map-sm{display:block}.map-overview{aspect-ratio:auto}.map-overview svg{aspect-ratio:3/4;height:auto}.map-foot{background:var(--bg-raised);padding:12px;position:static}}.pkg .h3 a{color:inherit;text-decoration:none}.pkg .h3 a:hover{text-decoration:underline}.btn-wa:before,.link-arrow:after,.btn.arrow:after,.btn[target=_blank]:after,.out-link:after,.reviews-link:after,.ticks li:before,.fit-list li:before{content:"";width:18px;height:18px;-webkit-mask:var(--icon) center/contain no-repeat;mask:var(--icon) center/contain no-repeat;background:currentColor;flex:none}.btn-wa:before{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.5 11.6a8.4 8.4 0 0 1-12.3 7.4L3.5 20.5l1.5-4.5a8.4 8.4 0 1 1 15.5-4.4z'/%3E%3Cpath d='M9 9.2c.4 2.3 2 4.3 4.6 5.3l1.3-1.2 1.9.9'/%3E%3C/svg%3E");width:20px;height:20px}.link-arrow:after,.btn.arrow:after,.out-link:after{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E")}.btn[target=_blank]:after,.out-link[target=_blank]:after,.reviews-link:after{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 4h6v6M20 4l-9 9M18 14v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h5'/%3E%3C/svg%3E")}.ticks li,.fit-list li{padding-left:32px;position:relative}.ticks li:before,.fit-list li:before{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.2 4.2L19 7'/%3E%3C/svg%3E");position:absolute;top:4px;left:0}.ticks li:before{color:var(--ocean-600)}.fit-list li:before{width:22px;height:22px;color:var(--ocean-700);top:2px}.fit-no .fit-list li:before{color:var(--clay-700);--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E")}
