*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}:root{--color-ink: #1a1a1a;--color-ink-muted: #444;--color-tarot-frame: #4a4239;--color-paper: #fafafa;--color-paper-dark: #e8e4dc;--color-form-card-bg: color-mix(in srgb, var(--color-paper) 58%, white);--color-card: #fbfaf7;--color-card-beige: #f5f1e8;--color-card-beige-dark: #e2ddd2;--color-accent: #2c1810;--font-display: "IM Fell English", serif;--font-serif: "IM Fell English", "Times New Roman", serif;--font-sans: system-ui, -apple-system, sans-serif;--max-content: 42rem;--space-page: 3rem 1.5rem}html{font-family:var(--font-sans);line-height:1.5}body{min-height:100vh;color:var(--color-ink);background-color:var(--color-paper);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='noStitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.08'/%3E%3C/svg%3E");background-attachment:fixed;background-size:160px 160px}#root{position:relative;min-height:100vh;display:flex;flex-direction:column;z-index:1}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.navbar{position:static;z-index:10;display:flex;justify-content:center;align-items:center;padding:.85rem 1.5rem;background-color:transparent;pointer-events:auto;border-bottom:1px solid var(--color-paper-dark)}.navbar-brand,.navbar-hamburger{display:none}.navbar-brand,.navbar-brand:hover{text-decoration:none}.navbar-logo{display:block;height:2.5rem;width:auto;object-fit:contain}.navbar-hamburger{align-items:center;justify-content:center;padding:.5rem;background:none;border:none;color:var(--color-ink);cursor:pointer;border-radius:.25rem}.navbar-hamburger:hover{color:#c54516}.navbar-menu-wrap{display:grid;position:static;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;width:100%;background:transparent;border:none;padding:0}.navbar-mark{display:inline-flex;align-items:center;justify-self:start;text-decoration:none;line-height:0}.navbar-mark:hover{text-decoration:none;opacity:.85}.navbar-mark-img{display:block;height:2.5rem;width:auto}.navbar-menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;justify-self:center;gap:.2rem}.navbar-book{--book-ink: #1b1916;--book-cream: #f7f2e8;--book-seal: #b4462a;position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-self:end;flex-shrink:0;gap:12px;padding:5px 20px 5px 5px;border:1.5px solid var(--book-ink);border-radius:999px;background:transparent;font-family:var(--font-sans);font-size:15px;font-weight:600;line-height:1;color:var(--book-ink);text-decoration:none;white-space:nowrap;cursor:pointer;transition:color .25s ease}.navbar-book:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--book-ink);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.navbar-book__seal{flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:var(--book-seal);color:var(--book-cream);box-shadow:inset 0 0 0 3px var(--book-seal),inset 0 0 0 4px #f7f2e88c;display:flex;align-items:center;justify-content:center;transition:transform .35s ease}.navbar-book__arrow{display:inline-block;transition:transform .2s ease}.navbar-book:hover,.navbar-book:focus-visible{color:var(--book-cream);text-decoration:none;transition:color .5s ease}.navbar-book:hover:before,.navbar-book:focus-visible:before{transform:scaleX(1);transition:transform .55s cubic-bezier(.22,.61,.36,1)}.navbar-book:hover .navbar-book__seal,.navbar-book:focus-visible .navbar-book__seal{transform:rotate(-25deg);transition:transform .7s cubic-bezier(.22,.61,.36,1)}.navbar-book:hover .navbar-book__arrow,.navbar-book:focus-visible .navbar-book__arrow{transform:translate(4px);transition:transform .4s ease}.navbar-book:focus-visible{outline:2px solid #a2401f;outline-offset:4px}@media(prefers-reduced-motion:reduce){.navbar-book,.navbar-book:before,.navbar-book__seal,.navbar-book__arrow,.navbar-book:hover,.navbar-book:focus-visible,.navbar-book:hover:before,.navbar-book:focus-visible:before,.navbar-book:hover .navbar-book__seal,.navbar-book:focus-visible .navbar-book__seal,.navbar-book:hover .navbar-book__arrow,.navbar-book:focus-visible .navbar-book__arrow{transition:none}}.navbar-menu-item{margin:0}.navbar-link{display:flex;align-items:center;gap:0;padding:.4rem .9rem;font-size:1rem;line-height:1;color:var(--color-ink);text-decoration:none}.navbar-link:hover{text-decoration:none;color:#c54516}.navbar-link.is-active{color:#c54516;background:transparent}.navbar-menu-item--resources{position:relative}.navbar-resources-trigger{gap:.15rem;font:inherit;font-size:1rem;line-height:1;background:none;border:none;cursor:pointer;color:var(--color-ink);text-decoration:none}.navbar-resources-trigger:hover{color:#c54516}.navbar-resources-chevron{flex-shrink:0;transition:transform .2s ease;opacity:.7}.navbar-menu-item--resources.is-open .navbar-resources-chevron{transform:rotate(180deg)}.navbar-resources-menu{position:absolute;top:calc(100% + .35rem);left:50%;transform:translate(-50%);min-width:12rem;margin:0;padding:.35rem;list-style:none;background:var(--color-form-card-bg);border:1px solid var(--color-paper-dark);border-radius:.5rem;box-shadow:0 4px 6px #1a1a1a0a,0 12px 24px #1a1a1a14;z-index:30}.navbar-resources-menu .navbar-menu-item{margin:0}.navbar-resources-menu .navbar-menu-item+.navbar-menu-item{margin-top:.2rem}.navbar-resources-menu .navbar-link{display:block;padding:.55rem .75rem;border-radius:.35rem;color:var(--color-ink)}.navbar-resources-menu .navbar-link:hover{color:#c54516;background:color-mix(in srgb,var(--color-paper-dark) 45%,transparent)}.navbar-resources-menu .navbar-link.is-active{color:#c54516;background:color-mix(in srgb,#c54516 12%,transparent)}@media(max-width:768px){.navbar{position:sticky;top:0;justify-content:space-between;background-color:var(--color-paper)}.navbar-brand{display:block}.navbar-hamburger{display:flex}.navbar-menu-wrap{position:absolute;top:100%;left:0;right:0;width:100%;display:none;grid-template-columns:none;flex-direction:column;align-items:stretch;gap:.5rem;padding:.75rem 1.5rem 1.25rem;background:var(--color-paper);border-bottom:1px solid var(--color-paper-dark)}.navbar.is-menu-open .navbar-menu-wrap{display:flex}.navbar-mark{display:none}.navbar-menu{flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:0}.navbar-link{padding:.65rem 0}.navbar-menu-item--resources{width:100%}.navbar-resources-trigger{width:100%;justify-content:space-between;padding:.65rem 0}.navbar-resources-menu{position:static;transform:none;left:auto;min-width:0;width:100%;margin:0 0 .25rem;padding:0 0 0 .75rem;background:transparent;border:none;border-left:2px solid var(--color-paper-dark);border-radius:0;box-shadow:none}.navbar-resources-menu .navbar-link{padding:.5rem 0 .5rem .65rem}.navbar-book{width:100%;justify-self:stretch;margin-top:.75rem}}.main-content{position:relative;flex:1;z-index:1}.page{padding:var(--space-page);padding-bottom:0;max-width:var(--max-content);margin:0 auto}.page.booking-page{--booking-column-width: 40rem;max-width:min(64rem,100%)}.booking-page-intro{max-width:var(--booking-column-width);margin-left:auto;margin-right:auto;width:100%}.page.booking-page>.booking-form-card{max-width:var(--booking-column-width);margin-left:auto;margin-right:auto}.page-heading{font-family:var(--font-serif);font-size:2rem;font-weight:700;margin-bottom:1.5rem;line-height:1.2}.page.faq-page{--faq-paper: #f2ede3;--faq-text: #3a352e;--faq-rust: #a2401f;--faq-vermilion: #d2603a;--faq-line: #cfc7b8;max-width:70rem;padding:0 2rem}.faq-hero{position:relative;margin:0 auto;max-width:40rem;padding:4.5rem 0 5rem;text-align:center}.faq-hero-heading{margin:0;font-family:var(--font-serif);font-size:clamp(2.25rem,5.5vw,3.5rem);font-weight:400;line-height:.95;letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink)}.stamps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem}.faq-page .stamp{--r: 7px;position:relative;display:flex;flex-direction:column;min-width:0;background:var(--faq-paper);padding:calc(2 * var(--r));-webkit-mask:radial-gradient(var(--r) at var(--r) var(--r),#0000 97%,#000) calc(-1 * var(--r)) calc(-1 * var(--r)) / calc(3 * var(--r)) calc(3 * var(--r)) round,conic-gradient(#000 0 0) content-box;mask:radial-gradient(var(--r) at var(--r) var(--r),#0000 97%,#000) calc(-1 * var(--r)) calc(-1 * var(--r)) / calc(3 * var(--r)) calc(3 * var(--r)) round,conic-gradient(#000 0 0) content-box;transition:transform .25s ease}.faq-page .stamp:hover{transform:rotate(-1deg) translateY(-4px)}.faq-page .stamp__body{flex:1 1 auto;padding:1.375rem 1.375rem 1.5rem}.faq-page .stamp__no{display:block;margin:0 0 .85rem;font-family:var(--font-serif);font-size:.95rem;font-style:italic;font-weight:400;line-height:1;color:var(--faq-rust);white-space:nowrap}.faq-page .stamp__title{margin:0 0 .875rem;font-family:var(--font-serif);font-size:clamp(1.75rem,3vw,2.125rem);font-weight:400;line-height:1.05;color:var(--color-ink)}.faq-page .stamp__body p{margin:0 0 .625rem;font-family:var(--font-sans);font-size:.9375rem;line-height:1.6;color:var(--faq-text)}.faq-page .stamp__body p:last-child{margin-bottom:0}.faq-page .stamp__link{display:inline-block;margin-top:.25rem;font-family:var(--font-sans);font-size:.8125rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-underline-offset:4px;color:var(--faq-rust)}.faq-page .stamp__link:hover{color:#7e2f15}.faq-page .stamp__art{margin:0 calc(-2 * var(--r)) calc(-2 * var(--r));height:10.625rem;background:var(--faq-vermilion);overflow:hidden}.faq-page .stamp__art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.2) rotate(-6deg);transform-origin:center;filter:grayscale(1) contrast(1.85) brightness(1.12);mix-blend-mode:multiply}.faq-page .stamp:nth-child(2) .stamp__art img,.faq-page .stamp:nth-child(3) .stamp__art img{object-position:center 40%;transform:scale(1.2) rotate(5deg)}.faq-page .stamp:nth-child(4) .stamp__art img{transform:scale(1.2) rotate(-4deg)}@media(max-width:860px){.page.faq-page{max-width:28rem;padding-inline:1.25rem}.faq-hero{padding:3rem 0 3.5rem}.faq-hero-heading{font-size:2.25rem}.stamps{grid-template-columns:minmax(0,1fr);gap:1.75rem}}@media(prefers-reduced-motion:reduce){.faq-page .stamp{transition:none}.faq-page .stamp:hover{transform:none}}.page.aftercare-page{max-width:66rem;padding:0 2rem}.aftercare-outro{margin:2.5rem auto 0;max-width:40rem;color:var(--color-ink);text-align:center}.aftercare-body{font-size:1rem;line-height:1.5;color:var(--color-ink)}.aftercare-body a{color:#c54516;font-weight:700;text-decoration:underline}.aftercare-body a:hover{text-decoration:none}.care-steps{--care-paper: #f2ede3;--care-vermilion: #d2603a;--care-numeral: #f7f2e8;--care-label: #2b1a14;--care-text: #3a352e;--care-rust: #a2401f;--care-rule: #cdbfa6;--care-note: #5c4a3a;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin:0;color:var(--color-ink)}.care-step{--r: 7px;display:flex;flex-direction:column;min-width:0;background:var(--care-paper);padding:calc(2 * var(--r));-webkit-mask:radial-gradient(var(--r) at var(--r) var(--r),#0000 97%,#000) calc(-1 * var(--r)) calc(-1 * var(--r)) / calc(3 * var(--r)) calc(3 * var(--r)) round,conic-gradient(#000 0 0) content-box;mask:radial-gradient(var(--r) at var(--r) var(--r),#0000 97%,#000) calc(-1 * var(--r)) calc(-1 * var(--r)) / calc(3 * var(--r)) calc(3 * var(--r)) round,conic-gradient(#000 0 0) content-box}.care-step__band{margin:calc(-2 * var(--r)) calc(-2 * var(--r)) 0;height:10rem;background:var(--care-vermilion);display:flex;flex-direction:column;justify-content:space-between;padding:1.375rem 1.75rem 1.125rem}.care-step__label{font-size:.6875rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--care-label)}.care-step__numeral{font-family:var(--font-serif);font-size:6rem;line-height:.8;color:var(--care-numeral)}.care-step__body{flex:1 1 auto;display:flex;flex-direction:column;gap:1rem;padding:1.5rem 1.375rem 1.625rem}.care-step__title{margin:0;font-family:var(--font-serif);font-weight:400;font-size:clamp(1.35rem,2vw,1.875rem);line-height:1.08;color:var(--color-ink)}.care-step__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.care-step__list li{display:flex;align-items:flex-start;gap:.45rem;font-size:.9375rem;line-height:1.55;color:var(--care-text)}.care-step__list li:before{content:"✦";flex-shrink:0;margin-top:.4rem;font-size:.65rem;line-height:1;color:var(--care-rust)}.care-step__note{margin:auto 0 0;padding-top:.875rem;border-top:1px dashed var(--care-rule);font-family:var(--font-serif);font-style:italic;font-size:1.125rem;line-height:1.35;color:var(--care-note)}@media(max-width:860px){.page.aftercare-page{max-width:28rem;padding-inline:1.25rem}.care-steps{grid-template-columns:minmax(0,1fr)}}.btn-primary{display:inline-block;padding:.75rem 1.5rem;background-color:var(--color-accent);color:#fff;font-weight:600;border-radius:4px;text-decoration:none;border:none;cursor:pointer;font-size:1rem}.btn-primary:hover{text-decoration:none;opacity:.9}.form-group{margin-bottom:2.25rem}.form-group--before-reveal{margin-bottom:1.5rem}.form-group-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2.25rem}.form-group-row .form-group{margin-bottom:0}.form-reveal .form-group{margin-bottom:1.25rem}.form-reveal .form-group:last-child{margin-bottom:2.25rem}@media(max-width:768px){.form-group-row{grid-template-columns:1fr}}.form-label{display:block;font-size:.9375rem;font-weight:500;color:var(--color-ink);margin-bottom:.375rem}.form-label .required{color:#c54516}.form-label--follow{margin-top:1.25rem}.form-hint{font-size:.8125rem;color:var(--color-ink-muted);margin-bottom:.5rem;line-height:1.4}.form-input,.form-textarea{width:100%;padding:.5rem .75rem;font-size:1rem;font-family:inherit;color:var(--color-ink);background:#fff;border:1px solid var(--color-paper-dark);border-radius:4px}.form-input::placeholder,.form-textarea::placeholder{color:#c4bdb4}.form-input--invalid,.form-textarea--invalid{border-color:#b91c1c}.form-input--invalid:focus,.form-textarea--invalid:focus{border-color:#b91c1c;box-shadow:0 0 0 2px #b91c1c33}.form-field-error{font-size:.8125rem;color:#b91c1c;margin:.25rem 0 0}.form-input:focus,.form-textarea:focus{outline:none;border-color:#617066;box-shadow:0 0 0 2px #61706633}.form-textarea{min-height:6rem;resize:vertical}.form-reveal{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .25s ease,margin-top .25s ease}.form-reveal--open{max-height:24rem;opacity:1;margin-top:1.5rem}.form-reveal--design.form-reveal--open{max-height:70rem;margin-top:1.5rem}.form-dropzone{margin-top:.75rem;padding:2rem 1.25rem;min-height:10rem;border:2px dashed var(--color-paper-dark);border-radius:4px;background:var(--color-paper);cursor:pointer;transition:border-color .2s ease,background .2s ease;display:flex;align-items:center;justify-content:center}.form-dropzone:hover,.form-dropzone--dragover{border-color:#617066;background:#6170660f}.form-dropzone-input{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.form-dropzone-text{display:block;font-size:.9375rem;color:var(--color-ink-muted);text-align:center}.form-dropzone--compact{margin-top:.5rem}.form-dropzone--at-max{cursor:default}.form-dropzone--at-max:hover{border-color:var(--color-paper-dark);background:var(--color-paper)}.form-input+.form-file-upload,.form-textarea+.form-file-upload{margin-top:.75rem}.form-file-upload .form-field-error{margin-top:.35rem}.form-file-upload>.form-file-preview-grid{list-style:none;margin:0 0 .5rem;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));gap:.5rem;width:100%}.form-file-preview-item{position:relative;aspect-ratio:1;border-radius:4px;overflow:hidden;border:1px solid var(--color-paper-dark);background:#fff}.form-file-preview-item img{width:100%;height:100%;object-fit:cover;display:block}.form-file-preview-remove{position:absolute;top:.2rem;right:.2rem;display:flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;padding:0;border:none;border-radius:999px;background:#f7f3e9eb;color:var(--color-ink);cursor:pointer;box-shadow:0 1px 3px #0000001f}.form-file-preview-remove:hover{background:#fff;color:#c54516}.form-radio-group,.form-checkbox-group{display:flex;flex-direction:column;gap:.5rem}.form-radio-group label,.form-checkbox-group label{display:flex;align-items:center;gap:.5rem;font-size:1rem;cursor:pointer}.form-radio-group input,.form-checkbox-group input{width:1.125rem;height:1.125rem;accent-color:var(--color-accent)}.availability-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem 2rem;margin-top:1.25rem;margin-bottom:.75rem;max-width:100%}.availability-day-title{margin:0 0 .875rem;padding-left:1.75rem;font-size:.875rem;font-weight:600;line-height:1.3;text-align:left;text-transform:capitalize;color:var(--color-ink-muted)}.availability-day-slots{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.875rem}.availability-slot-option{display:flex;align-items:flex-start;gap:.625rem;cursor:pointer;font-size:.875rem}.availability-slot-option input{width:1.125rem;height:1.125rem;margin-top:.15rem;flex-shrink:0;accent-color:var(--color-accent)}.availability-slot-option-text{display:flex;flex-direction:column;gap:.2rem;line-height:1.4;padding-top:.05rem}.availability-slot-name{font-weight:500;color:var(--color-ink)}.availability-slot-time{font-size:.8125rem;font-weight:400;color:var(--color-ink-muted)}@media(max-width:768px){.availability-picker{grid-template-columns:1fr;gap:0;margin-top:1rem}.availability-day-title{text-align:left;margin-bottom:1rem}.availability-day-slots{gap:1rem}.availability-day{padding:1.5rem 0}.availability-day:first-child{padding-top:.25rem}.availability-day:last-child{padding-bottom:.25rem}.availability-day+.availability-day{border-top:1px solid var(--color-paper-dark)}}.btn-secondary{background:transparent;color:var(--color-ink-muted);font-size:.9375rem;padding:.5rem 0;border:none;cursor:pointer;text-decoration:underline}.btn-secondary:hover{color:var(--color-ink)}.booking-form-card{background:#faf8f5;background:var(--color-form-card-bg);border-radius:.5rem;padding:1.5rem 2.5rem;border:1px solid var(--color-paper-dark)}@media(max-width:768px){.booking-form-card{padding:1rem 1.25rem}}.booking-form-card--react{padding:1.25rem 2rem 1.5rem;width:100%;background:#fff;position:relative;z-index:2;scroll-margin-top:6rem}@media(max-width:768px){.page.booking-page{padding-top:1.25rem}.booking-page-intro{margin-bottom:1rem}.booking-info{margin-bottom:.75rem}.booking-form-card--react{padding:1rem 1.25rem 1.25rem}}.page.confirmation-page{max-width:42rem;margin:0 auto}.confirmation-card{text-align:center}.confirmation-title{font-family:var(--font-serif);font-size:1.5rem;font-weight:700;line-height:1.2;margin:0 0 1rem;color:var(--color-ink)}.confirmation-message{font-size:1rem;line-height:1.5;color:var(--color-ink);margin:0 0 1rem}.confirmation-message a{color:#c54516}.confirmation-message--signoff{margin-top:-.5rem;margin-bottom:1rem;color:var(--color-ink)}.confirmation-message--note{margin-bottom:2rem}.confirmation-card .btn-primary{margin-top:.25rem}.booking-form-wizard{position:relative;font-family:var(--font-sans)}.booking-form-wizard .form-step-content{min-height:12rem}.booking-form-wizard .form-label{font-family:var(--font-sans);font-size:.875rem;font-weight:600;line-height:1.35;letter-spacing:.01em;color:var(--color-ink);margin-bottom:.375rem}.booking-form-wizard .form-hint{font-size:.8125rem;font-weight:400;line-height:1.45;color:var(--color-ink-muted);margin-bottom:.5rem}.booking-form-wizard .form-input,.booking-form-wizard .form-textarea{font-family:var(--font-sans);font-size:.9375rem;font-weight:400;line-height:1.45}.booking-form-wizard .form-radio-group label,.booking-form-wizard .form-checkbox-group label{font-size:.9375rem;font-weight:400;line-height:1.45}.booking-form-wizard .form-dropzone-text{font-size:.8125rem;font-weight:400;line-height:1.45}.booking-form-wizard .availability-day-title{font-size:.875rem;font-weight:600;color:var(--color-ink)}.booking-form-wizard .availability-slot-option{font-size:.9375rem}.booking-form-wizard .availability-slot-name{font-weight:500}.booking-form-wizard .availability-slot-time{font-size:.75rem;font-weight:400}.booking-form-wizard .booking-newsletter-opt-inner{border:1px solid var(--color-paper-dark);border-radius:.375rem;padding:1rem 1.125rem;background:var(--color-paper)}.booking-form-wizard .booking-newsletter-opt-title{font-family:var(--font-sans);font-size:.875rem;font-weight:600;color:var(--color-ink);margin:0 0 .375rem;line-height:1.35;letter-spacing:.01em}.booking-form-wizard .booking-newsletter-opt-desc{font-size:.8125rem;font-weight:400;line-height:1.45;color:var(--color-ink-muted);margin:0 0 .875rem}.booking-form-wizard .booking-newsletter-opt-row{display:flex;align-items:flex-start;gap:.625rem;margin:0;cursor:pointer;font-size:.9375rem;font-weight:400;line-height:1.45;color:var(--color-ink)}.booking-form-wizard .booking-newsletter-opt-checkbox{width:1.125rem;height:1.125rem;margin-top:.125rem;flex-shrink:0;accent-color:var(--color-accent)}.booking-form-wizard .form-stepper{display:flex;align-items:flex-start;padding-bottom:2.75rem;margin-bottom:1.5rem}.booking-form-wizard .form-stepper-item{position:relative;display:flex;flex-direction:column;align-items:center;flex-shrink:0}.booking-form-wizard .form-stepper-circle{width:2rem;height:2rem;border-radius:50%;border:2px solid var(--color-paper-dark);display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:.75rem;font-weight:600;color:var(--color-ink-muted);background:#fff;transition:background .2s ease,border-color .2s ease,color .2s ease}.booking-form-wizard .form-stepper-item.is-done .form-stepper-circle{background:#617066;border-color:#617066;color:#fff}.booking-form-wizard .form-stepper-item.is-current .form-stepper-circle{border-color:#617066;border-width:2px;color:#617066;background:#fff}.booking-form-wizard .form-stepper-label{position:absolute;top:2.5rem;left:50%;transform:translate(-50%);font-family:var(--font-sans);font-size:.6875rem;font-weight:500;color:var(--color-ink-muted);text-align:center;white-space:nowrap;letter-spacing:.02em}.booking-form-wizard .form-stepper-item.is-done .form-stepper-label,.booking-form-wizard .form-stepper-item.is-current .form-stepper-label{color:#617066}.booking-form-wizard .form-stepper-connector{flex:1;height:2px;background:var(--color-paper-dark);margin-top:1rem;align-self:flex-start;transition:background .2s ease}.booking-form-wizard .form-stepper-connector.is-done{background:#617066}@media(max-width:768px){.booking-form-wizard .form-stepper{padding-bottom:4.75rem;margin-bottom:1rem;overflow:visible}.booking-form-wizard .form-stepper-label{white-space:normal;max-width:4.5rem;text-align:center;line-height:1.2}.booking-form-wizard .form-stepper-item:first-child .form-stepper-label{left:0;transform:none;text-align:left;white-space:nowrap;max-width:none}.booking-form-wizard .form-stepper-item:last-child .form-stepper-label{left:auto;right:0;transform:none;text-align:right;white-space:nowrap;max-width:none}}@media(max-width:1024px){.booking-form-wizard .form-stepper{padding-bottom:4.25rem}}.booking-request-summary{font-family:var(--font-sans);background:#fff;border:1px solid var(--color-paper-dark);border-radius:.5rem;padding:1.25rem 1.5rem;margin-bottom:2rem}.booking-request-summary-title{font-family:var(--font-sans);font-size:1.125rem;font-weight:700;line-height:1.3;color:var(--color-ink);margin:0}.booking-request-summary-lead{margin:.35rem 0 1.25rem;font-size:.875rem;line-height:1.45;color:var(--color-ink-muted)}.booking-request-summary-section{padding-top:1rem;margin-top:1rem;border-top:1px solid rgba(97,112,102,.25)}.booking-request-summary-section-title{margin:0 0 .75rem;font-family:var(--font-sans);font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#617066}.booking-request-summary-list{margin:0;display:flex;flex-direction:column;gap:.65rem}.booking-request-summary-row{display:grid;grid-template-columns:6.75rem 1fr;gap:.35rem 1rem;align-items:start}.booking-request-summary-row dt{margin:0;padding-top:.1rem;font-family:var(--font-sans);font-size:.75rem;font-weight:600;color:var(--color-ink-muted)}.booking-request-summary-row dd{margin:0;font-family:var(--font-sans);font-size:.9375rem;line-height:1.45;color:var(--color-ink);overflow-wrap:anywhere}.booking-request-summary-detail{display:block;margin-top:.35rem;font-size:.8125rem;line-height:1.45;color:var(--color-ink-muted)}.booking-request-summary-badge{display:inline-block;padding:.15rem .55rem;font-size:.8125rem;font-weight:600;color:var(--color-ink);background:#fff;border:1px solid var(--color-paper-dark);border-radius:999px}.booking-request-summary-stack{display:flex;flex-direction:column;gap:.25rem}.booking-request-summary-warn{color:#c54516;font-size:.875rem}.booking-request-summary-link{color:#c54516;font-size:.875rem;word-break:break-all}.booking-request-summary-link:hover{text-decoration:underline}.booking-request-summary-image-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));gap:.5rem;max-width:20rem}.booking-request-summary-image-item{aspect-ratio:1;border-radius:4px;overflow:hidden;border:1px solid var(--color-paper-dark);background:var(--color-paper)}.booking-request-summary-image-item img{width:100%;height:100%;object-fit:cover;display:block}@media(max-width:768px){.booking-request-summary{padding:1rem 1.15rem}.booking-request-summary-row{grid-template-columns:1fr;gap:.15rem}.booking-request-summary-row dt{margin-top:.35rem}.booking-request-summary-list>.booking-request-summary-row:first-child dt{margin-top:0}}.form-step-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-paper-dark)}.form-step-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.form-submit-error{margin:.75rem 0 0;font-size:.875rem;line-height:1.45;color:#b91c1c}.form-step-actions-right{display:flex;align-items:center;gap:1rem;margin-left:auto}@media(max-width:768px){.form-step-actions{flex-direction:column-reverse;align-items:stretch}.form-step-actions-right{margin-left:0}.form-step-actions-right .btn-primary{width:100%;text-align:center}}.booking-info{font-size:1rem;line-height:1.5;color:var(--color-ink);margin-bottom:1.25rem}.booking-info p{margin-bottom:1rem}.booking-info p:last-child{margin-bottom:0}.booking-info a{color:#c54516;text-decoration:underline}.booking-info a:hover{text-decoration:none}.designs-overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;align-items:center;padding:5rem 2rem 2rem;background:radial-gradient(circle at 0 0,rgba(255,255,255,.05) 0,transparent 50%),radial-gradient(circle at 100% 0,rgba(255,255,255,.04) 0,transparent 55%),radial-gradient(circle at 0 100%,rgba(26,43,32,.22) 0,transparent 55%),#617066d1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:designs-overlay-fade-in .25s ease}.designs-overlay-close{position:absolute;top:1rem;right:1rem;z-index:1;width:2.5rem;height:2.5rem;padding:0;border:none;background:#00000073;color:#fffffff2;font-size:1.75rem;line-height:1;cursor:pointer;border-radius:.25rem;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #00000040;transition:background .15s ease,color .15s ease}.designs-overlay-close:hover{background:#000000a6;color:#fff}@media(max-width:768px){.designs-overlay-backdrop{padding:5rem 1rem 1rem}}@keyframes designs-overlay-fade-in{0%{opacity:0}to{opacity:1}}@keyframes designs-overlay-card-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.flashes-intro-section{max-width:88rem}.flashes-intro-section .page-heading,.flashes-intro-section .flashes-intro{max-width:40rem}.flashes-intro-section .page-heading{margin-bottom:.75rem}.flashes-page{max-width:88rem;padding-top:0;margin-top:.5rem}.flashes-intro{margin:0 0 2.25rem;font-size:1rem;line-height:1.5;color:var(--color-ink)}.flashes-intro-repeat-icon{display:inline-flex;vertical-align:-.15em;margin:0 .1em;color:var(--color-tarot-frame)}.flashes-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5rem .75rem;justify-items:center}@media(max-width:1200px){.flashes-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:1024px){.flashes-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.flashes-grid{grid-template-columns:repeat(2,1fr)}}.flashes-card{position:relative;display:flex;justify-content:center;width:100%;max-width:16rem;cursor:pointer}.flashes-card .tarot-card{max-width:16rem}.flashes-card-claimed .tarot-card-content img,.tarot-card-with-variants.is-claimed .tarot-card-content img{opacity:.5}.flashes-claimed-badge{position:absolute;top:45%;left:50%;transform:translate(-50%,-50%) rotate(-12deg);z-index:2;padding:.35rem 1.1rem;font-family:var(--font-sans);font-size:1.05rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#c54516;background-color:#f7f3e9b3;border:3px solid #c54516;border-radius:4px;pointer-events:none}.tarot-card-with-variants{position:relative;width:100%;max-width:16rem}.tarot-card-variant-btn{display:flex;align-items:center;justify-content:center;width:auto;height:auto;padding:4px;background:transparent;border:none;color:var(--color-tarot-frame);cursor:pointer;transition:color .2s ease}.tarot-card-variant-btn:hover{color:var(--color-ink)}.tarot-card-variant-btn:focus-visible{outline:2px solid var(--color-tarot-frame);outline-offset:2px}.tarot-card{container-type:inline-size;position:relative;display:flex;flex-direction:column;width:100%;max-width:14rem;aspect-ratio:3 / 5;background:var(--color-card-beige-dark);border:1px solid var(--color-tarot-frame);border-radius:.5rem;padding:5.5%;box-shadow:0 2px 8px #00000014;overflow:hidden}.tarot-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");opacity:1;mix-blend-mode:overlay;pointer-events:none}.tarot-card-inner{flex:1;display:flex;flex-direction:column;min-height:0;border:1px solid var(--color-tarot-frame);border-radius:.35rem;background:var(--color-card-beige);overflow:hidden;position:relative;z-index:1}.tarot-card-strip{flex-shrink:0;background:var(--color-card-beige);border-color:var(--color-tarot-frame)}.tarot-card-strip-bottom{min-height:14cqi;border-top:1px solid var(--color-tarot-frame);display:flex;align-items:center;justify-content:center}.tarot-card-repeatable-wrap{position:absolute;top:.35rem;right:.35rem;z-index:4;display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;max-width:calc(100% - .7rem);pointer-events:none}.tarot-card-repeatable-wrap>*{pointer-events:auto}.tarot-card-repeatable-info{display:flex;align-items:center;justify-content:center;width:auto;height:auto;padding:4px;background:transparent;border:none;color:var(--color-tarot-frame);cursor:pointer;transition:color .2s ease}.tarot-card-repeatable-info:hover,.tarot-card-repeatable-info.is-open{color:var(--color-ink)}.tarot-card-repeatable-info:focus-visible{outline:2px solid var(--color-tarot-frame);outline-offset:2px}.tarot-card-repeatable-popover{width:max-content;max-width:100%;padding:.35rem .5rem;font-family:var(--font-sans);font-size:.6875rem;font-weight:400;line-height:1.3;text-align:left;white-space:nowrap;color:var(--color-ink);background:#fff;border:1px solid var(--color-paper-dark);border-radius:.2rem;box-shadow:0 1px 4px #00000014}.tarot-card-numeral{font-family:var(--font-display);font-size:5.6cqi;color:var(--color-tarot-frame);font-variant-numeric:tabular-nums}.tarot-card-content{flex:1;position:relative;min-height:0;padding:0}.tarot-card-content:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;border-radius:.25rem;background:linear-gradient(185deg,#fbfaf738,#4a423924 55%,#2c28222e)}.tarot-card-content img{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;display:block}.map-card-embed{width:100%;height:280px;border-radius:8px;overflow:hidden}.map-card-embed iframe{display:block}@media(max-width:768px){.map-card-embed{height:250px}}.announcements-bar{background-color:#617066;color:#fff;font-family:var(--font-serif);font-size:18px;letter-spacing:.01em;overflow:hidden;padding:.55rem 0;white-space:nowrap}@media(max-width:768px){.announcements-bar{font-size:.8125rem;padding:.55rem 0}}.announcements-bar-live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.announcements-bar-track{display:inline-block;white-space:nowrap;animation:announcements-scroll 360s linear infinite}.announcements-bar-segment{display:inline}.announcements-bar-text{margin:0;font-family:var(--font-serif);font-style:normal;line-height:1.35}.announcements-bar-sep{display:inline;margin:0 1.25rem;font-size:.65em}@keyframes announcements-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.announcements-bar-track{animation:none}}.not-found-message{font-size:1rem;line-height:1.5;color:var(--color-ink);margin:0 0 1rem}.site-footer{--footer-bg: #b4462a;--footer-text: #f7f2e8;--footer-label: #f5e8de;--r: 7px;position:relative;z-index:2;width:100%;margin-top:120px;padding-top:calc(2 * var(--r));background:var(--footer-bg);color:var(--footer-text);font-family:var(--font-sans);pointer-events:auto;-webkit-mask:radial-gradient(var(--r) at var(--r) var(--r),#0000 97%,#000) calc(-1 * var(--r)) calc(-1 * var(--r)) / calc(3 * var(--r)) calc(3 * var(--r)) round,linear-gradient(#000 0 0) 0 calc(2 * var(--r)) / 100% 100% no-repeat;mask:radial-gradient(var(--r) at var(--r) var(--r),#0000 97%,#000) calc(-1 * var(--r)) calc(-1 * var(--r)) / calc(3 * var(--r)) calc(3 * var(--r)) round,linear-gradient(#000 0 0) 0 calc(2 * var(--r)) / 100% 100% no-repeat}.site-footer a{color:var(--footer-text);text-decoration:none}.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}.site-footer__inner{max-width:73.75rem;margin:0 auto;padding:4rem 2rem 1.75rem}.site-footer__cols{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:2.5rem;text-align:left}.site-footer__logo{display:inline-block;font-family:var(--font-serif);font-size:3.5rem;line-height:1;color:var(--footer-text)}.site-footer__logo:hover{text-decoration:none;opacity:.92}.site-footer__label{margin:0 0 .875rem;font-size:.6875rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--footer-label)}.site-footer__label--spaced{margin-top:1.5rem;margin-bottom:.5rem}.site-footer__write{display:flex;flex-direction:column;align-items:flex-start}.site-footer__write .site-footer__label{margin-bottom:.5rem}.site-footer__write .site-footer__label--spaced{margin-top:1.5rem;margin-bottom:.5rem}.site-footer__social{display:block;margin:0;font-size:.9375rem;line-height:1.55}.site-footer__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;font-size:.9375rem}.site-footer p{margin:0 0 .5rem;font-size:.9375rem;line-height:1.55}.site-footer__small-link{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px}.site-footer__email{display:block;margin:0;font-family:var(--font-serif);font-weight:400;font-size:1.0625rem;line-height:1.3}.site-footer__bottom{margin-top:3rem;padding-top:1.125rem;border-top:1px dashed rgba(247,242,232,.55);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;font-size:.8125rem}@media(max-width:860px){.site-footer{margin-top:64px}.site-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__brand{grid-column:1 / -1}}@media(max-width:520px){.site-footer__inner{padding-inline:1.25rem}.site-footer__cols{grid-template-columns:minmax(0,1fr)}}.deck-lab-page{display:flex;flex-direction:column;align-items:stretch;min-height:calc(100vh - 5.5rem);max-width:none;padding:2.75rem 1rem 0;box-sizing:border-box;overflow:clip}.deck-lab-hero{flex:1;display:flex;flex-direction:column;align-items:center;gap:5.5rem;width:100%;max-width:84rem;margin:0 auto;min-height:calc(100vh - 8rem);justify-content:center}.deck-lab-intro{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:2.75rem;max-width:52rem;width:100%;padding-block:2.5rem}.deck-lab-video-frame{width:13rem;height:18.25rem;flex-shrink:0;overflow:hidden;border-radius:6.5rem 6.5rem 0 0}.deck-lab-video{width:100%;height:100%;object-fit:cover;object-position:center 18%;display:block}.deck-lab-intro-copy{max-width:28rem;text-align:left}.deck-lab-intro-heading{margin:0 0 .9rem;font-family:var(--font-serif);font-size:40px;font-weight:400;line-height:1.05;color:var(--color-ink)}.deck-lab-intro-heading span{font-size:.62em;font-style:italic;color:#c54516}.deck-lab-intro-aka{max-width:16rem;margin:0 0 .85rem;font-size:1.05rem;line-height:1.5;color:var(--color-ink)}.deck-lab-intro-name{font-family:var(--font-serif);font-style:italic;font-size:1.2rem;line-height:1}.deck-lab-gallery{display:flex;flex-direction:column;align-items:center;min-width:0;width:100%}.deck-lab-heading{--ornament-star: 1.05rem;--ornament-gap: .85rem;display:flex;align-items:center;justify-content:center;gap:.95rem;width:100%;margin:0 0 1.75rem;padding-inline:.25rem;text-align:center}.deck-lab-heading:before,.deck-lab-heading:after{content:"";flex:1 0 calc(var(--ornament-star) + var(--ornament-gap) + 1.5rem);height:var(--ornament-star);background-repeat:no-repeat;background-image:linear-gradient(var(--color-ink),var(--color-ink)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231a1a1a' d='M12 0 15.1 8.9 24 12 15.1 15.1 12 24 8.9 15.1 0 12 8.9 8.9Z'/%3E%3C/svg%3E")}.deck-lab-heading:before{background-size:calc(100% - var(--ornament-star) - var(--ornament-gap)) 1px,var(--ornament-star) var(--ornament-star);background-position:left center,right center}.deck-lab-heading:after{background-size:calc(100% - var(--ornament-star) - var(--ornament-gap)) 1px,var(--ornament-star) var(--ornament-star);background-position:right center,left center}.deck-lab-title{flex:0 1 auto;min-width:0;margin:0;font-family:var(--font-serif);font-size:40px;font-weight:400;line-height:1.08;color:var(--color-ink)}.deck-lab-title span{font-style:italic;color:#c54516}.deck-lab-stage{position:relative;width:100vw;margin-left:calc(50% - 50vw);height:38rem;overflow:visible;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}.deck-lab-stage.is-dragging,.deck-lab-stage.is-dragging .deck-lab-card{cursor:grabbing}.deck-lab-arc{position:absolute;top:0;right:0;bottom:0;left:0}.deck-lab-card{position:absolute;top:36%;left:50%;width:min(13.5rem,30vw);transform-origin:center center;will-change:transform,opacity;pointer-events:auto;cursor:pointer}.deck-lab-card .tarot-card{max-width:none;width:100%;box-shadow:0 8px 24px #00000024;transition:transform .28s ease,box-shadow .28s ease}.deck-lab-card.is-hovered .tarot-card{transform:translateY(-.55rem) scale(1.03)}.deck-lab-card-overlay{display:flex;align-items:center;justify-content:center;padding:2rem;background:#ffffffb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.deck-lab-card-overlay-card{width:min(22rem,calc(100vw - 3rem));animation:designs-overlay-card-in .35s ease backwards}.deck-lab-card-overlay-card .tarot-card{max-width:none;width:100%;box-shadow:0 16px 48px #00000047}.deck-lab-card-overlay-card .tarot-card-with-variants{max-width:none;width:100%}@media(max-width:768px){.deck-lab-intro{flex-direction:column;gap:1.5rem;max-width:24rem}.deck-lab-intro-heading{font-size:2.15rem}.deck-lab-heading{--ornament-star: .8rem;--ornament-gap: .55rem;gap:.65rem;max-width:100%}.deck-lab-heading:before,.deck-lab-heading:after{flex-basis:calc(var(--ornament-star) + var(--ornament-gap) + 2.4rem)}.deck-lab-title{max-width:18rem;font-size:1.65rem}.deck-lab-title-break{display:none}.deck-lab-page{min-height:calc(100vh - 4rem);padding:2rem .75rem 0}.deck-lab-stage{height:26rem}.deck-lab-card{width:min(11rem,58vw);top:38%}}
