/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--leading-tight:1.25;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.5rem;--radius-xl:.75rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-paper:#0b0b0c;--color-paper-warm:#141416;--color-ink:#f5f5f4;--color-ink-soft:#d6d3d1;--color-mute:#a8a29e;--color-rule:#2a2a2e;--color-accent:#edb14e;--color-cream:#1a1814;--color-error:#e85d4c;--font-display:Cormorant Garamond;--font-body:DM Sans;--spacing-2xs:.25rem;--spacing-xs:.5rem;--spacing-sm:.75rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--spacing-4xl:6rem;--container-prose:42rem}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6;overflow-x:clip}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);margin:0;line-height:1.15}p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}input,textarea,select{font:inherit}img{max-width:100%;height:auto;display:block}ul,ol{margin:0;padding:0;list-style:none}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-full{top:100%}.right-0{right:0}.left-0{left:0}.z-40{z-index:40}.container-reading{max-width:var(--container-prose);margin-inline:auto}.mx-auto{margin-inline:auto}.mt-sm{margin-top:var(--spacing-sm)}.mt-xl{margin-top:var(--spacing-xl)}.mb-3xl{margin-bottom:var(--spacing-3xl)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-md{margin-bottom:var(--spacing-md)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-xl{margin-bottom:var(--spacing-xl)}.ml-0{margin-left:0}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.h-16{height:calc(var(--spacing) * 16)}.h-64{height:calc(var(--spacing) * 64)}.w-16{width:calc(var(--spacing) * 16)}.w-full{width:100%}.max-w-4xl{max-width:var(--spacing-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[42rem\]{max-width:42rem}.max-w-prose{max-width:65ch}.shrink-0{flex-shrink:0}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2xl{gap:var(--spacing-2xl)}.gap-3xl{gap:var(--spacing-3xl)}.gap-lg{gap:var(--spacing-lg)}.gap-md{gap:var(--spacing-md)}.gap-sm{gap:var(--spacing-sm)}.gap-xl{gap:var(--spacing-xl)}.gap-xs{gap:var(--spacing-xs)}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-sm{border-radius:var(--radius-sm)}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-rule{border-color:var(--color-rule)}.bg-paper{background-color:var(--color-paper)}.object-cover{object-fit:cover}.px-lg{padding-inline:var(--spacing-lg)}.px-xl{padding-inline:var(--spacing-xl)}.py-3xl{padding-block:var(--spacing-3xl)}.py-4xl{padding-block:var(--spacing-4xl)}.py-md{padding-block:var(--spacing-md)}.py-sm{padding-block:var(--spacing-sm)}.pt-2xl{padding-top:var(--spacing-2xl)}.pr-xl{padding-right:var(--spacing-xl)}.pb-lg{padding-bottom:var(--spacing-lg)}.pb-xl{padding-bottom:var(--spacing-xl)}.text-center{text-align:center}.font-display{font-family:var(--font-display)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-pre-line{white-space:pre-line}.text-accent{color:var(--color-accent)}.text-ink{color:var(--color-ink)}.text-ink-soft{color:var(--color-ink-soft)}.text-mute{color:var(--color-mute)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.\[home\:bookings\]{home:bookings}.group-open\:rotate-45:is(:where(.group):is([open],:popover-open,:open) *){rotate:45deg}.peer-checked\:flex:is(:where(.peer):checked~*){display:flex}@media(hover:hover){.hover\:text-ink:hover{color:var(--color-ink)}}@media(min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:48rem){.md\:static{position:static}.md\:flex{display:flex}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-end{align-items:flex-end}.md\:items-start{align-items:flex-start}.md\:justify-between{justify-content:space-between}.md\:gap-lg{gap:var(--spacing-lg)}.md\:border-0{border-style:var(--tw-border-style);border-width:0}.md\:bg-transparent{background-color:#0000}.md\:px-0{padding-inline:0}.md\:py-0{padding-block:0}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(min-width:64rem){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}}.btn-primary{border-radius:var(--radius-md);padding-inline:var(--spacing-lg);padding-block:var(--spacing-md);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);background:var(--color-ink);color:var(--color-paper);justify-content:center;align-items:center;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.btn-primary:hover:not(:disabled){background:var(--color-accent)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{border-radius:var(--radius-md);padding-inline:var(--spacing-lg);padding-block:var(--spacing-md);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--color-ink);border:1px solid var(--color-rule);background:0 0;justify-content:center;align-items:center;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.btn-secondary:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{border-radius:var(--radius-md);padding-inline:var(--spacing-lg);padding-block:var(--spacing-md);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--color-ink);background:0 0;justify-content:center;align-items:center;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.btn-ghost:hover:not(:disabled){background:var(--color-paper-warm)}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}[data-decorative-slot]{position:relative;overflow:hidden}[data-decorative-slot]>img{object-fit:cover;width:100%;height:100%}.editorial-rule{background:var(--color-accent);opacity:.6;height:1px;margin-block:var(--spacing-lg);border:0}.site-nav{z-index:50;background:#0b0b0ce0;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.site-nav{background:color-mix(in srgb,var(--color-paper) 88%,transparent)}}.site-nav{-webkit-backdrop-filter:saturate(1.1)blur(8px);border-bottom:1px solid var(--color-rule)}.site-logo{align-items:center;line-height:0;display:inline-flex}.site-logo-img{object-fit:contain;object-position:left center;width:auto;max-width:11rem;height:2.5rem;display:block}.site-logo-img--footer{max-width:14rem;height:4.5rem}.site-logo-img--hero{max-width:16rem;height:5rem}@media(min-width:768px){.site-logo-img{max-width:12rem;height:2.75rem}.site-logo-img--hero{height:5.5rem}}.nav-burger{width:2.75rem;height:2.75rem;margin:calc(-1 * var(--spacing-xs));cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:var(--radius-sm);flex-direction:column;justify-content:center;align-items:center;gap:5px;display:none}@media(max-width:767px){.nav-burger{display:inline-flex}}.nav-burger-line{background:var(--color-ink);border-radius:1px;width:1.25rem;height:2px;display:block}.site-nav-link{min-height:2.75rem;padding-block:var(--spacing-xs);align-items:center;font-size:1rem;display:flex}@media(min-width:768px){.site-nav-link{min-height:0;font-size:inherit;padding-block:0}}.site-nav-panel{-webkit-overflow-scrolling:touch;max-height:min(80dvh,28rem);overflow-y:auto}@media(min-width:768px){.site-nav-panel{max-height:none;overflow:visible}}.nav-actions{display:flex}.site-nav-book{white-space:nowrap;min-height:2.25rem;padding:.4rem .95rem;font-size:.875rem}@media(max-width:767px){.nav-actions,.site-nav-book{width:100%}}.site-footer{border-top:1px solid var(--color-rule);background:var(--color-paper-warm);color:var(--color-mute)}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}.nav-progress{background:var(--color-accent,currentColor);transform-origin:0;z-index:1000;pointer-events:none;opacity:0;height:2px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.nav-progress[data-state=loading]{opacity:1;transition:transform 1.6s cubic-bezier(.2,.8,.2,1),opacity .12s;transform:scaleX(.85)}.nav-progress[data-state=done]{opacity:0;transition:transform .2s,opacity .24s 60ms;transform:scaleX(1)}body[data-navigating=true] .product-grid{opacity:.55;pointer-events:none;transition:opacity .14s}.product-grid{transition:opacity .2s}.site-nav-item.has-submenu{position:relative}.site-nav-submenu{gap:var(--spacing-2xs);min-width:12rem;padding:var(--spacing-sm);background:var(--color-paper);border:1px solid var(--color-rule);border-radius:var(--radius-md);opacity:0;visibility:hidden;flex-direction:column;transition:opacity .16s,transform .16s,visibility .16s;display:flex;position:absolute;top:100%;left:0;transform:translateY(4px)}.site-nav-item.has-submenu:hover .site-nav-submenu,.site-nav-item.has-submenu:focus-within .site-nav-submenu{opacity:1;visibility:visible;transform:translateY(0)}.site-nav-sublink{color:var(--color-ink-soft,var(--color-mute));padding-block:var(--spacing-2xs);font-size:.875rem}.site-nav-sublink:hover,.site-nav-sublink[aria-current=page]{color:var(--color-accent)}.category-rail{background:var(--color-paper-warm);border-bottom:1px solid var(--color-rule)}.category-rail-inner{gap:var(--spacing-sm);padding-block:var(--spacing-md);flex-wrap:wrap;display:flex}.category-pill{padding:var(--spacing-2xs) var(--spacing-md);border:1px solid var(--color-rule);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-soft,var(--color-ink));align-items:center;font-size:.8125rem;transition:border-color .16s,color .16s,background-color .16s;display:inline-flex}.category-pill:hover{border-color:var(--color-accent);color:var(--color-accent)}.category-pill[aria-current=page]{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.pagination{margin-block:var(--spacing-xl)}.pagination-inner{justify-content:space-between;gap:var(--spacing-md);display:flex}.pagination-link{color:var(--color-ink)}.pagination-link:hover{color:var(--color-accent)}.pagination-link.is-disabled{opacity:.4;pointer-events:none}.breadcrumbs{color:var(--color-mute);margin-bottom:var(--spacing-sm);font-size:.8125rem}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.service-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:var(--spacing-xl);transition:opacity .2s ease}body[data-navigating=true] .service-grid{opacity:.55;pointer-events:none}.service-card{position:relative;display:flex;flex-direction:column;background:var(--color-paper, var(--color-cream));border-radius:var(--radius-xl);overflow:hidden;text-decoration:none;color:inherit;transition:transform .28s ease,box-shadow .28s ease;box-shadow:var(--shadow-card, 0 4px 16px -8px rgba(0, 0, 0, .15))}.service-card:hover{transform:translateY(-4px)}.service-card:hover .service-card-image img{transform:scale(1.04)}.service-card-image{aspect-ratio:3 / 2;overflow:hidden;background:var(--color-paper-warm, var(--color-surface-secondary, var(--color-cream)))}.service-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.service-card-meta{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-md) var(--spacing-lg);flex:1}.service-card-name{margin:0;font-family:var(--font-display);font-size:1.125rem;line-height:1.25;color:var(--color-ink)}.service-card-tagline{margin:0;font-family:var(--font-body);font-size:.875rem;color:var(--color-ink-soft, var(--color-mute));line-height:1.45}.service-card-price{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:auto;padding-top:var(--spacing-sm);font-family:var(--font-body);font-size:.875rem;color:var(--color-mute)}.availability-calendar{display:flex;flex-direction:column;gap:var(--spacing-lg)}.availability-date-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-rule)}.availability-date-label{font-family:var(--font-display);font-size:1rem;color:var(--color-ink);flex:1;text-align:center}.availability-nav-btn{padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--color-rule);border-radius:var(--radius-sm);color:var(--color-ink);font-family:var(--font-body);font-size:.875rem;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.availability-nav-btn:hover:not(:disabled){background:var(--color-paper-warm, var(--color-cream));border-color:var(--color-ink)}.availability-nav-btn:disabled{opacity:.35;cursor:not-allowed}.availability-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--spacing-sm)}.availability-loading,.availability-empty,.availability-error{font-family:var(--font-body);font-size:.9375rem;color:var(--color-ink-soft, var(--color-mute));padding:var(--spacing-lg) 0;text-align:center}.availability-error{color:var(--color-error, var(--color-accent))}.time-slot{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper, var(--color-cream));color:var(--color-ink);font-family:var(--font-body);font-size:.875rem;text-align:center;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.time-slot--available{border-color:var(--color-ink)}.time-slot--available:hover{background:var(--color-ink);color:var(--color-paper)}.time-slot--selected{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink);font-weight:600}.time-slot--unavailable{opacity:.3;cursor:not-allowed;border-color:var(--color-rule)}.booking-form{display:flex;flex-direction:column;gap:var(--spacing-lg);padding:var(--spacing-xl);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-warm, var(--color-paper, var(--color-cream)))}@media(max-width:480px){.booking-form{padding:var(--spacing-md)}}.availability-nav-btn,.time-slot{min-height:2.75rem}.booking-form-header{display:flex;flex-direction:column;gap:var(--spacing-xs)}.booking-form-title{font-family:var(--font-display);font-size:1.25rem;color:var(--color-ink);margin:0}.booking-form-subtitle{font-family:var(--font-body);font-size:.875rem;color:var(--color-ink-soft, var(--color-mute));margin:0}.booking-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.booking-field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}@media(max-width:480px){.booking-field-row{grid-template-columns:1fr}}.booking-label{font-family:var(--font-display);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-soft, var(--color-mute))}.booking-label--required:after{content:" *";color:var(--color-accent)}.booking-input,.booking-textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:.9375rem;border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper, var(--color-cream));color:var(--color-ink);transition:border-color .15s ease;box-sizing:border-box}.booking-input:focus,.booking-textarea:focus{outline:none;border-color:var(--color-ink)}.booking-textarea{resize:vertical;min-height:6rem}.booking-submit{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-xl);font-family:var(--font-display);font-size:.9375rem;font-weight:500;background:var(--color-ink);color:var(--color-paper);border:1px solid var(--color-ink);border-radius:var(--radius-sm);cursor:pointer;width:100%;margin-top:var(--spacing-sm);transition:background-color .15s ease,box-shadow .15s ease}.booking-submit:hover:not(:disabled){background:var(--color-ink-soft, var(--color-ink))}.booking-submit:disabled{opacity:.5;cursor:not-allowed}.booking-cancel{display:block;text-align:center;font-family:var(--font-body);font-size:.875rem;color:var(--color-mute);cursor:pointer;background:none;border:none;text-decoration:underline;padding:0;margin-top:var(--spacing-xs)}.booking-cancel:hover{color:var(--color-ink)}.booking-error{font-family:var(--font-body);font-size:.875rem;color:var(--color-error, var(--color-accent));padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-error, var(--color-accent));border-radius:var(--radius-sm);background:#ff00000a}.time-slot{display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.2}.time-slot-time{font-weight:500}.time-slot-capacity{font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:var(--color-mute, var(--color-secondary))}.time-slot--full{opacity:.85;border-style:dashed}.time-slot--full .time-slot-capacity{color:var(--color-accent)}.booking-form-note{font-family:var(--font-body);font-size:.875rem;color:var(--color-mute, var(--color-secondary));margin-top:var(--spacing-xs)}.manage-booking{display:flex;flex-direction:column;gap:var(--spacing-lg);align-items:flex-start}.manage-booking-summary,.manage-booking-status{font-family:var(--font-body);font-size:1.05rem;color:var(--color-ink, var(--color-primary))}.manage-booking-note{font-family:var(--font-body);font-size:.875rem;color:var(--color-mute, var(--color-secondary))}.manage-booking-link{color:var(--color-ink, var(--color-primary));text-decoration:underline}.manage-booking-link:hover{color:var(--color-accent)}.packages-layout{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);align-items:stretch}@media(min-width:900px){.packages-layout{grid-template-columns:1.35fr 1fr;gap:var(--spacing-2xl)}}.packages-secondary{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}@media(min-width:560px){.packages-secondary{grid-template-columns:1fr 1fr}}@media(min-width:900px){.packages-secondary{grid-template-columns:1fr 1fr;align-content:start}}.service-card__link{display:flex;flex-direction:column;flex:1;text-decoration:none;color:inherit;min-height:0}.service-card--featured{border:1px solid color-mix(in srgb,var(--color-accent, #EDB14E) 45%,var(--color-rule));box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent, #EDB14E) 18%,transparent),0 18px 48px -24px #000000a6;background:linear-gradient(165deg,var(--color-paper-warm, #141416) 0%,var(--color-paper, #0B0B0C) 55%,#12110e 100%)}.service-card--featured .service-card-image{aspect-ratio:16 / 10}.service-card--featured .service-card-name{font-size:clamp(1.5rem,2.4vw,2rem);letter-spacing:-.01em}.service-card--featured .service-card-tagline{font-size:.95rem;color:var(--color-ink-soft, var(--color-mute));max-width:36rem}.service-card--featured .service-card-meta{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-md);gap:var(--spacing-sm)}.service-card--featured .service-card-price{font-size:1rem}.service-card--featured .service-card-price__amount{color:var(--color-accent, #EDB14E);font-weight:600;font-size:1.25rem}.service-card--secondary{background:var(--color-paper-warm, #141416);border:1px solid var(--color-rule);box-shadow:none}.service-card--secondary .service-card-image{aspect-ratio:16 / 10}.service-card--secondary .service-card-name{font-size:1.05rem}.service-card--secondary .service-card-tagline{font-size:.8rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.service-card--secondary .service-card-meta{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md)}.service-card--secondary:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--color-accent, #EDB14E) 35%,var(--color-rule))}.service-card-addon{display:inline-flex;align-self:flex-start;font-family:var(--font-body);font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent, #EDB14E)}.packages-addons{display:flex;flex-direction:column;gap:var(--spacing-md)}.packages-addons__label{margin:0}.service-card-badge{position:absolute;top:var(--spacing-md);left:var(--spacing-md);z-index:2;display:inline-flex;align-items:center;padding:.35rem .7rem;border-radius:999px;background:color-mix(in srgb,var(--color-accent, #EDB14E) 92%,#000);color:#0b0b0c;font-family:var(--font-body);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.service-card-image{position:relative}.service-card-actions{padding:0 var(--spacing-lg) var(--spacing-lg)}.service-card-book{display:inline-flex;width:100%;justify-content:center;text-align:center}.service-card--static .service-card-image--placeholder{display:flex;align-items:flex-end;justify-content:flex-start;padding:var(--spacing-md);background:linear-gradient(135deg,#1a1814,#0b0b0c 60%),var(--color-paper-warm);min-height:0}.service-card--static .service-card-image--placeholder:after{content:"Staged";font-family:var(--font-display);font-size:1.5rem;color:color-mix(in srgb,var(--color-ink) 35%,transparent);letter-spacing:.02em}.service-card-price__amount{color:var(--color-ink);font-weight:600}.service-card-price span+span:before{content:"·";padding-right:var(--spacing-sm);color:var(--color-rule)}.packages-page-hero{margin-bottom:var(--spacing-2xl)}.packages-page-hero .service-card--featured{max-width:100%}@media(min-width:900px){.packages-page-hero .service-card--featured{display:grid;grid-template-columns:1.4fr 1fr}.packages-page-hero .service-card--featured .service-card__link{display:contents}.packages-page-hero .service-card--featured .service-card-image{aspect-ratio:auto;min-height:320px;height:100%}.packages-page-hero .service-card--featured .service-card-meta{justify-content:center;padding:var(--spacing-2xl)}.packages-page-hero .service-card--featured .service-card-actions{grid-column:2;padding:0 var(--spacing-2xl) var(--spacing-2xl)}}.service-card-image:has(.bundle-strip),.service-card--featured .service-card-image:has(.bundle-strip){aspect-ratio:auto;height:auto;min-height:0;background:#0b0b0c}.bundle-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem;height:100%;padding:.7rem;background:radial-gradient(120% 90% at 50% 0%,#1c1915,#0b0b0c 62%)}.service-card-image:has(.service-card-badge) .bundle-strip{padding-top:2.7rem}.bundle-tile{display:flex;flex-direction:column;min-width:0;margin:0;border-radius:.5rem;overflow:hidden;background:#0b0b0c;border:1px solid #2a2a2e}.bundle-visual{position:relative;aspect-ratio:4 / 3;overflow:hidden;background:#141416}.bundle-visual__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:none}.bundle-visual__img--contain{object-fit:contain;background:#f4f4f2;padding:.35rem}.service-card:hover .bundle-strip img,.service-card:hover .bundle-visual__img{transform:none}.bundle-tile figcaption{display:flex;align-items:center;justify-content:center;min-height:2.55em;margin:0;padding:.4rem .3rem .45rem;background:#0b0b0c;color:#f5f5f4;font-family:var(--font-body);font-size:.68rem;font-weight:600;line-height:1.2;letter-spacing:.01em;text-align:center}.bundle-play,.bundle-360{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.bundle-play span{width:2.15rem;height:2.15rem;border-radius:999px;display:grid;place-items:center;background:color-mix(in srgb,#0b0b0c 55%,transparent);border:1.5px solid #edb14e;box-shadow:0 8px 18px #00000059}.bundle-play span:before{content:"";width:0;height:0;margin-left:2px;border-style:solid;border-width:5px 0 5px 9px;border-color:transparent transparent transparent #edb14e}.bundle-360{color:#f5f5f4;font-family:var(--font-display);font-size:clamp(1.15rem,1.6vw,1.7rem);font-weight:600;letter-spacing:.02em;text-shadow:0 2px 14px rgba(0,0,0,.65)}.bundle-360:before{content:"";position:absolute;width:3.4rem;height:3.4rem;border-radius:50%;border:2px solid #edb14e;box-shadow:0 0 0 7px color-mix(in srgb,#0b0b0c 35%,transparent),inset 0 0 0 7px color-mix(in srgb,#0b0b0c 28%,transparent)}.mini-flyer{position:absolute;inset:9% 16% 9% 18%;display:flex;flex-direction:column;background:#0b0b0c;border-radius:4px;overflow:hidden;border:1px solid color-mix(in srgb,#f5f5f4 16%,transparent);box-shadow:0 12px 22px #00000073;z-index:1}.service-card-image .mini-flyer__photo{flex:1 1 auto;width:100%;height:68%;min-height:0;object-fit:cover;object-position:center 42%}.mini-flyer__bar{display:flex;align-items:center;justify-content:center;gap:.35rem;flex:none;padding:.28rem .2rem;background:#0b0b0c;border-top:2px solid #edb14e}.service-card-image .mini-flyer__mark{width:1.35rem;height:auto;object-fit:contain;flex:none}.mini-flyer__kicker{color:#edb14e;font-family:var(--font-body);font-size:.58rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1}.service-detail-bundle{border:1px solid var(--color-rule);border-radius:var(--radius-lg, .75rem);overflow:hidden;background:#0b0b0c}@media(min-width:900px){.packages-layout{grid-template-columns:1fr}.packages-secondary{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.packages-page-hero .service-card--featured,.packages-page-hero .service-card--featured .service-card__link{display:flex;flex-direction:column}.packages-page-hero .service-card--featured .service-card-image{aspect-ratio:auto;min-height:0;height:auto}.packages-page-hero .service-card--featured .service-card-meta{justify-content:flex-start;padding:var(--spacing-lg)}.packages-page-hero .service-card--featured .service-card-actions{grid-column:auto;padding:0 var(--spacing-lg) var(--spacing-lg)}}@media(max-width:720px){.bundle-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.bundle-tile{flex:0 0 68%;scroll-snap-align:start}.bundle-tile figcaption{font-size:.75rem}}.form-container{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;max-width:var(--container-prose)}.form-field{display:flex;flex-direction:column;gap:var(--spacing-2xs)}.form-label{font-family:var(--font-body);font-size:.875rem;color:var(--color-ink-soft)}.form-label .required{color:var(--color-accent);margin-left:.15rem}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper-warm);color:var(--color-ink);font-family:var(--font-body);font-size:1rem}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:2px solid var(--color-accent);outline-offset:1px}.form-input-error{border-color:var(--color-error, var(--color-accent))}.form-button{align-self:flex-start;padding:var(--spacing-sm) var(--spacing-xl);background:var(--color-accent);color:var(--color-paper);border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-weight:600;cursor:pointer}.form-button:disabled{opacity:.6;cursor:not-allowed}.form-button:hover:not(:disabled){filter:brightness(1.08)}.form-success{padding:var(--spacing-lg);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-warm);color:var(--color-ink);font-family:var(--font-body)}.form-error,.form-field-error{color:var(--color-error, var(--color-accent));font-size:.875rem;font-family:var(--font-body)}.story-root{--story-ease: cubic-bezier(.22, 1, .36, 1)}.story-stage{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;overflow:clip}.story-stage--tall{min-height:140vh}.story-pin{position:sticky;top:0;min-height:100vh;min-height:100dvh;display:flex;align-items:center;width:100%;z-index:1}.story-pin-inner{width:100%;max-width:var(--container-6xl);margin-inline:auto;padding:var(--spacing-4xl) var(--spacing-lg)}@media(max-width:767px){.story-stage,.story-stage--tall{min-height:0;align-items:flex-start}.story-pin{position:relative;top:auto;min-height:0}.story-pin-inner{padding-block:var(--spacing-3xl);padding-inline:var(--spacing-md)}}.reveal{opacity:0;transform:translateY(2.5rem);transition:opacity .9s var(--story-ease),transform .9s var(--story-ease);will-change:opacity,transform}.reveal.is-inview{opacity:1;transform:none}.reveal-left{opacity:0;transform:translate(-2.5rem);transition:opacity .9s var(--story-ease),transform .9s var(--story-ease)}.reveal-left.is-inview{opacity:1;transform:none}.reveal-right{opacity:0;transform:translate(2.5rem);transition:opacity .9s var(--story-ease),transform .9s var(--story-ease)}.reveal-right.is-inview{opacity:1;transform:none}.reveal-scale{opacity:0;transform:scale(.94);transition:opacity 1s var(--story-ease),transform 1s var(--story-ease)}.reveal-scale.is-inview{opacity:1;transform:none}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal-delay-5{transition-delay:.5s}@media(max-width:767px){.reveal,.reveal-left,.reveal-right{transform:translateY(1.25rem)}.reveal-delay-1,.reveal-delay-2,.reveal-delay-3,.reveal-delay-4,.reveal-delay-5{transition-delay:.05s}}@media(prefers-reduced-motion:reduce){.reveal,.reveal-left,.reveal-right,.reveal-scale{opacity:1;transform:none;transition:none}}.media-block{position:relative;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-rule);background:radial-gradient(ellipse 80% 60% at 30% 20%,rgba(196,163,90,.18),transparent 55%),linear-gradient(145deg,var(--color-paper-warm) 0%,#0e0e10 50%,var(--color-cream) 100%);max-width:100%}.media-block:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(11,11,12,.75) 0%,transparent 45%),repeating-linear-gradient(-12deg,transparent,transparent 40px,rgba(245,245,244,.015) 40px,rgba(245,245,244,.015) 41px);pointer-events:none}.media-block__label{position:absolute;z-index:1;left:var(--spacing-md);right:var(--spacing-md);bottom:var(--spacing-md);font-family:var(--font-body);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-block--photos{background:radial-gradient(circle at 70% 30%,rgba(196,163,90,.22),transparent 45%),linear-gradient(160deg,#1a1816,#0b0b0c 60%,#161410)}.media-block--video{background:radial-gradient(ellipse at 40% 80%,rgba(196,163,90,.15),transparent 50%),linear-gradient(200deg,#12141a,#0b0b0c 55%,#18140e)}.media-block--aerial{background:radial-gradient(ellipse 90% 50% at 50% 0%,rgba(196,163,90,.28),transparent 50%),linear-gradient(180deg,#1c1810,#0b0b0c 70%)}.media-block--tours{background:radial-gradient(circle at 20% 50%,rgba(196,163,90,.12),transparent 40%),conic-gradient(from 210deg at 60% 40%,#141416,#1a1814,#0b0b0c,#18161a,#141416)}.media-block--hero{background:radial-gradient(ellipse 70% 50% at 60% 40%,rgba(196,163,90,.25),transparent 55%),linear-gradient(135deg,#161410,#0b0b0c 45%,#121416);box-shadow:0 40px 80px #00000073}.story-kicker{font-family:var(--font-body);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);overflow-wrap:anywhere}.story-cta{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);min-height:2.75rem;padding:var(--spacing-sm) var(--spacing-xl);background:var(--color-accent);color:var(--color-paper);font-family:var(--font-body);font-weight:600;border-radius:var(--radius-sm);transition:filter .2s ease,transform .2s ease;text-align:center}.story-cta:hover{filter:brightness(1.08);transform:translateY(-1px)}.story-cta--ghost{background:transparent;color:var(--color-accent);border:1px solid var(--color-accent)}.story-cta--ghost:hover{background:var(--color-accent);color:var(--color-paper)}.type-card{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-warm);transition:border-color .3s ease,transform .3s var(--story-ease)}@media(hover:hover){.type-card:hover{border-color:color-mix(in srgb,var(--color-accent) 50%,var(--color-rule));transform:translateY(-4px)}}.type-card__swatch{aspect-ratio:16 / 10;border-radius:var(--radius-sm);overflow:hidden;position:relative;background:#f4f1ea}.type-card__photo{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.portfolio-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}@media(min-width:480px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){.portfolio-grid{grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg)}.portfolio-grid .span-2{grid-column:span 2}.portfolio-grid .row-2{grid-row:span 2}.portfolio-grid .span-full{grid-column:1 / -1}}.portfolio-tour{grid-column:1 / -1;display:flex;flex-direction:column;gap:var(--spacing-sm)}@media(min-width:768px){.portfolio-grid .portfolio-tour.span-2{grid-column:span 2}}.portfolio-tour__frame{position:relative;width:100%;aspect-ratio:16 / 9;min-height:18rem;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-rule);background:#0b0b0c}.portfolio-tour__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.portfolio-tour__facade{position:absolute;inset:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);border:0;cursor:pointer;color:var(--color-paper, #f4f1ea);background:radial-gradient(ellipse 70% 60% at 50% 40%,rgba(196,163,90,.22),transparent 60%),#0b0b0c;font-family:var(--font-body);-webkit-tap-highlight-color:transparent}.portfolio-tour__play{display:inline-flex;align-items:center;justify-content:center;width:4.5rem;height:4.5rem;border-radius:999px;border:1px solid var(--color-accent);color:var(--color-accent);font-size:1.1rem;letter-spacing:.04em;transition:background .2s ease,color .2s ease}.portfolio-tour__facade:hover .portfolio-tour__play,.portfolio-tour__facade:focus-visible .portfolio-tour__play{background:var(--color-accent);color:#0b0b0c}.portfolio-tour__facade-label{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:#e9e4d8}.portfolio-tour__meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--spacing-sm);font-family:var(--font-body);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-soft)}.portfolio-tour__meta a{color:var(--color-accent);text-decoration:none}.portfolio-tour__meta a:hover{text-decoration:underline}@media(max-width:767px){.portfolio-tour__frame{min-height:22rem;aspect-ratio:4 / 5}}@media(min-width:768px){.portfolio-grid .portfolio-tour.span-full .portfolio-tour__frame{min-height:28rem}}.portfolio-filters{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);max-width:100%}.portfolio-filter{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-rule);border-radius:999px;background:transparent;color:var(--color-mute);font-family:var(--font-body);font-size:.875rem;letter-spacing:.04em;transition:color .15s ease,border-color .15s ease,background .15s ease;-webkit-tap-highlight-color:transparent}.portfolio-filter:hover,.portfolio-filter[aria-pressed=true]{color:var(--color-paper);border-color:var(--color-accent);background:var(--color-accent)}.portfolio-tile{position:relative;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-rule);min-height:10rem;width:100%;transition:transform .4s var(--story-ease),border-color .3s ease}@media(hover:hover){.portfolio-tile:hover{transform:scale(1.02);border-color:color-mix(in srgb,var(--color-accent) 40%,var(--color-rule))}}.portfolio-tile.is-hidden{display:none}.story-cta-band{position:relative;overflow:hidden;border-block:1px solid var(--color-rule);background:radial-gradient(ellipse 60% 80% at 50% 100%,rgba(196,163,90,.2),transparent 60%),var(--color-paper-warm)}.story-display{font-family:var(--font-display);font-size:clamp(2rem,6.5vw + .5rem,3.75rem);line-height:1.05;overflow-wrap:balance;word-break:normal}.story-display-md{font-family:var(--font-display);font-size:clamp(1.75rem,4.5vw + .5rem,3rem);line-height:1.1;overflow-wrap:balance}@media(max-width:767px){.media-block--hero{min-height:16rem!important;box-shadow:0 20px 40px #00000059}}.media-block--has-image{background:#0b0b0c}.media-block__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.media-block--has-image:after{background:linear-gradient(to top,rgba(11,11,12,.72) 0%,transparent 42%)}.testimonials-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg)}@media(min-width:768px){.testimonials-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.testimonials-grid{grid-template-columns:repeat(3,1fr)}}.testimonial-card{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-xl);background:var(--color-paper-warm);border:1px solid var(--color-rule);border-radius:var(--radius-md);height:100%}.testimonial-card__quote{font-family:var(--font-display);font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.45;color:var(--color-ink);font-style:italic;flex:1}.testimonial-card__quote:before{content:"“";color:var(--color-accent);font-style:normal;margin-right:.15em}.testimonial-card__quote:after{content:"”";color:var(--color-accent);font-style:normal;margin-left:.05em}.testimonial-card__attr{font-family:var(--font-body);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-mute)}.testimonial-card__attr strong{color:var(--color-accent);font-weight:600;display:block;margin-bottom:.15rem;text-transform:none;letter-spacing:0;font-size:.95rem}.testimonial-card--featured{grid-column:1 / -1;background:linear-gradient(145deg,#161410 0%,var(--color-paper-warm) 60%,#121214 100%);border-color:#edb14e59}@media(min-width:768px){.testimonial-card--featured{grid-column:span 2}}@media(min-width:1024px){.testimonial-card--featured{grid-column:span 2}}.hero-cine{position:relative;min-height:calc(100svh - 4.75rem);display:flex;align-items:center;overflow:hidden;background:#0b0b0c}.hero-cine__media{position:absolute;inset:0;overflow:hidden}.hero-cine__photo{position:absolute;left:0;top:-8%;width:100%;height:118%;max-width:none;object-fit:cover;object-position:64% 68%;transform:translate3d(0,calc(var(--parallax, 0) * 1px),0)}.hero-cine__scrim{position:absolute;inset:0;background:linear-gradient(90deg,#0b0b0c 0% 30%,#0b0b0cd1 44%,#0b0b0c47 60%,#0b0b0c14);pointer-events:none}.hero-cine__content{position:relative;z-index:1;width:100%;max-width:var(--container-6xl);margin-inline:auto;padding:var(--spacing-4xl) var(--spacing-lg)}.hero-cine__copy{display:flex;flex-direction:column;gap:var(--spacing-lg);max-width:36rem}.hero-cine__label{position:absolute;z-index:2;right:var(--spacing-lg);bottom:var(--spacing-lg);font-family:var(--font-body);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-soft);text-shadow:0 1px 8px rgba(0,0,0,.6)}.bleed-frame__video{pointer-events:none;background:#0b0b0c}.bleed-frame__video::-webkit-media-controls,.bleed-frame__video::-webkit-media-controls-start-playback-button,.bleed-frame__video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none}.bleed-frame{position:relative;height:86vh;min-height:24rem;overflow:hidden;background:#0b0b0c}.bleed-frame__media{position:absolute;inset:-12% 0}.bleed-frame__media img,.bleed-frame__media video{width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;transform:translate3d(0,calc(var(--parallax, 0) * 1px),0) scale(1.04)}.bleed-frame__label{position:absolute;z-index:1;left:var(--spacing-lg);bottom:var(--spacing-lg);font-family:var(--font-body);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-soft);text-shadow:0 1px 10px rgba(0,0,0,.65)}.bleed-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(11,11,12,.45),transparent 28%);pointer-events:none}@media(min-width:768px){.story-stage[data-chapter]{min-height:168vh}.story-stage[data-chapter] .story-pin-inner{transform:scale(calc(1 - var(--chapter-out, 0) * .04));opacity:calc(1 - var(--chapter-out, 0) * .55);transform-origin:center 42%}[data-scroll-scale]{transform:scale(calc(.975 + var(--scale-p, 1) * .025));transform-origin:center center}}@media(max-width:767px){.hero-cine{min-height:0;display:block}.hero-cine__media{position:relative;height:72vw;min-height:15.5rem}.hero-cine__photo{top:0;height:100%;transform:none;object-position:58% 62%}.hero-cine__scrim{display:none}.hero-cine__content{padding-block:var(--spacing-3xl)}.bleed-frame{height:68vw;min-height:13rem}.bleed-frame__media{inset:0}.bleed-frame__media img,.bleed-frame__media video{transform:none}}@media(prefers-reduced-motion:reduce){.hero-cine__photo,.bleed-frame__media img,.bleed-frame__media video,.story-stage[data-chapter] .story-pin-inner,[data-scroll-scale]{transform:none;opacity:1}}.story-stage,.story-stage--tall{min-height:0;align-items:flex-start}.story-pin{position:relative;top:auto;min-height:0}@media(min-width:768px){.story-stage[data-chapter]{min-height:0}.story-stage[data-chapter] .story-pin-inner{transform:none;opacity:1}}.portfolio-video{grid-column:1 / -1;display:flex;flex-direction:column;gap:var(--spacing-sm)}@media(min-width:768px){.portfolio-grid .portfolio-video.span-2{grid-column:span 2}}.portfolio-video__frame{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-rule);background:#0b0b0c}.portfolio-video__el{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#0b0b0c;display:block}.portfolio-video__facade{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;border:0;padding:0;cursor:pointer;background:linear-gradient(to top,#0b0b0c8c,#0b0b0c1a 55%);-webkit-tap-highlight-color:transparent}.portfolio-video__play{display:inline-flex;align-items:center;justify-content:center;width:4.5rem;height:4.5rem;padding-left:.25rem;border-radius:999px;background:#0b0b0c8c;border:1px solid var(--color-accent);color:var(--color-accent);backdrop-filter:blur(4px);transition:background .2s ease,color .2s ease,transform .2s ease}.portfolio-video__facade:hover .portfolio-video__play,.portfolio-video__facade:focus-visible .portfolio-video__play{background:var(--color-accent);color:#0b0b0c;transform:scale(1.06)}.portfolio-tile{display:block;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:zoom-in;-webkit-tap-highlight-color:transparent;appearance:none;-webkit-appearance:none}.portfolio-tile:disabled{cursor:default}.portfolio-tile:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.portfolio-lightbox{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:3.5rem 1rem 1.5rem;background:#0b0b0ceb;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);overscroll-behavior:contain;touch-action:pan-y}.portfolio-lightbox__figure{margin:0;max-width:min(96vw,1400px);max-height:calc(100dvh - 5rem);display:flex;flex-direction:column;align-items:center;gap:.75rem;pointer-events:none}.portfolio-lightbox__img{display:block;max-width:100%;max-height:calc(100dvh - 7.5rem);width:auto;height:auto;object-fit:contain;border-radius:var(--radius-sm, 4px);box-shadow:0 24px 64px #0000008c;pointer-events:auto;user-select:none;-webkit-user-drag:none}.portfolio-lightbox__caption{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.5rem 1rem;max-width:100%;padding:0 .5rem;font-family:var(--font-body);font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase;color:#f4f1ead9;text-align:center;pointer-events:none}.portfolio-lightbox__count{color:var(--color-accent);letter-spacing:.08em}.portfolio-lightbox__close,.portfolio-lightbox__nav{position:absolute;z-index:1;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(244,241,234,.25);background:#0b0b0c8c;color:#f4f1ea;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .18s ease,border-color .18s ease,color .18s ease}.portfolio-lightbox__close:hover,.portfolio-lightbox__nav:hover,.portfolio-lightbox__close:focus-visible,.portfolio-lightbox__nav:focus-visible{background:var(--color-accent);border-color:var(--color-accent);color:#0b0b0c;outline:none}.portfolio-lightbox__close{top:.75rem;right:.75rem;width:2.75rem;height:2.75rem;border-radius:999px;font-size:1.75rem;line-height:1}.portfolio-lightbox__nav{top:50%;transform:translateY(-50%);width:2.75rem;height:2.75rem;border-radius:999px;font-size:1.75rem;line-height:1}.portfolio-lightbox__nav--prev{left:.5rem}.portfolio-lightbox__nav--next{right:.5rem}@media(min-width:768px){.portfolio-lightbox{padding:3.5rem 4.5rem 2rem}.portfolio-lightbox__nav--prev{left:1rem}.portfolio-lightbox__nav--next{right:1rem}.portfolio-lightbox__close{top:1rem;right:1rem}}@media(max-width:479px){.portfolio-lightbox__nav{width:2.5rem;height:2.5rem;font-size:1.5rem}.portfolio-lightbox__caption{font-size:.7rem}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
