:root{--teal:#5cccda;--ink:#15282b;--muted:#58686a;--paper:#f6f8f7;--line:#dce5e4;--surface:#fff;--radius:16px;--body:Avenir,'Helvetica Neue',Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 var(--body);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #247884;outline-offset:3px}button{min-height:44px}button[hidden],[hidden]{display:none!important}.prototype-note{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:36px;padding:0 5%;background:#dff3f5;color:#24535b;font-size:9px;letter-spacing:1px}.prototype-note button{border:0;background:transparent;min-height:36px;font-size:11px;letter-spacing:0;text-decoration:underline}.site-header{display:flex;align-items:center;gap:28px;max-width:1460px;margin:auto;padding:24px 5%;border-bottom:1px solid var(--line)}.wordmark{display:block;min-width:110px}.wordmark img{width:112px;display:block}.header-note{font-size:12px;color:var(--muted)}.location{font-size:9px;letter-spacing:2px;margin-left:auto;color:var(--muted)}.experience{max-width:1320px;margin:48px auto 64px;padding:0 5%;display:grid;grid-template-columns:minmax(0,1fr) minmax(370px,.85fr);grid-template-areas:'intro form' 'visual form';gap:26px 7%;align-items:start}.intro{grid-area:intro}.eyebrow,.step-caption{font-size:9px;letter-spacing:2px;font-weight:600;margin:0 0 18px;color:var(--muted)}h1{font-size:clamp(38px,4vw,62px);line-height:1.08;font-weight:300;letter-spacing:-2px;max-width:630px;margin:0 0 20px}.intro-copy{font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 24px}.intro-meta{display:flex;gap:16px;font-size:10px;color:var(--muted)}.intro-meta span+span{border-left:1px solid var(--line);padding-left:16px}.visual{grid-area:visual;position:relative;padding-bottom:10px}.photo{height:260px;overflow:hidden;border-radius:var(--radius);background:#d7e5e4}.photo img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.voucher{background:var(--teal);color:#102e32;position:relative;z-index:1;width:88%;max-width:470px;margin:-96px auto 0;border-radius:10px;padding:23px 26px 20px;box-shadow:0 16px 32px #153b3b20;overflow:hidden;aspect-ratio:1.65;display:flex;flex-direction:column;justify-content:space-between}.voucher-top{display:flex;justify-content:space-between;align-items:center}.voucher-top>span:first-child{font-weight:500;font-size:27px;letter-spacing:-1.5px}.voucher-top small{font-size:9px;letter-spacing:2px;margin-left:3px}.voucher-kind{font-size:8px;letter-spacing:2px}.voucher-main{display:flex;flex-direction:column;align-items:start;padding:15px 0}.voucher-for{font-size:12px;position:relative;z-index:1}.voucher-for b{font-weight:500}.voucher-main strong{font-size:clamp(36px,4vw,57px);font-weight:300;letter-spacing:-2px;line-height:1.15;margin-top:5px}.currency{font-size:7px;letter-spacing:2px}.voucher-bottom{display:flex;flex-direction:column;font-size:10px;position:relative;z-index:1}.voucher-bottom small{font-size:8px;margin-top:4px}.voucher-seal{position:absolute;right:-20px;bottom:-64px;font-size:290px;line-height:1;font-weight:300;opacity:.07;transform:rotate(-12deg)}.visual-caption{text-align:center;font-size:10px;color:var(--muted);margin:18px 0 0}.checkout{grid-area:form;background:var(--surface);padding:26px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 36px #103b3b05;scroll-margin-top:16px;min-width:0}.steps{display:flex;gap:13px;padding-bottom:25px;justify-content:space-between}.steps button{display:flex;align-items:center;gap:5px;padding:0;border:0;background:none;font-size:10px;min-height:26px;color:var(--muted)}.steps button>span{height:20px;min-width:20px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:9px}.steps button[aria-current]{color:var(--ink);font-weight:600}.steps button[aria-current]>span{background:var(--ink);color:var(--surface);border-color:var(--ink)}.steps button:disabled{opacity:.6}.step-caption{display:block;font-size:8px;margin-bottom:8px}h2{font-weight:400;font-size:27px;letter-spacing:-.8px;line-height:1.2;margin:0 0 9px}h3{font-size:13px;letter-spacing:-.1px;font-weight:500;margin:23px 0 10px}.section-copy{font-size:12px;color:var(--muted);line-height:1.7;margin:0 0 20px}.choices{display:grid;gap:9px}.choice{display:flex;align-items:center;position:relative;border:1px solid var(--line);border-radius:9px;padding:13px 12px;gap:12px;min-height:66px;cursor:pointer;background:var(--surface);transition:background .15s,border-color .15s}.choice input{position:absolute;opacity:0;width:1px;height:1px}.choice:has(input:focus-visible){outline:3px solid #247884;outline-offset:2px}.choice.selected{border-color:#3da9b9;background:#f0fbfc;box-shadow:inset 0 0 0 1px #3da9b9}.choice-icon{width:24px;height:24px;flex-shrink:0}.choice svg{display:block;width:100%;height:100%}.choice-text{flex:1;min-width:0}.choice strong{display:block;font-size:13px;font-weight:500;line-height:1.4}.choice small{display:block;font-size:10px;color:var(--muted);line-height:1.5;margin-top:2px}.choice-check{border:1px solid #c3d0d2;width:17px;height:17px;border-radius:50%;flex-shrink:0}.selected .choice-check{background:#163f46;border-color:#163f46;color:white;padding:2px}.delivery-promise{font-size:10px;color:#3e646b;margin:12px 0 0}.action-row{display:flex;gap:12px;margin-top:24px;align-items:center}.primary{border:0;border-radius:7px;background:var(--teal);color:#102b30;min-height:48px;padding:12px 18px;font-size:13px;font-weight:600;flex:1;display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%}.primary:hover{background:#73d6e0}.primary>span{font-size:18px;font-weight:400}.back,.edit-details{background:none;border:0;font-size:11px;padding:9px 0;min-height:44px;text-decoration:none}.back{padding:8px 12px 8px 0}.reassurance{font-size:9px;text-align:center;color:var(--muted);margin:13px 0 0;line-height:1.6}.site-footer{max-width:1320px;margin:0 auto 28px;padding:0 5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.3px;color:var(--muted);gap:18px}.site-footer a{min-height:44px}.amounts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.amounts button{min-height:48px;background:var(--surface);border:1px solid var(--line);border-radius:7px;font-size:16px}.amounts button.selected{border-color:#2b8997;background:#eaf9fb;box-shadow:inset 0 0 0 1px #2b8997}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>span{font-size:11px;font-weight:500}.field>span small{font-weight:400;color:var(--muted);font-size:10px;margin-left:4px}.field input,.field textarea{width:100%;padding:10px 12px;min-height:46px;border:1px solid #cbd7d8;border-radius:7px;background:var(--surface);font-size:14px}.field input::placeholder,.field textarea::placeholder{color:#718084;opacity:1}.field textarea{height:85px;resize:vertical}.field.custom{margin-top:18px}.custom>div{display:flex;align-items:center;border:1px solid #cbd7d8;border-radius:7px;overflow:hidden}.custom b{font-size:12px;font-weight:500;padding-left:12px;white-space:nowrap}.custom input{border:0}.field>small,.quiet{font-size:10px;line-height:1.65;color:var(--muted);margin:0}.quiet{margin-top:15px}.designs{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.designs button{background:none;border:1px solid var(--line);padding:6px;border-radius:7px;text-align:left;min-height:80px}.designs button.selected{border-color:#328e9b;box-shadow:inset 0 0 0 1px #328e9b}.mini-card{display:block;background:var(--teal);color:#16383b;aspect-ratio:1.55;padding:9px 7px;font-size:13px;font-weight:500;line-height:1.2;letter-spacing:-.6px}.mini-card b{font-size:7px;font-weight:400;letter-spacing:.2px}.mini-card.birthday{background:#17373b;color:white;position:relative}.mini-card.thankyou{background:white;border:1px solid #d4e7e9;color:#1d606a}.designs button>span+span{font-size:9px;display:block;padding:5px 2px 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px 12px}.wide{grid-column:1/-1}.check{display:flex;align-items:center;min-height:44px;gap:9px;font-size:12px;cursor:pointer}.check input{accent-color:#246b75;width:17px;height:17px}.timing{margin-top:15px;border-top:1px solid var(--line);padding-top:10px}.timing .quiet{margin-top:8px}.privacy-note{background:#f0fafa;border:1px solid #d8edef;color:#36585e;border-radius:7px;padding:12px;display:flex;gap:12px;font-size:11px;line-height:1.6;margin-top:18px}.privacy-note svg{width:20px;height:20px;flex-shrink:0}.privacy-note p{margin:0}.privacy-note strong{font-weight:500}.error{font-size:12px;border-left:2px solid #314f55;color:var(--ink);padding:8px 10px;background:var(--paper);margin:14px 0 0}.review{margin:20px 0 0}.review>div{display:flex;align-items:start;justify-content:space-between;gap:22px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}.review dt{color:var(--muted);font-size:11px;flex-shrink:0;max-width:40%}.review dd{margin:0;text-align:right;overflow-wrap:anywhere}.review .total{padding-top:18px;border-bottom:0;font-size:22px}.review .total dt{color:var(--ink);font-size:13px;padding-top:5px}.edit-details{text-decoration:underline}.success-mark{border-radius:50%;background:#e1f5f6;width:52px;height:52px;padding:14px;margin:6px 0 20px;color:#1c626d}.success-mark svg{width:100%;height:100%}.preview-end{background:var(--paper);border:1px solid var(--line);padding:16px;font-size:12px;margin:22px 0;border-radius:7px}.voucher[data-style=birthday]{background:#17373b;color:#f1ffff}.voucher[data-style=birthday] .voucher-kind{font-size:0}.voucher[data-style=birthday] .voucher-kind:after{content:'HAPPY BIRTHDAY';font-size:8px}.voucher[data-style=thankyou]{background:#fff;color:#17383f;outline:1px solid #a3d6dd;outline-offset:-10px}.voucher[data-style=thankyou] .voucher-kind{font-size:0}.voucher[data-style=thankyou] .voucher-kind:after{content:'A LITTLE THANK YOU';font-size:8px}
/* Each direction changes composition, hierarchy and treatment, within KiWest's palette. */
body[data-direction=object]{--paper:#f3f6f5}.experience:has(+.unused){display:block}body[data-direction=object] .experience{max-width:800px;grid-template-columns:1fr;grid-template-areas:'intro' 'visual' 'form';gap:28px}body[data-direction=object] .intro{text-align:center}body[data-direction=object] h1{margin-left:auto;margin-right:auto;font-size:52px}body[data-direction=object] .intro-copy{margin-bottom:16px}body[data-direction=object] .intro-meta{justify-content:center}body[data-direction=object] .photo{display:none}body[data-direction=object] .voucher{width:430px;max-width:100%;margin:0 auto;transform:rotate(-3deg);aspect-ratio:1.8}body[data-direction=object] .checkout{max-width:500px;width:100%;margin:auto;border:0;background:transparent;padding:20px 0}body[data-direction=object] .who{grid-template-columns:1fr 1fr}body[data-direction=object] .who .choice{display:block;padding:18px}body[data-direction=object] .who .choice-icon{display:block;margin-bottom:12px}body[data-direction=object] .who .choice-check{position:absolute;right:14px;top:16px}
body[data-direction=editorial]{--paper:#fff;--radius:0}body[data-direction=editorial] .experience{grid-template-columns:1.1fr 1fr;gap:0 8%}body[data-direction=editorial] h1{font-size:clamp(54px,6vw,86px);font-weight:300;line-height:1;letter-spacing:-4px;border-top:2px solid var(--ink);padding-top:24px}body[data-direction=editorial] .checkout{border:0;border-left:1px solid var(--line);padding:0 0 0 28px;box-shadow:none}body[data-direction=editorial] .photo{height:190px;border-radius:0;margin-top:32px}body[data-direction=editorial] .voucher{position:absolute;bottom:0;right:-18px;max-width:240px;padding:16px 18px;aspect-ratio:1.6;transform:rotate(4deg);border-radius:0}body[data-direction=editorial] .voucher-top>span:first-child{font-size:20px}body[data-direction=editorial] .voucher-main strong{font-size:32px}body[data-direction=editorial] .voucher-kind{display:none}body[data-direction=editorial] .visual-caption{display:none}body[data-direction=editorial] .choice{border:0;border-bottom:1px solid var(--line);border-radius:0;background:white;box-shadow:none;padding-left:0;padding-right:0}body[data-direction=editorial] .choice.selected .choice-text strong{text-decoration:underline;text-decoration-color:var(--teal);text-decoration-thickness:3px;text-underline-offset:5px}body[data-direction=editorial] .primary,body[data-direction=editorial] .field input,body[data-direction=editorial] .field textarea{border-radius:0}body[data-direction=editorial] .step-caption{font-size:10px;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:12px}
body[data-direction=noir]{--ink:#eef6f6;--muted:#b1c3c5;--paper:#101c1e;--surface:#17272a;--line:#344b50;--radius:10px}body[data-direction=noir] .prototype-note{background:#20383d;color:#d2eeee}body[data-direction=noir] .wordmark img{filter:brightness(0) invert(1)}body[data-direction=noir] .experience{grid-template-areas:'intro form' 'visual form';gap:25px 8%}body[data-direction=noir] h1{font-size:clamp(40px,5vw,72px);font-weight:300;color:#e6f9fa}body[data-direction=noir] .photo{opacity:.75}body[data-direction=noir] .voucher{background:#183e46;border:1px solid #52939f;color:#e3ffff;box-shadow:0 15px 44px #0006}body[data-direction=noir] .choice.selected{border-color:#74ceda;background:#23434a;box-shadow:inset 0 0 0 1px #74ceda}body[data-direction=noir] .selected .choice-check{background:#5cccda;color:#123138;border-color:#5cccda}body[data-direction=noir] .delivery-promise{color:#a9dde3}body[data-direction=noir] .steps button[aria-current]>span{background:#5cccda;color:#10313a;border-color:#5cccda}body[data-direction=noir] .privacy-note{background:#203c42;border-color:#375e67;color:#d0ecf0}body[data-direction=noir] .mini-card.signature{color:#10383e}body[data-direction=noir] .amounts button.selected{background:#23434a;border-color:#74ceda;box-shadow:inset 0 0 0 1px #74ceda}body[data-direction=noir] .field input,body[data-direction=noir] .field textarea{border-color:#537078;color:#eef6f6}body[data-direction=noir] .field input::placeholder,body[data-direction=noir] .field textarea::placeholder{color:#b0c5c9}body[data-direction=noir] .success-mark{background:#24434b;color:#bceef2}
body[data-direction=concierge]{--paper:white}body[data-direction=concierge] .experience{max-width:700px;grid-template-columns:1fr;grid-template-areas:'intro' 'form' 'visual';gap:24px;margin-top:30px}body[data-direction=concierge] .intro{text-align:center}body[data-direction=concierge] h1{font-size:40px;margin:0 auto 12px;letter-spacing:-1.2px}body[data-direction=concierge] .intro-copy,body[data-direction=concierge] .intro-meta{display:none}body[data-direction=concierge] .checkout{padding:0;max-width:460px;width:100%;margin:auto;border:0;box-shadow:none}body[data-direction=concierge] .steps{padding-bottom:24px}body[data-direction=concierge] .checkout h2{font-size:28px}body[data-direction=concierge] .visual{display:none}body[data-direction=concierge] .who{grid-template-columns:1fr 1fr}body[data-direction=concierge] .who .choice{flex-direction:column;align-items:start;padding:16px;gap:9px}body[data-direction=concierge] .who .choice-check{position:absolute;top:17px;right:15px}body[data-direction=concierge] .primary{border-radius:30px;background:#133b42;color:white}body[data-direction=concierge] .site-header{border:0}
body[data-direction=gallery]{--paper:#fff;--radius:0}body[data-direction=gallery] .experience{position:relative;max-width:1440px;grid-template-columns:1fr 1.1fr;grid-template-areas:'visual visual' 'intro form';gap:40px 10%;margin-top:0}body[data-direction=gallery] .visual{margin:0 -5.55%;padding-bottom:0;height:330px;overflow:hidden}body[data-direction=gallery] .photo{height:100%;border-radius:0}body[data-direction=gallery] .photo img{object-position:center 40%}body[data-direction=gallery] .voucher{position:absolute;right:8%;top:54px;margin:0;width:320px;transform:rotate(-4deg)}body[data-direction=gallery] .visual-caption{display:none}body[data-direction=gallery] .intro{padding-top:22px}body[data-direction=gallery] h1{font-size:clamp(40px,5vw,68px)}body[data-direction=gallery] .checkout{border:0;padding:20px 0 0;box-shadow:none}body[data-direction=gallery] .steps{border-bottom:1px solid var(--line);margin-bottom:25px;padding-bottom:14px}body[data-direction=gallery] .choice{border-radius:0}body[data-direction=gallery] .primary{border-radius:0}
body[data-direction=studio]{--paper:#edf6f6;--radius:12px}body[data-direction=studio] .experience{grid-template-columns:1fr 1fr;grid-template-areas:'intro intro' 'visual form';gap:22px 5%;margin-top:26px}body[data-direction=studio] .intro{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;border-bottom:1px solid #cbdcde;padding-bottom:24px}body[data-direction=studio] .eyebrow{grid-column:1/-1;margin-bottom:10px}body[data-direction=studio] h1{font-size:42px;margin:0;letter-spacing:-1.3px}body[data-direction=studio] .intro-copy{font-size:12px;margin:0;padding-left:20px}body[data-direction=studio] .intro-meta{display:none}body[data-direction=studio] .visual{background:#dcecef;padding:66px 20px;position:sticky;top:24px;min-height:460px;display:flex;flex-direction:column;justify-content:center;border-radius:12px}body[data-direction=studio] .photo{position:absolute;inset:0;opacity:.1;height:100%}body[data-direction=studio] .voucher{position:relative;margin:0 auto;width:90%;transform:rotate(-5deg)}body[data-direction=studio] .visual-caption{position:relative;margin-top:28px;font-size:10px}body[data-direction=studio] .checkout{padding:26px 30px;background:white}
body[data-direction=ticket]{--paper:#f4f7f7;--radius:0}body[data-direction=ticket] .experience{grid-template-columns:1fr .85fr;gap:24px 8%;max-width:1120px}body[data-direction=ticket] .intro h1{font-size:49px;letter-spacing:-1.7px}body[data-direction=ticket] .photo{display:none}body[data-direction=ticket] .voucher{width:100%;margin:0;aspect-ratio:1.65;border-radius:0;background:#fff;box-shadow:0 8px 20px #12303610;border-top:8px solid var(--teal);color:#14343c;padding-bottom:32px}body[data-direction=ticket] .voucher:after{content:'';position:absolute;bottom:22px;left:0;width:100%;border-top:1px dashed #8daeb3}body[data-direction=ticket] .voucher-main strong{font-weight:400}body[data-direction=ticket] .voucher-seal{right:12px;bottom:-35px;font-size:240px}body[data-direction=ticket] .checkout{border:0;box-shadow:0 5px 25px #203f3f08;border-top:2px solid #15282b}body[data-direction=ticket] .choice{border-radius:0;border-width:0 0 1px;padding:14px 0}body[data-direction=ticket] .choice.selected{background:#fff;box-shadow:none;border-bottom-color:#3da9b9}body[data-direction=ticket] .primary{border-radius:0;background:#173c44;color:white}body[data-direction=ticket] .visual-caption{text-align:left;margin-top:20px}body[data-direction=ticket] .steps{gap:5px}
body[data-direction=airy]{--paper:#fff;--radius:0}body[data-direction=airy] .experience{grid-template-columns:1fr 1fr;gap:30px 12%;margin-top:65px}body[data-direction=airy] .intro{border-left:3px solid var(--teal);padding-left:26px}body[data-direction=airy] h1{font-size:58px;font-weight:300}body[data-direction=airy] .checkout{padding:0;border:0;box-shadow:none}body[data-direction=airy] .visual{padding-left:28px;padding-top:12px}body[data-direction=airy] .photo{height:200px;width:70%;margin-left:auto;border-radius:0}body[data-direction=airy] .voucher{margin:-85px 0 0;width:70%;border-radius:0;padding:17px 21px;aspect-ratio:1.6;box-shadow:0 8px 24px #20505b12}body[data-direction=airy] .voucher-top>span:first-child{font-size:22px}body[data-direction=airy] .voucher-kind{display:none}body[data-direction=airy] .voucher-main strong{font-size:38px}body[data-direction=airy] .visual-caption{text-align:left}body[data-direction=airy] .who{grid-template-columns:1fr 1fr}body[data-direction=airy] .who .choice{flex-direction:column;align-items:start;padding:16px;gap:12px}body[data-direction=airy] .who .choice-check{position:absolute;right:14px;top:17px}body[data-direction=airy] .choice{border-radius:0}body[data-direction=airy] .primary{border-radius:0}
body[data-direction=express]{--paper:#fff;--radius:8px}body[data-direction=express] .experience{grid-template-columns:1fr 300px;grid-template-areas:'intro visual' 'form visual';max-width:1000px;gap:12px 50px;margin-top:35px}body[data-direction=express] h1{font-size:39px;letter-spacing:-1.2px;max-width:500px}body[data-direction=express] .intro-copy,body[data-direction=express] .intro-meta{display:none}body[data-direction=express] .checkout{padding:0;border:0;box-shadow:none}body[data-direction=express] .visual{position:sticky;top:30px;background:#f1f7f7;padding:20px;border:1px solid #dce8e9;border-radius:8px}body[data-direction=express] .photo{height:140px;border-radius:5px}body[data-direction=express] .voucher{margin:-42px auto 0;width:100%;padding:13px 15px;aspect-ratio:1.6;border-radius:5px}body[data-direction=express] .voucher-top>span:first-child{font-size:21px}body[data-direction=express] .voucher-main strong{font-size:37px}body[data-direction=express] .voucher-kind{display:none}body[data-direction=express] .visual-caption{font-size:10px;max-width:200px;margin:18px auto 0}body[data-direction=express] .who{grid-template-columns:1fr 1fr}body[data-direction=express] .who .choice-icon{display:none}body[data-direction=express] .choice{min-height:60px}body[data-direction=express] .steps{padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:18px}body[data-direction=express] .step-caption{display:none}body[data-direction=express] h2{font-size:25px}body[data-direction=express] .site-header{padding-top:18px;padding-bottom:18px}
@media(min-width:1500px){.experience{margin-top:64px}.photo{height:300px}}
@media(max-width:900px) and (min-width:701px){.experience{gap:20px 5%;grid-template-columns:minmax(0,.9fr) minmax(330px,1fr);padding:0 4%}.checkout{padding:22px}h1{font-size:39px}body[data-direction=express] .experience{grid-template-columns:1fr 230px;gap:20px 24px}body[data-direction=airy] .experience{gap:20px 7%}.choice{padding:11px;gap:8px}.voucher-kind{display:none}body[data-direction=editorial] h1{font-size:57px}.voucher{padding:20px}.voucher-main strong{font-size:44px}body[data-direction=studio] h1{font-size:36px}body[data-direction=object] .experience,body[data-direction=concierge] .experience{grid-template-columns:1fr}}
@media(max-width:700px){.prototype-note{padding:0 18px;font-size:7px;letter-spacing:.5px;min-height:34px}.prototype-note button{font-size:9px;min-height:34px}.site-header{padding:16px 20px;border-bottom:1px solid var(--line)}.wordmark img{width:91px}.header-note{display:none}.location{font-size:7px;letter-spacing:1.2px}.experience,body[data-direction] .experience{display:flex;flex-direction:column;gap:22px;padding:0 20px;margin:24px auto 30px;max-width:540px}.intro,body[data-direction] .intro{width:100%;padding:0;border:0;display:block;text-align:left}.intro h1,body[data-direction] h1{font-size:33px;letter-spacing:-1.2px;font-weight:300;line-height:1.12;margin:0;padding:0;border:0;max-width:430px}.eyebrow,body[data-direction] .eyebrow{font-size:7px;letter-spacing:1.8px;margin:0 0 10px}.intro-copy,.intro-meta,body[data-direction] .intro-copy{display:none}.checkout,body[data-direction] .checkout{order:2;width:100%;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;max-width:none;margin:0}.visual,body[data-direction] .visual{order:3;position:relative;top:auto;width:100%;margin:10px 0 0;padding:0;min-height:0;height:auto;display:block;background:transparent;border:0}.photo,body[data-direction] .photo{display:none}.voucher,body[data-direction] .voucher{position:relative;top:auto;right:auto;bottom:auto;width:100%;max-width:360px;margin:0 auto;transform:none;aspect-ratio:1.75;padding:20px 24px;border-radius:9px}.voucher-main,body[data-direction] .voucher-main{padding:12px 0}.voucher-main strong,body[data-direction] .voucher-main strong{font-size:48px}.voucher-top>span:first-child,body[data-direction] .voucher-top>span:first-child{font-size:25px}.voucher-kind{display:block;font-size:7px}.visual-caption,body[data-direction] .visual-caption{display:block;text-align:center;font-size:9px;max-width:none;margin:15px 0 0}.steps,body[data-direction] .steps{padding-bottom:16px;margin-bottom:0;border-bottom:0;gap:5px}.steps button{font-size:9px;min-height:44px}.steps button>span{height:19px;min-width:19px;font-size:8px}.step-caption,body[data-direction] .step-caption{display:none}h2,body[data-direction] .checkout h2{font-size:24px;letter-spacing:-.6px;margin-bottom:8px}h3{font-size:12px;margin:18px 0 9px}.section-copy{font-size:11px;line-height:1.6;margin-bottom:15px}.who,body[data-direction] .who{grid-template-columns:1fr 1fr;gap:8px}.choice,.who .choice,body[data-direction] .who .choice{display:flex;flex-direction:row;align-items:center;min-height:60px;padding:11px 10px;gap:9px;box-shadow:none}.who .choice-icon,body[data-direction] .who .choice-icon{display:none}.choice-icon{width:21px;height:21px}.choice strong{font-size:12px}.choice small{font-size:9px;line-height:1.45}.who .choice-check,body[data-direction] .who .choice-check{position:static;width:15px;height:15px}.choice-check{width:16px;height:16px}.choice .choice-text{min-width:0}.choice .choice-check{flex-shrink:0}.delivery{gap:8px}.delivery-promise{font-size:9px;margin-top:9px}.action-row{margin-top:18px;gap:12px}.primary{font-size:12px;min-height:48px}.reassurance{font-size:8px;margin-top:10px}.site-footer{font-size:8px;padding:20px;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line)}.site-footer a{width:100%;display:flex;align-items:center}.field input,.field textarea{font-size:16px;min-height:46px}.fields{gap:14px 10px}.fields>.field:not(.wide){grid-column:1/-1}.timing .fields>.field{grid-column:auto}.review>div{font-size:11px}.review dt{font-size:10px}.review .total dd{font-size:22px}.preview-end{font-size:11px}.privacy-note{font-size:10px;padding:11px}.amounts button{font-size:15px}.designs{gap:8px}.designs button>span+span{font-size:10px}.designs button{min-height:105px}.mini-card{padding:9px;font-size:15px}.mini-card b{font-size:8px}.quiet{font-size:10px}body[data-step="0"] .visual{display:none}body[data-step="0"] .site-footer{display:none}body[data-step="0"] .experience{gap:12px;margin-top:19px}body[data-direction=noir] .checkout{background:transparent}body[data-direction=editorial] .choice,body[data-direction=ticket] .choice{border-radius:0}body[data-direction=concierge] .who .choice{padding:13px 10px}body[data-direction=concierge] .intro{text-align:center}body[data-direction=concierge] h1{font-size:29px}body[data-direction=gallery] .site-header{border-bottom:3px solid var(--teal)}body[data-direction=ticket] .checkout{border-top:1px dashed #779ca3;padding-top:8px}body[data-direction=airy] .intro{border-left:2px solid var(--teal);padding-left:13px}body[data-direction=studio] .checkout{padding:16px;background:#fff;border:1px solid var(--line);border-radius:12px}body[data-direction=studio] .experience{padding:0 14px;gap:15px}body[data-direction=object] .intro{text-align:center}body[data-direction=object] h1{font-size:30px}body[data-direction=express] h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.prototype-note,.site-header,.checkout,.intro,.site-footer{display:none!important}.experience{display:block!important}.visual{display:block!important}.voucher{margin:0!important;box-shadow:none!important}.photo,.visual-caption{display:none!important}}
/* Measured small-phone adjustments: keep every initial choice and Continue visible. */
.prototype-note{min-height:44px}.prototype-note button{min-height:44px}.wordmark{min-height:44px;display:flex;align-items:center}.wordmark img{height:38px;object-fit:contain;object-position:left}.steps button{min-height:44px}
@media(max-width:700px){.site-header{padding:6px 20px;min-height:57px}.wordmark img{height:32px;width:100px}.prototype-note{min-height:44px}.prototype-note button{min-height:44px}.steps,body[data-direction] .steps{padding-bottom:8px}body[data-step="0"] .intro h1{display:none}body[data-step="0"] .intro .eyebrow{margin:0}body[data-step="0"] .experience{margin-top:14px;gap:6px}body[data-step="0"] .section-copy{margin-bottom:12px}body[data-step="0"] h3{margin-top:16px}body[data-step="0"] .action-row{margin-top:15px}.choice{min-height:60px}}
.amounts{grid-template-columns:repeat(3,1fr)}.pdf-action,.email-action{display:block;border:1px solid #bfd3d6;background:#fff;color:#1b4b55;text-align:center;padding:12px 14px;border-radius:7px;min-height:46px;width:100%;font-size:12px;text-decoration:none;margin-top:10px;overflow-wrap:anywhere}.email-action{text-align:left}.consent{align-items:flex-start;gap:10px;margin:18px 0 0;padding:4px 0;font-size:11px}.consent input{flex-shrink:0;margin-top:13px}.consent button{display:inline;background:none;border:0;padding:0;color:#245e69;text-decoration:underline;font-size:11px;line-height:1.4;min-height:44px;text-align:left}.primary:disabled{opacity:.5;cursor:default}dialog{width:min(940px,94vw);height:min(830px,92dvh);padding:0;border:1px solid #b7d3d8;border-radius:13px;color:#15282b;background:white;box-shadow:0 20px 80px #0004}dialog::backdrop{background:#102a3580}dialog>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 18px;border-bottom:1px solid #dce8e9}dialog h2{font-size:18px;margin:0}dialog>header>button{min-height:44px;width:44px;border:0;background:none;font-size:28px}.terms-content{font-size:13px;line-height:1.8;padding:10px 24px 30px;overflow:auto;height:100%}.terms-content .th{font-weight:600;margin-top:20px}.terms-content ul{padding-left:20px}#viewerBody{height:calc(100% - 69px);overflow:auto}#viewerBody>div{height:100%}#viewerBody iframe{display:block;width:100%;height:calc(100% - 65px);min-height:320px;border:0}.email-meta{font-size:11px;padding:13px 18px;margin:0;background:#edf7f8;overflow-wrap:anywhere}.email-previews h3{margin-top:22px}.error{background:#edf5f6;color:#173f47}.visual{position:sticky;top:24px}.site-footer a{min-height:44px;display:flex;align-items:center}@media(max-width:700px){.visual{position:relative;top:auto}.consent{font-size:11px}.pdf-action{font-size:12px}dialog{width:96vw;height:92dvh}dialog h2{font-size:15px}.terms-content{padding:8px 18px 25px}#viewerBody iframe{height:calc(100% - 90px)}.review>div{min-height:40px}}

/* Signature voucher: full message on the right; details flow below it. */
.voucher,body[data-direction] .voucher{display:grid;grid-template-columns:35% minmax(0,1fr);width:100%;max-width:600px;padding:0;aspect-ratio:auto;min-height:270px;overflow:visible;background:white;border:1px solid #d0e0e1;border-radius:12px;align-items:stretch}
.voucher-face{background:var(--teal);padding:23px 18px;border-radius:11px 0 0 11px;display:flex;flex-direction:column;gap:16px;min-width:0}.voucher-top>span:first-child{font-size:23px;letter-spacing:-1px}.voucher-top small{font-size:7px}.voucher-kind{display:block;font-size:7px;letter-spacing:1.5px}.voucher-main,body[data-direction] .voucher-main{padding:5px 0;min-width:0}.voucher-main strong,body[data-direction] .voucher-main strong{font-size:clamp(26px,3vw,43px);max-width:100%;overflow-wrap:anywhere;letter-spacing:-1px}.currency{font-size:6px;letter-spacing:1px}.voucher-note{font-size:9px;margin-top:auto}.voucher-right{padding:25px 23px 15px;min-width:0;display:flex;flex-direction:column}.voucher-for{display:flex;flex-direction:column;font-size:9px;gap:5px}.voucher-for b{font-size:20px;line-height:1.25;overflow-wrap:anywhere}.voucher-right>small{font-size:10px;margin-top:12px;overflow-wrap:anywhere}.voucher-bottom{margin-top:19px;font-size:12px;line-height:1.7}.message-label{font-size:7px;letter-spacing:1.2px;color:var(--muted);margin-bottom:6px}#cardMessage{white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal}.voucher-details{display:flex;flex-wrap:wrap;gap:10px 16px;border-top:1px solid var(--line);padding-top:14px;margin-top:20px;font-size:6px;color:var(--muted)}.voucher-details span{flex:1 1 70px}.voucher-details b{font-size:8px;color:var(--ink);font-weight:500;line-height:1.6;display:inline-block;margin-top:4px}.voucher-terms{font-size:7px;color:var(--muted);line-height:1.7;margin:17px 0 0;overflow-wrap:anywhere}.timing-choices{display:flex;flex-wrap:wrap;gap:8px 20px}.timing .check{min-height:44px;align-items:center}.timing .fields{margin-top:12px}.review dd{white-space:pre-wrap;overflow-wrap:anywhere}.visual{position:relative;top:auto}.voucher-seal{display:none}
@media(max-width:700px){.voucher,body[data-direction] .voucher{grid-template-columns:33% minmax(0,1fr);margin:0 auto;min-height:250px}.voucher-face{padding:17px 12px;gap:14px}.voucher-top>span:first-child,body[data-direction] .voucher-top>span:first-child{font-size:19px}.voucher-top small{display:block;margin:3px 0 0}.voucher-kind{font-size:6px;letter-spacing:.7px}.voucher-right{padding:20px 15px 14px}.voucher-for b{font-size:18px}.voucher-bottom{font-size:11px}.voucher-main strong,body[data-direction] .voucher-main strong{font-size:28px}.voucher-details{gap:9px;font-size:6px}.voucher-note{font-size:8px}.voucher-details b{font-size:8px}.currency{font-size:5px;letter-spacing:.7px}}

.date-window{padding:12px 14px;background:#e8f5f7;border:1px solid #bedee2;border-radius:8px;margin:12px 0}.date-window p{font-size:11px;line-height:1.65;margin:0 0 6px}.date-window strong{font-weight:600}.date-window button{border:1px solid #659ca4;background:#fff;border-radius:6px;padding:8px 12px;min-height:44px;font-size:11px}.schedule-notice{padding:10px 12px;background:#eef6ed;color:#21442d;font-size:11px;line-height:1.6;border-radius:6px}.field #messageCount{display:block;text-align:right;font-size:10px;margin-top:5px}.terms-content>.pdf-action{position:sticky;bottom:0;box-shadow:0 -8px 12px white}

@media(min-width:769px) and (max-width:1100px){body[data-mode=live] .main-nav .nav-menu{gap:10px;flex-wrap:wrap;padding:10px 12px;justify-content:center}body[data-mode=live] .main-nav .nav-menu>li>a{white-space:nowrap;font-size:12px;padding-left:4px;padding-right:4px}body[data-mode=live] .main-nav .nav-menu .nav-book-btn{padding:12px 16px!important}}

body[data-mode=live] .experience{margin-top:38px}body[data-mode=live] .voucher-seo{margin-bottom:45px}body[data-mode=live] .voucher-seo h2,body[data-mode=live] .voucher-seo h3{line-height:1.4}body[data-mode=live] .experience a{color:inherit}body[data-mode=live] .checkout .steps{position:static;box-shadow:none}body[data-mode=live] .checkout .steps button{min-height:44px}body[data-mode=live] .checkout h2,body[data-mode=live] .checkout h3{text-transform:none}body[data-mode=live] .mobile-bottom-nav{z-index:900}body[data-mode=live] dialog{z-index:10000}@media(max-width:700px){body[data-mode=live] .experience{margin-top:14px}body[data-mode=live] .top-bar{height:64px;min-height:64px;padding:4px 16px}body[data-mode=live] .top-bar .logo-image{height:56px;width:auto}body[data-mode=live][data-step="0"] .section-copy{margin-bottom:8px}body[data-mode=live][data-step="0"] h3{margin-top:12px}body[data-mode=live] .steps{padding-bottom:4px}body[data-mode=live] .intro h1{display:block;font-size:30px}body[data-mode=live][data-step="0"] .intro h1{display:none}body[data-mode=live] .experience{padding-bottom:28px}}
