:root{--bone:#faf7f2;--stone:#ede5d9;--stone-deep:#ded3c2;--ink:#2c2a27;--ink-soft:#6b655c;--ink-faint:#696257;--clay:#a08f76;--clay-text:#6e5f49;--clay-light:#c9b69a;--line:#e4dcd0;--white:#fff;--serif:"Iowan Old Style", "Hoefler Text", Charter, Georgia, serif;--sans:"Avenir Next", "Avenir", "Segoe UI", system-ui, -apple-system, sans-serif;--mono:"SF Mono", "IBM Plex Mono", "Roboto Mono", ui-monospace, Menlo, monospace;--step--1:.8125rem;--step-0:1rem;--step-1:1.1875rem;--step-2:1.5rem;--step-3:2rem;--step-4:2.75rem;--step-5:clamp(2.5rem, 1.5rem + 4.2vw, 3.75rem);--gutter:clamp(1.5rem, 1rem + 2.4vw, 4rem);--band:clamp(4rem, 2.5rem + 6vw, 8rem);--measure:34rem}*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,p,ul,ol,figure,dl,dd{margin:0;padding:0}ul[class]{list-style:none}img{max-width:100%;display:block}html{-webkit-text-size-adjust:100%}:root{--header-h:5.5rem}[id]{scroll-margin-top:calc(var(--header-h) + 1.5rem)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--bone);color:var(--ink);font-family:var(--sans);font-size:var(--step-0);-webkit-font-smoothing:antialiased;line-height:1.65}:focus{outline:2px solid var(--ink);outline-offset:3px}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.display{font-family:var(--serif);letter-spacing:-.015em;font-weight:400;line-height:1.12}.t-hero{font-size:var(--step-5)}.t-section{font-size:var(--step-3)}.t-card{font-size:var(--step-2)}.t-sub{font-size:var(--step-1)}.lede{font-size:var(--step-1);color:var(--ink-soft);max-width:var(--measure);line-height:1.7}.prose{color:var(--ink-soft);max-width:var(--measure)}.prose+.prose{margin-top:1.1rem}.eyebrow{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--clay-text);font-size:.6875rem}.eyebrow-ink{color:var(--ink-faint)}.wrap{max-width:78rem;padding-inline:var(--gutter);margin-inline:auto}.band{padding-block:var(--band)}.band-stone{background:var(--stone)}.rule{border-top:1px solid var(--line)}.spine{gap:var(--gutter);grid-template-columns:9rem 1fr;align-items:start;display:grid}.spine-wide{grid-template-columns:12rem 1fr}.stack-s>*+*{margin-top:.75rem}.stack-m>*+*{margin-top:1.5rem}.stack-l>*+*{margin-top:2.5rem}.stack-xl>*+*{margin-top:4rem}.demo-bar{background:var(--ink);color:var(--bone);font-family:var(--mono);letter-spacing:.09em;text-align:center;padding:.55rem var(--gutter);font-size:.6875rem}.demo-bar strong{color:var(--stone-deep);font-weight:600}.masthead{z-index:50;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#faf7f2f0;position:sticky;top:0}.masthead-inner{justify-content:space-between;align-items:center;gap:1.5rem;padding-block:1.05rem;display:flex}.wordmark{font-family:var(--serif);letter-spacing:.26em;text-transform:uppercase;color:var(--ink);white-space:nowrap;font-size:1.1875rem;text-decoration:none}.nav{letter-spacing:.02em;gap:1.65rem;font-size:.8125rem;display:flex}.nav a{color:var(--ink-soft);border-bottom:1px solid #0000;padding-block:.25rem;text-decoration:none;transition:color .2s,border-color .2s}.nav a:hover{color:var(--ink);border-bottom-color:var(--clay)}.nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--ink)}@media (width<=62rem){:root{--header-h:6.25rem}.masthead-inner{flex-wrap:wrap;gap:.75rem 1rem;padding-bottom:0}.masthead .btn{display:none}.nav{scrollbar-width:none;width:100%;margin-inline:calc(var(--gutter) * -1);padding-bottom:.7rem;padding-inline:var(--gutter);-webkit-overflow-scrolling:touch;order:3;gap:1.15rem;overflow-x:auto;mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),#0000)}.nav::-webkit-scrollbar{display:none}.nav a{white-space:nowrap;padding-block:.7rem}.wordmark{font-size:1.0625rem}.spine,.spine-wide{grid-template-columns:1fr;gap:1.25rem}.grid-3{grid-template-columns:repeat(2,1fr)}}.btn{font-family:var(--sans);letter-spacing:.15em;text-transform:uppercase;border:1px solid var(--ink);cursor:pointer;padding:.95rem 1.6rem;font-size:.75rem;text-decoration:none;transition:background .2s,color .2s,border-color .2s;display:inline-block}.btn-solid{background:var(--ink);color:var(--bone)}.btn-solid:hover{background:var(--clay-text);border-color:var(--clay-text)}.btn-ghost{color:var(--ink-soft);border-color:var(--clay);background:0 0}.btn-ghost:hover{color:var(--ink);border-color:var(--ink)}.btn-row{flex-wrap:wrap;gap:.75rem;display:flex}.hero{border-bottom:1px solid var(--line);grid-template-columns:1.25fr 1fr;min-height:32rem;display:grid}.hero-text{padding-block:var(--band);padding-left:max(var(--gutter), calc((100vw - 78rem) / 2 + var(--gutter)));padding-right:var(--gutter);flex-direction:column;justify-content:center;width:100%;display:flex}.hero-figure{background:linear-gradient(152deg, var(--stone) 0%, var(--stone-deep) 100%);position:relative;overflow:hidden}.hero-figure img{object-fit:cover;object-position:50% 30%;width:100%;height:100%;display:block}@media (width<=56rem){.hero{grid-template-columns:1fr;min-height:0}.hero-figure{min-height:15rem}.hero-text{margin-left:0}}.figure{background:var(--stone);padding:.625rem;position:relative;overflow:hidden}.figure img{object-fit:cover;width:100%;height:100%;display:block}.figure-tall{aspect-ratio:3/4}.figure-square{aspect-ratio:1}.figure-wide{aspect-ratio:16/10}.figure-band{aspect-ratio:21/9}.figure-portrait img{object-position:50% 22%}.figure-caption{font-family:var(--mono);letter-spacing:.03em;color:var(--ink-faint);max-width:42rem;margin-top:.7rem;font-size:.6875rem;line-height:1.6}.logo-mark{filter:invert();mix-blend-mode:screen;width:100%;max-width:13rem;height:auto;display:block}.spec{background:var(--white);border:1px solid var(--line);padding:1.75rem}.spec-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:1rem;display:flex}.spec-name{font-family:var(--serif);font-size:var(--step-2);line-height:1.2}.spec-price{font-family:var(--mono);color:var(--clay-text);white-space:nowrap;font-size:.9375rem}.spec-list{font-family:var(--mono);grid-template-columns:7.5rem 1fr;gap:.55rem 0;margin-top:1.1rem;font-size:.75rem;line-height:1.6;display:grid}.spec-key{letter-spacing:.11em;text-transform:uppercase;color:var(--ink-faint);padding-right:1rem}.spec-val{color:var(--ink)}.spec-row-warn{background:var(--stone);padding-block:.55rem}dt.spec-row-warn{color:var(--clay-text);border-left:2px solid var(--clay-text);margin-left:-1.75rem;padding-left:calc(1.75rem - 2px);font-weight:600}dd.spec-row-warn{color:var(--ink);margin-right:-1.75rem;padding-right:1.75rem}@media (width<=34rem){.spec-list{grid-template-columns:1fr;gap:0}.spec-key{margin-top:.6rem;padding-right:0}dt.spec-row-warn,dd.spec-row-warn{border-left:2px solid var(--clay-text);margin-left:-1.75rem;margin-right:-1.75rem;padding-left:calc(1.75rem - 2px);padding-right:1.75rem}dt.spec-row-warn{margin-top:.85rem;padding-bottom:.15rem}dd.spec-row-warn{padding-top:0}}.grid-2{gap:var(--gutter);grid-template-columns:repeat(2,1fr);display:grid}.grid-3{gap:var(--gutter);grid-template-columns:repeat(3,1fr);display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:1.25rem;display:grid}@media (width<=62rem){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=46rem){.grid-2,.grid-3{grid-template-columns:1fr}}@media (width<=34rem){.grid-4{grid-template-columns:1fr}}.svc{background:var(--white);border:1px solid var(--line);color:inherit;flex-direction:column;text-decoration:none;transition:border-color .2s,transform .2s;display:flex}.svc:hover{border-color:var(--clay);transform:translateY(-2px)}.svc-flag{border-color:var(--stone-deep)}.svc-figure{aspect-ratio:4/3;background:linear-gradient(150deg, var(--stone), var(--stone-deep));position:relative;overflow:hidden}.svc-figure img{object-fit:cover;width:100%;height:100%;display:block}.svc-tag{background:var(--ink);color:var(--bone);font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;padding:.28rem .6rem;font-size:.5625rem;position:absolute;top:.6rem;right:.6rem}.svc-body{flex-direction:column;flex:1;gap:.5rem;padding:1.25rem;display:flex}.svc-name{font-family:var(--serif);font-size:var(--step-1)}.svc-desc{color:var(--ink-soft);flex:1;font-size:.8125rem;line-height:1.7}.svc-price{font-family:var(--mono);letter-spacing:.06em;color:var(--clay-text);font-size:.6875rem}.person-name{font-family:var(--serif);font-size:var(--step-2);margin-top:1rem}.person-role{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--clay-text);margin-top:.35rem;font-size:.6875rem}.person-bio{color:var(--ink-soft);margin-top:.75rem;font-size:.875rem;line-height:1.75}.price-jump{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;border-block:1px solid var(--line);flex-wrap:wrap;gap:.6rem 1.25rem;padding-block:1rem;font-size:.6875rem;display:flex}.price-jump a{color:var(--clay-text);border-bottom:1px solid #0000;padding-block:.2rem;text-decoration:none}.price-jump a:hover{color:var(--ink);border-bottom-color:var(--clay)}.price-group+.price-group{margin-top:3.5rem}.price-row{max-width:var(--measure);align-items:baseline;gap:1rem;padding-block:.9rem;display:flex}.price-row-name{font-size:.9375rem}.price-row-note{color:var(--ink-faint);font-size:.8125rem}.price-row-dots{border-bottom:1px dotted var(--clay);flex:1}.price-row-amt{font-family:var(--mono);color:var(--ink);white-space:nowrap;font-size:.8125rem}.route{background:var(--white);border:1px solid var(--line);flex-direction:column;gap:1rem;padding:2rem;display:flex}.route-solid{background:var(--ink);border-color:var(--ink);color:var(--bone)}.route-solid .prose,.route-solid .route-list,.route-solid .eyebrow{color:var(--stone-deep)}.route-list{color:var(--ink-soft);padding-left:1.1rem;font-size:.875rem;line-height:1.9}.route .btn-solid{align-self:flex-start}.route-solid .mono-note{color:var(--stone-deep)}.route-solid .btn-solid{background:var(--bone);color:var(--ink);border-color:var(--bone)}.route-solid .btn-solid:hover{background:var(--clay-text);border-color:var(--clay-text);color:var(--bone)}.field{flex-direction:column;gap:.4rem;display:flex}.field label{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-size:.6875rem}.field input,.field select,.field textarea{font-family:var(--sans);color:var(--ink);background:var(--white);border:1px solid var(--stone-deep);width:100%;padding:.75rem .85rem;font-size:.9375rem}.field textarea{resize:vertical;min-height:7rem}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);outline:2px solid var(--ink);outline-offset:2px}.field input:focus:not(:focus-visible),.field select:focus:not(:focus-visible),.field textarea:focus:not(:focus-visible){outline:none}.field-hint{color:var(--ink-faint);font-size:.75rem}.field-opt{font-family:var(--mono);letter-spacing:.08em;color:var(--ink-faint);text-transform:none;font-size:.625rem}:is(.field input:user-invalid,.field select:user-invalid,.field textarea:user-invalid){border-color:#a33726}form .grid-2{gap:1rem}.field input[type=file]{font-family:var(--mono);color:var(--ink-soft);background:var(--bone);border:1px dashed var(--stone-deep);cursor:pointer;padding:.7rem;font-size:.75rem;transition:border-color .2s,background .2s}.field input[type=file]:hover{border-color:var(--clay);background:var(--stone)}.field input[type=file]::file-selector-button{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);border:1px solid var(--ink);cursor:pointer;background:0 0;margin-right:.9rem;padding:.7rem 1.2rem;font-size:.6875rem;transition:background .2s,color .2s,border-color .2s}.field input[type=file]::file-selector-button:hover{background:var(--ink);color:var(--bone)}.field input[type=file]::-webkit-file-upload-button{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);border:1px solid var(--ink);cursor:pointer;background:0 0;margin-right:.9rem;padding:.7rem 1.2rem;font-size:.6875rem}.field input[type=file]:focus{outline:2px solid var(--ink);outline-offset:2px;border-color:var(--ink)}.field input[type=file]:focus:not(:focus-visible){outline:none}.field input[type=file]:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-color:var(--ink)}.policy{border-left:2px solid var(--clay-text);color:var(--ink-soft);padding-left:1.25rem;font-size:.875rem;line-height:1.75}.footer{background:var(--ink);color:var(--stone-deep);padding-block:var(--band) 3rem}.footer a{color:var(--stone-deep);border-bottom:1px solid #0000;text-decoration:none}.footer a:hover{color:var(--bone);border-bottom-color:var(--clay)}.footer-out{border-bottom-color:#ede5d952!important}.footer-out:hover{border-bottom-color:var(--clay)!important}.footer-word{font-family:var(--serif);letter-spacing:.24em;text-transform:uppercase;color:var(--bone);font-size:1.375rem}.footer-h{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--clay-light);margin-bottom:.85rem;font-size:.6875rem}.footer-list{font-size:.875rem;line-height:2}.footer-base{font-family:var(--mono);letter-spacing:.08em;color:var(--clay-light);border-top:1px solid #ede5d929;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:3.5rem;padding-top:1.5rem;font-size:.6875rem;display:flex}.book-dock{z-index:60;padding:.75rem var(--gutter) calc(.75rem + env(safe-area-inset-bottom));backdrop-filter:blur(8px);border-top:1px solid var(--line);background:#faf7f2f5;display:none;position:fixed;bottom:0;left:0;right:0}.book-dock .btn{text-align:center;display:block}@media (width<=62rem){.book-dock{display:block}body:has(.book-dock){padding-bottom:calc(6rem + env(safe-area-inset-bottom))}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-clay{color:var(--clay-text)}.mono-note{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);font-size:.75rem}.verse{border-left:2px solid var(--clay-text);max-width:42rem;padding-left:clamp(1.25rem,.5rem + 2.5vw,2.5rem)}.verse p{font-family:var(--serif);font-size:var(--step-2);color:var(--ink);text-wrap:pretty;line-height:1.6}.verse-mark{background:#c9b69a73;border-radius:2px;padding:.05em .15em}.verse cite{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-top:1.5rem;font-size:.75rem;font-style:normal;line-height:1.7;display:block}.beulahful{font-family:var(--serif);font-size:var(--step-3);color:var(--clay-text);letter-spacing:.01em;line-height:1.25}@media (pointer:coarse){.spec-val a,.mono-note a,.price-jump a{align-items:center;min-height:44px;display:inline-flex}.footer-list li>a,.footer-out{align-items:center;gap:.35em;min-height:44px;display:flex}.footer-list li{line-height:1.35}.wordmark{align-items:center;min-height:44px;display:inline-flex}}.announce-bar{background:var(--ink);color:var(--bone);font-family:var(--mono);letter-spacing:.09em;text-align:center;padding:.55rem var(--gutter);font-size:.6875rem}.announce-bar strong{color:var(--stone-deep);font-weight:600}.booking-options{gap:.5rem;margin:1.25rem 0 0;padding:0;list-style:none;display:grid}.booking-option{text-align:left;width:100%;font:inherit;background:var(--bone);border:1px solid var(--line);cursor:pointer;border-radius:2px;justify-content:space-between;align-items:baseline;gap:1rem;padding:.9rem 1rem;display:flex}.booking-option:hover{border-color:var(--ink)}.booking-option-meta{color:var(--ink-faint);white-space:nowrap;font-size:.8rem}.booking-days{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.booking-day{font:inherit;background:var(--bone);border:1px solid var(--line);cursor:pointer;border-radius:2px;align-items:baseline;gap:.4rem;padding:.6rem .8rem;display:flex}.booking-day[disabled]{opacity:.45;cursor:not-allowed}.booking-day-soon{border-style:dashed}.booking-times{flex-wrap:wrap;gap:.5rem;display:flex}.booking-time{font:inherit;background:var(--bone);border:1px solid var(--line);cursor:pointer;border-radius:2px;padding:.55rem .9rem}.booking-back{margin-top:1.5rem}.placeholder-note{color:var(--ink-soft);font-size:.75rem;display:block}#card-field{border:1px solid var(--line);background:var(--bone);border-radius:2px;padding:.5rem}
