:root{--ink:#211d19;--muted:#675f57;--paper:#f6f1e9;--surface:#fffdf9;--line:#d7cfc3;--accent:#4e3d31;--accent-hover:#34281f;--error:#9a2f29;--success:#23603b;--button-text:#fff;--input-background:#fff;--input-border:#8b8177;--focus:#9b7659;--success-background:#eef6f0;--image-placeholder:#e3d7c6;--shadow:#2f251c;--highlight:#fff;--font-body:Georgia, "Times New Roman", serif;--font-heading:Georgia, "Times New Roman", serif;--font-controls:Arial, sans-serif;--font-pin:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--base-size:16px;--heading-scale:1;--body-weight:400;--heading-weight:500;--button-weight:700;--body-line-height:1.6;--body-letter-spacing:0em;--heading-line-height:1.06;--heading-letter-spacing:-.035em;--pin-size:1.35rem;--pin-letter-spacing:.16em;--page-image:radial-gradient(circle at 15% 10%, #ffffffb3, transparent 35rem);--page-image-size:auto;--page-image-repeat:no-repeat;--page-image-position:center;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--paper);min-height:100%;font-size:var(--base-size)}body{min-height:100vh;color:var(--ink);background-color:var(--paper);background-image:var(--page-image);background-size:var(--page-image-size);background-repeat:var(--page-image-repeat);background-position:var(--page-image-position);font-family:var(--font-body);font-weight:var(--body-weight);line-height:var(--body-line-height);letter-spacing:var(--body-letter-spacing);-webkit-font-smoothing:antialiased;margin:0}button,input,select{font:inherit}.enquiry-buttons{flex-wrap:wrap;align-items:start;gap:1rem;display:flex}.enquiry-buttons>*{flex:14rem;min-width:0;max-width:100%}.enquiry-buttons .primary-button{white-space:normal;overflow-wrap:anywhere;min-height:48px}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.shell{place-items:center;width:min(100% - 2rem,68rem);min-height:100vh;margin:0 auto;padding:clamp(2rem,6vw,5rem) 0;display:grid}.pin-card{background:var(--surface);border:1px solid var(--line);width:min(100%,31rem);box-shadow:0 1.25rem 4rem color-mix(in srgb, var(--shadow) 10%, transparent);padding:clamp(1.5rem,6vw,3rem)}.brand{font-size:clamp(calc(1.85rem * var(--heading-scale)), calc(7vw * var(--heading-scale)), calc(2.65rem * var(--heading-scale)));font-family:var(--font-heading);font-weight:var(--heading-weight);line-height:var(--heading-line-height);letter-spacing:var(--heading-letter-spacing);margin:0 0 2rem}.welcome-card{--ornament-size:min(clamp(4.5rem, 20vw, 6.25rem), 22vw);min-width:0;padding:calc(var(--ornament-size) * .8 + .75rem) min(clamp(3rem, 12vw, 4rem), 17vw);position:relative}.welcome-border{pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;inset:min(.5rem,2.5vw)}.welcome-border *{pointer-events:none}.welcome-border svg{display:block;overflow:visible}.welcome-border-custom svg{overflow:hidden}.welcome-border-corner{width:var(--ornament-size);height:calc(var(--ornament-size) * .8);position:absolute}.welcome-border-top-left{top:0;left:0}.welcome-border-top-right{top:0;right:0;transform:scaleX(-1)}.welcome-border-bottom-left{bottom:0;left:0}.welcome-border-bottom-right{bottom:0;right:0;transform:scaleX(-1)}.welcome-border-horizontal{left:var(--ornament-size);width:calc(100% - var(--ornament-size) * 2);height:calc(var(--ornament-size) * .8);position:absolute}.welcome-border-top{top:0}.welcome-border-bottom{bottom:0}.welcome-border-side{top:calc(var(--ornament-size) * .8);bottom:calc(var(--ornament-size) * .8);width:calc(var(--ornament-size) * .44);grid-template-rows:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);display:grid;position:absolute;left:0}.welcome-border-right{left:auto;right:0;transform:scaleX(-1)}.welcome-border-vine{width:100%;height:100%;min-height:0}.welcome-border-leaves{aspect-ratio:110/200;width:100%;height:auto}.welcome-border-leaves-reversed{transform:rotate(180deg)}.welcome-card .brand,.welcome-card .intro,.welcome-card form{position:relative}.welcome-card .brand,.welcome-card .form-status,.welcome-card .primary-button{overflow-wrap:anywhere}.welcome-card .pin-input{min-width:0}.intro{color:var(--muted);font-size:1.1rem;line-height:var(--body-line-height);margin:0 0 1.75rem}.field-label{font-family:var(--font-controls);font-weight:var(--button-weight);margin-bottom:.55rem;display:block}.pin-input{border:1px solid var(--input-border);background:var(--input-background);width:100%;min-height:3.25rem;color:var(--ink);font-family:var(--font-pin);font-size:var(--pin-size);letter-spacing:var(--pin-letter-spacing);border-radius:0;padding:.75rem .9rem}.primary-button{font-family:var(--font-controls);border:1px solid var(--accent);background:var(--accent);width:100%;min-height:3.35rem;color:var(--button-text);cursor:pointer;font-weight:var(--button-weight);margin-top:1rem;padding:.8rem 1.25rem;transition:background .14s,transform .14s}.primary-button:hover:not(:disabled){background:var(--accent-hover)}.primary-button:active:not(:disabled){transform:translateY(1px)}.primary-button:disabled{cursor:wait;opacity:.65}.form-status{min-height:1.5rem;font-family:var(--font-controls);font-size:.94rem;line-height:var(--body-line-height);margin:.9rem 0 0}.form-status.error{color:var(--error)}.form-status.success{color:var(--success)}.display-shell{width:min(100% - 2rem,70rem);margin:0 auto;padding:clamp(1rem,4vw,3.5rem) 0 clamp(2.5rem,6vw,5rem)}.display-header{border-bottom:1px solid var(--line);padding:1rem 0 1.5rem}.display-header .brand{font-size:clamp(calc(1.45rem * var(--heading-scale)), calc(4vw * var(--heading-scale)), calc(2rem * var(--heading-scale)));margin:0}.display-card{background:var(--surface);border:1px solid var(--line);box-shadow:0 1rem 4rem color-mix(in srgb, var(--shadow) 8%, transparent);margin-top:clamp(1.5rem,4vw,3rem);overflow:hidden}.display-image-wrap{aspect-ratio:8/5;background:var(--image-placeholder);position:relative}.display-image{object-fit:cover}.display-copy{padding:clamp(1.4rem,5vw,3rem)}.display-copy h1{font-family:var(--font-heading);font-size:clamp(calc(1.65rem * var(--heading-scale)), calc(5vw * var(--heading-scale)), calc(2.5rem * var(--heading-scale)));font-weight:var(--heading-weight);line-height:var(--heading-line-height);letter-spacing:var(--heading-letter-spacing);margin:0 0 .85rem}.display-copy>p{max-width:44rem;color:var(--muted);font-size:1.08rem;line-height:var(--body-line-height);margin:0 0 1.25rem}.display-copy .primary-button{max-width:22rem}.confirmation{border-left:4px solid var(--success);background:var(--success-background);color:var(--success);font-family:var(--font-controls);font-weight:var(--button-weight);padding:1rem}.error-page{text-align:center}.error-page p{color:var(--muted)}.text-link{color:var(--accent);text-underline-offset:.2em}@media (max-width:40rem){.shell{width:min(100% - 1rem,68rem);padding:.5rem 0}.pin-card{box-shadow:none}.display-shell{width:min(100% - 1rem,70rem)}.display-image-wrap{aspect-ratio:4/3}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
.welcome-host{width:100%;min-width:0;color:var(--ink);font-family:var(--font-body);line-height:var(--body-line-height);font-weight:var(--body-weight);letter-spacing:var(--body-letter-spacing);container-type:inline-size}.welcome-host .welcome-layout-box{min-width:min(100%,280px);padding:min(var(--welcome-padding), 12cqw);--ornament-size:min(clamp(4.5em, 20cqw, 6.25em), 22cqw);margin-inline:auto;position:relative}.welcome-host .welcome-layout-bordered{padding-block:max(var(--welcome-padding), calc(var(--ornament-size) * .8 + var(--welcome-inset) + 6px));padding-inline:max(min(var(--welcome-padding), 12cqw), min(clamp(3em, 12cqw, 4em), 17cqw), calc(var(--ornament-size) * .44 + var(--welcome-inset) + 10px))}.welcome-layout-box .welcome-border{inset:var(--welcome-inset);z-index:0}.welcome-layout-canvas{z-index:1;min-width:0;position:relative}.welcome-layout-block{min-width:0;display:flow-root;overflow:visible}.welcome-layout-block.protected-form{z-index:2}.welcome-host .welcome-layout-double-frame{--frame-inner-inset:calc(var(--frame-inset) + var(--frame-outer) + var(--frame-gap));--frame-gutter:calc(var(--frame-inner-inset) + var(--frame-inner) + 12px);padding:max(min(var(--welcome-padding), 12cqw), var(--frame-gutter))}.welcome-double-frame{pointer-events:none;z-index:0;position:absolute;inset:0}.welcome-double-frame>span{inset:var(--frame-inset);border:var(--frame-outer) solid var(--frame-colour);pointer-events:none;background:0 0;border-radius:0;position:absolute}.welcome-double-frame>span+span{inset:var(--frame-inner-inset);border-width:var(--frame-inner)}.welcome-host .welcome-text{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;margin:0}.welcome-image-card{width:100%;min-width:0;aspect-ratio:var(--welcome-image-ratio,2);isolation:isolate;background:var(--image-placeholder,#eee);position:relative}.welcome-image-photo{z-index:0}.welcome-image-wash{z-index:1;pointer-events:none;position:absolute;inset:0}.welcome-image-copy{z-index:2;justify-content:center;align-items:center;min-width:0;display:flex;position:absolute;inset:0;overflow:hidden}.welcome-image-copy-inner{width:100%;transform:scale(var(--welcome-image-text-scale,1));transform-origin:50%;flex:0 0 100%}.welcome-image-copy.is-text-hidden{clip-path:inset(50%)}.welcome-artwork{z-index:3;position:absolute}.welcome-artwork-movable{cursor:move;touch-action:none;background:0 0;border:0;padding:0;display:block}.welcome-artwork-movable:hover,.welcome-artwork-movable:focus-visible{outline:2px dashed var(--focus,#00798a);outline-offset:2px}.welcome-image-expand{z-index:4;width:100%;color:inherit;cursor:zoom-in;border-radius:inherit;background:0 0;border:0;padding:0;position:absolute;inset:0}.welcome-image-expand:focus-visible{outline:3px solid var(--focus,#00798a);outline-offset:3px}.welcome-image-dialog{color:#fff;background:#101519;border:0;width:100dvw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0}.welcome-image-dialog[open]{display:block}.welcome-image-expanded-view{width:100%;height:100%;padding-top:calc(var(--welcome-back-size,28px) + 52px + env(safe-area-inset-top));padding-bottom:max(12px, env(safe-area-inset-bottom));box-sizing:border-box;place-items:center;display:grid}.welcome-image-safe-area{inset:max(16px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));visibility:hidden;pointer-events:none;position:fixed}.welcome-image-dialog::backdrop{background:#101519}.welcome-image-expanded-frame{width:min(calc(100vw - 24px), calc((100vh - var(--welcome-back-size,28px) - 76px - env(safe-area-inset-top) - env(safe-area-inset-bottom)) * var(--welcome-expanded-ratio)));width:min(calc(100dvw - 24px), calc((100dvh - var(--welcome-back-size,28px) - 76px - env(safe-area-inset-top) - env(safe-area-inset-bottom)) * var(--welcome-expanded-ratio)));aspect-ratio:var(--welcome-expanded-ratio);position:relative}.welcome-image-expanded-photo{object-fit:contain}.welcome-image-return-bar{top:max(16px, env(safe-area-inset-top));left:calc(max(12px, env(safe-area-inset-left)) + var(--welcome-back-size,28px) + 36px);right:max(12px, env(safe-area-inset-right));z-index:5;pointer-events:none;justify-content:flex-end;align-items:center;display:flex;position:fixed}.welcome-image-return-bar button,.welcome-image-return-button{pointer-events:auto;color:#fff;cursor:pointer;background:#16803c;border:2px solid #fff;box-shadow:0 3px 14px #0008}.welcome-image-back{left:max(12px, env(safe-area-inset-left));top:max(16px, env(safe-area-inset-top));z-index:7;width:calc(var(--welcome-back-size,28px) + 24px);height:calc(var(--welcome-back-size,28px) + 24px);border-radius:50%;place-items:center;padding:0;display:grid;position:fixed}.welcome-image-return-label{text-align:center;border-radius:10px;min-height:48px;padding:10px 16px;font:700 17px/1.25 Arial,sans-serif}.welcome-image-return-bar button:hover,.welcome-image-back:hover{background:#11632e}.welcome-image-return-bar button:focus-visible,.welcome-image-back:focus-visible{outline-offset:4px;outline:3px solid #fff}.welcome-image-back.is-positioning{touch-action:none;cursor:grab}.welcome-image-back.is-positioning:active{cursor:grabbing}.welcome-arrow-position-help{z-index:6;bottom:max(12px, env(safe-area-inset-bottom));color:#fff;text-align:center;background:#101519ed;border-radius:8px;width:min(560px,100% - 32px);padding:10px 14px;font:14px/1.4 Arial,sans-serif;position:fixed;left:50%;transform:translate(-50%)}.welcome-arrow-position-help p{margin:0 0 8px}.welcome-arrow-position-help button{color:#fff;cursor:pointer;background:#16803c;border:2px solid #fff;border-radius:6px;min-height:44px;padding:8px 16px;font-weight:700}.welcome-arrow-position-dialog .welcome-image-return-label{font:700 17px/1.25 Arial,sans-serif}.welcome-image-error{z-index:1;padding:80px 24px;font:18px/1.5 Arial,sans-serif;position:relative}html:has(.welcome-image-dialog[open]){overflow:hidden}.welcome-image-control-preview img{object-fit:contain;width:100%;height:auto;max-height:180px}.welcome-host .welcome-layout-block .welcome-text-heading{font-size:clamp(calc(1.85em * var(--heading-scale)), calc(7cqw * var(--heading-scale)), calc(2.65em * var(--heading-scale)));font-family:var(--font-heading);font-weight:var(--heading-weight);line-height:var(--heading-line-height);letter-spacing:var(--heading-letter-spacing)}.welcome-text-paragraph{color:var(--muted);font-size:1.1em}.welcome-text-footer{color:var(--muted);font-size:1em}.welcome-host .field-label{overflow-wrap:anywhere;margin-bottom:.55em}.welcome-host .visitor-name-label,.welcome-host .visitor-message-label{margin-top:1em}.welcome-host .visitor-name-input,.welcome-host .visitor-message-input{width:100%;min-width:0;min-height:max(44px, calc(var(--welcome-control-base) * 3));padding:calc(var(--welcome-control-base) * .75) calc(var(--welcome-control-base) * .9);border:1px solid var(--input-border);border-radius:var(--control-radius,0);background:var(--input-background);color:var(--ink);font-family:var(--font-controls);font-size:max(16px,1em)}.welcome-host .visitor-message-input{resize:vertical;line-height:1.5;display:block}.welcome-host .pin-input{min-width:0;min-height:max(44px, calc(var(--welcome-control-base) * 3.25));font-size:max(16px, calc(1em * var(--pin-scale,1.35)));padding:calc(var(--welcome-control-base) * .75) calc(var(--welcome-control-base) * .9);border-radius:var(--control-radius,0)}.welcome-host .primary-button{min-height:max(44px, calc(var(--welcome-control-base) * 3.35));font-family:var(--font-controls);font-weight:var(--button-weight);font-size:inherit;overflow-wrap:anywhere;border-radius:var(--control-radius,0);margin-top:1em;padding:.8em 1.25em}.welcome-host .form-status{min-height:calc(var(--welcome-control-base) * 1.5);margin:calc(var(--welcome-control-base) * .9) 0 0;overflow-wrap:anywhere;font-size:.94em}.welcome-host .pin-input:focus-visible,.welcome-host .visitor-name-input:focus-visible,.welcome-host .visitor-message-input:focus-visible,.welcome-host .primary-button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}@container (max-width:600px){.welcome-host .welcome-layout-box{box-shadow:none}}@container (max-width:350px){.welcome-host .welcome-layout-box{width:100%!important}.welcome-host .welcome-layout-bordered{--ornament-size:18cqw;padding-inline:max(12px, calc(var(--ornament-size) * .44 + min(var(--welcome-inset), 10px) + 7px))}}
