@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600&display=swap');
:root{--ink:#343b30;--sage:#5a6350;--muted:#73776b;--paper:#faf8f1;--line:#d9dbce}*{box-sizing:border-box}body{margin:0;background:#efeee5;color:var(--ink);font:14px 'DM Sans',sans-serif}header{max-width:1300px;margin:auto;padding:30px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}header a{color:inherit;text-decoration:none;letter-spacing:3px;font-size:18px}header a span{display:block;font-size:9px;letter-spacing:2.4px;margin-top:7px}.edition,.eyebrow{font-size:10px;letter-spacing:2px}main{max-width:1190px;margin:auto;padding:0 35px}.intro{padding:60px 0 38px}.intro h1{font:64px/1.02 'Cormorant Garamond',Georgia,serif;margin:15px 0 22px;font-weight:400}.intro h1 i{color:var(--sage)}.intro>p:last-child{color:var(--muted);line-height:1.9}.layout{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(400px,1fr);gap:75px;align-items:start}.editor{padding-top:24px}.editor h2{font:34px 'Cormorant Garamond',Georgia,serif;margin:12px 0 28px}label{display:block;font-size:12px;line-height:1.5;margin:0 0 19px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}input,textarea{display:block;width:100%;border:1px solid #c5cabb;border-radius:3px;background:#f9f9f3;color:var(--ink);padding:12px;margin-top:7px;font:14px 'DM Sans',sans-serif}input:focus,textarea:focus{outline:2px solid #6a735b;outline-offset:2px}textarea{resize:vertical}small{font-size:10px}summary{cursor:pointer;padding:16px 0;border-top:1px solid var(--line);font-weight:500}.hint{font-size:11px;line-height:1.7;color:var(--muted)}.voucher{background:var(--paper);padding:32px 39px;box-shadow:0 16px 55px #343b3012;border:1px solid #d4d6c6;text-align:center}.card-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.7px;padding-bottom:22px;border-bottom:1px solid var(--line)}.monogram{width:70px;height:70px;border:1px solid #a3aa93;border-radius:50%;margin:25px auto 22px;font:32px/70px 'Cormorant Garamond',Georgia,serif}.voucher h2{font:48px/1.02 'Cormorant Garamond',Georgia,serif;margin:18px 0 25px;font-weight:400}.voucher h2 i{font-weight:400}.dedication{padding:6px 0 22px}.dedication p:first-child,.from{font-size:9px;letter-spacing:1.5px}.dedication strong{font-weight:500;font-size:13px;letter-spacing:.5px;margin-left:7px}#vMessage{font:italic 22px/1.35 'Cormorant Garamond',Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:19px 0}.service{padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;line-height:1.8}.zone{letter-spacing:2px;font-size:9px;margin-top:18px}.cities{font-size:10px;color:var(--muted)}.redeem{display:flex;gap:19px;text-align:left;align-items:center;padding:24px 0}.redeem img{flex-shrink:0}.redeem h3{font:25px 'Cormorant Garamond',Georgia,serif;margin:0 0 8px}.redeem p{font-size:10px;line-height:1.7;margin:0 0 10px}.booking{color:var(--ink);font-size:11px;text-underline-offset:4px}.purchase{margin:0;text-align:left;border-top:1px solid var(--line);padding-top:13px;font-size:9px}.purchase div{display:grid;grid-template-columns:110px 1fr;margin:5px 0;gap:10px}.purchase dt{color:var(--muted)}.purchase dd{margin:0;overflow-wrap:anywhere}.terms{font-size:8px;line-height:1.7;color:var(--muted);margin:18px 0 0}.actions{display:flex;gap:8px;margin-top:23px;flex-wrap:wrap}button{cursor:pointer;background:var(--sage);color:white;padding:14px 17px;border:1px solid var(--sage);border-radius:3px;font:12px 'DM Sans',sans-serif}.secondary{background:transparent;color:var(--ink)}button:hover{filter:brightness(.93)}.text-button{background:transparent;border:0;color:var(--ink);text-decoration:underline;padding:10px 0}.status{font-size:12px;min-height:18px}.print-url{display:none}.how{margin:65px 0 50px;padding-top:30px;border-top:1px solid var(--line)}.how>div{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.how p{font-size:12px;line-height:1.8;color:var(--muted)}.how b{display:block;color:var(--ink);font-weight:500;margin-bottom:9px}footer{padding:25px 5%;border-top:1px solid var(--line);font-size:9px;letter-spacing:1.6px;display:flex;justify-content:space-between}footer span{letter-spacing:0;color:var(--muted)}body.recipient .editor,body.recipient .how{display:none}body.recipient .layout{display:block;max-width:600px;margin:0 auto 45px}body.recipient .intro{text-align:center}body.recipient .intro h1{font-size:48px}body.recipient #introText{display:none}body.recipient .intro{padding:35px 0 20px}
@media(max-width:760px){header{padding:23px}.edition{display:none}main{padding:0 20px}.intro{padding:36px 0 20px}.intro h1{font-size:50px}.layout{grid-template-columns:1fr;gap:30px}.editor{padding-top:0}.voucher{padding:25px 22px}.voucher h2{font-size:44px}.how>div{grid-template-columns:1fr;gap:4px}.how{margin:35px 0}.redeem{gap:12px}.redeem img{width:80px;height:80px}footer span{display:none}.actions button{flex:1;white-space:nowrap;padding:13px 10px}}
@page{size:A4;margin:14mm}@media print{body{background:white;color:#222}header,.intro,.editor,.actions,.status,.print-help,.how,footer,#edit,#copyFallback{display:none!important}main{padding:0;max-width:none}.layout,body.recipient .layout{display:block;max-width:none;margin:0}.voucher{box-shadow:none;max-width:170mm;margin:0 auto;border:1px solid #aaa;padding:9mm;break-inside:avoid}.voucher h2{font-size:38pt}.monogram{margin:5mm auto}.print-url{display:block!important;overflow-wrap:anywhere;font-size:8px!important}.booking{display:none}.terms{font-size:8pt}.purchase{font-size:8pt}.gift-wrap{width:100%}.service{font-size:10pt}.cities{font-size:9pt}}
