
/* latin */
@font-face {
  font-family: 'Libre Caslon Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/0ea95dee-d038-471d-a2d3-0189a515a82f.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin */
@font-face {
  font-family: 'Libre Caslon Text';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/8390c577-d8ac-4cd5-a406-b650f4850df3.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin */
@font-face {
  font-family: 'Libre Caslon Text';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/439da9e8-863e-45e5-92f1-df8eb25b5079.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin */
@font-face {
  font-family: 'Libre Caslon Text';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/97c637bf-1d38-46b2-a6b7-0236575eb141.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* latin */
@font-face {
  font-family: 'Pinyon Script';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/05f4dc38-6ce7-4ca2-afc5-7150e341fdff.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


body{margin:0;background:#F2F2F0}
a{color:#183328}a:hover{color:#B3202C}
.lfs{container-type:inline-size}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.wrap{max-width:1240px;margin:0 auto;padding-left:clamp(20px,5cqi,72px);padding-right:clamp(20px,5cqi,72px)}

/* Tartan: the envelope liner, rebuilt as a bias-cut sett */
.tartan{--u:1px;background-color:#8E1B25;background-image:
repeating-linear-gradient(0deg,rgba(0,0,0,.07) 0 1px,transparent 1px 3px),
repeating-linear-gradient(45deg,transparent 0 calc(22*var(--u)),rgba(20,44,34,.5) calc(22*var(--u)) calc(24*var(--u)),transparent calc(24*var(--u)) calc(48*var(--u)),rgba(20,44,34,.86) calc(48*var(--u)) calc(80*var(--u)),transparent calc(80*var(--u)) calc(85*var(--u)),rgba(240,231,212,.72) calc(85*var(--u)) calc(87*var(--u)),transparent calc(87*var(--u)) calc(92*var(--u)),rgba(240,231,212,.58) calc(92*var(--u)) calc(112*var(--u)),transparent calc(112*var(--u)) calc(117*var(--u)),rgba(240,231,212,.72) calc(117*var(--u)) calc(119*var(--u)),transparent calc(119*var(--u)) calc(124*var(--u)),rgba(20,44,34,.86) calc(124*var(--u)) calc(156*var(--u)),transparent calc(156*var(--u)) calc(200*var(--u))),
repeating-linear-gradient(-45deg,transparent 0 calc(22*var(--u)),rgba(20,44,34,.5) calc(22*var(--u)) calc(24*var(--u)),transparent calc(24*var(--u)) calc(48*var(--u)),rgba(20,44,34,.86) calc(48*var(--u)) calc(80*var(--u)),transparent calc(80*var(--u)) calc(85*var(--u)),rgba(240,231,212,.72) calc(85*var(--u)) calc(87*var(--u)),transparent calc(87*var(--u)) calc(92*var(--u)),rgba(240,231,212,.58) calc(92*var(--u)) calc(112*var(--u)),transparent calc(112*var(--u)) calc(117*var(--u)),rgba(240,231,212,.72) calc(117*var(--u)) calc(119*var(--u)),transparent calc(119*var(--u)) calc(124*var(--u)),rgba(20,44,34,.86) calc(124*var(--u)) calc(156*var(--u)),transparent calc(156*var(--u)) calc(200*var(--u)))}
.tartan-sm{--u:.5px}

/* Buttons: red is reserved for buying */
.btn{display:inline-flex;align-items:center;justify-content:center;height:56px;padding:0 36px;box-sizing:border-box;border-radius:3px;font-family:'Libre Caslon Text',Georgia,serif;font-weight:700;font-size:17px;letter-spacing:.01em;text-decoration:none;white-space:nowrap;background:#B3202C;color:#FFFFFF;box-shadow:inset 0 0 0 4px #B3202C,inset 0 0 0 5px rgba(255,255,255,.55);transition:background-color .15s ease,box-shadow .15s ease}
.btn:hover{background:#8F1922;color:#FFFFFF;box-shadow:inset 0 0 0 4px #8F1922,inset 0 0 0 5px rgba(255,255,255,.65)}
.btn:active{transform:translateY(1px)}
.btn:focus-visible{outline:3px solid #183328;outline-offset:3px}
.on-dark .btn:focus-visible{outline-color:#F3EEE4}
.btn-sm{height:44px;padding:0 20px;font-size:15px;box-shadow:inset 0 0 0 3px #B3202C,inset 0 0 0 4px rgba(255,255,255,.55)}
.btn-sm:hover{box-shadow:inset 0 0 0 3px #8F1922,inset 0 0 0 4px rgba(255,255,255,.65)}
.btn-bar{height:48px;padding:0 26px;font-size:16px}

/* Header */
.hdr{display:flex;align-items:center;justify-content:space-between;gap:16px;height:80px}
.hdr-buy{display:flex;align-items:center;gap:18px}

/* Hero: the offer first, the product beside it */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"copy art";align-items:center;gap:clamp(40px,6cqi,96px);padding-top:clamp(32px,5cqi,72px);padding-bottom:clamp(56px,7cqi,104px)}
.hero-copy{grid-area:copy;display:flex;flex-direction:column;gap:24px}
.hero-art{grid-area:art;display:flex;justify-content:center}
.art-stack{position:relative;width:min(100%,480px)}
.art-card{position:absolute;top:7%;right:-8%;bottom:-5%;left:10%;transform:rotate(4deg);border-radius:2px;box-shadow:0 24px 40px -24px rgba(10,24,18,.55)}
.hero-print{position:relative;margin:0;background:#FFFFFF;padding:14px 14px 18px;transform:rotate(-2deg);box-shadow:0 34px 60px -24px rgba(10,24,18,.55),0 3px 8px rgba(10,24,18,.2)}
.hero-print img{display:block;width:100%;aspect-ratio:3 / 4;object-fit:cover;background:#EEEFF1}

/* Sections */
.ben{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(40px,7cqi,112px);align-items:center}
.det{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"art head" "art rest";column-gap:clamp(40px,6cqi,96px);row-gap:32px;align-items:center}
.det-art{grid-area:art}
.det-head{grid-area:head;align-self:end;display:flex;flex-direction:column;gap:16px}
.det-rest{grid-area:rest;align-self:start;display:flex;flex-direction:column;gap:28px}
.faqg{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(32px,6cqi,96px);align-items:start}
.close{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:40px 48px}

/* Product preview: stationery proportions and details matched to the product photographs. */
.comp{position:relative;container-type:inline-size;aspect-ratio:1 / 1.08;color:#1d1d1b}
.stationery-paper{background-color:#fbfaf6;background-image:repeating-linear-gradient(0deg,rgba(92,79,59,.018) 0 .35px,transparent .35px 1.5px);border:.12cqw solid rgba(255,255,255,.85)}
.letter{position:absolute;left:3cqw;top:2cqw;width:63cqw;aspect-ratio:210 / 297;transform:rotate(-4deg);box-shadow:0 2.5cqw 5cqw -1.5cqw rgba(0,0,0,.4),0 .25cqw .7cqw rgba(0,0,0,.18)}
.letter-frame{position:absolute;inset:0;width:100%;height:100%;color:#9b3038}
.letter-in{position:absolute;inset:0;padding:10cqw 7.8cqw 7cqw;display:flex;flex-direction:column;align-items:center;text-align:center;font-family:'Times New Roman',Times,serif}
.letter-heading{position:relative;width:100%;color:#9b3038;line-height:1.25}
.letter-heading>span{display:block;font-family:'Libre Caslon Display',Georgia,serif;font-size:2.65cqw}
.letter-heading>strong{display:block;font-family:'Libre Caslon Display',Georgia,serif;font-size:3.9cqw;line-height:1.15;font-weight:400;font-variant:small-caps;letter-spacing:.015em;white-space:nowrap}
.letter-sleigh{position:absolute;right:-1.6cqw;top:-3.4cqw;width:15cqw;height:4cqw;transform:rotate(7deg)}
.letter-greeting{margin:7cqw 0 0;width:100%;font-family:'Times New Roman',Times,serif;font-size:3.1cqw;line-height:1.3;font-weight:400;white-space:nowrap}
.letter-opening{margin:4cqw 0 0;width:100%;font-size:2.15cqw;line-height:1.65}
.letter-private{display:flex;flex-direction:column;gap:1.15cqw;margin-top:4cqw;width:100%;opacity:.1;filter:blur(.35cqw)}
.letter-private span{display:block;height:.3cqw;background:#555;width:100%}.letter-private span:nth-child(3n){width:82%}.letter-private span:nth-child(4n){margin-bottom:1.5cqw}
.letter-signoff{margin-top:auto;display:flex;flex-direction:column;font-size:1.85cqw;line-height:1.4}.letter-signoff span:nth-child(2){font:400 3.4cqw/1.4 'Pinyon Script',cursive;transform:rotate(-3deg)}
.cert{position:absolute;right:1cqw;bottom:1.5cqw;width:76cqw;aspect-ratio:148 / 105;box-sizing:border-box;padding:4cqw 4.3cqw 2.5cqw;transform:rotate(3deg);text-align:center;font-family:'Times New Roman',Times,serif;box-shadow:0 2.5cqw 5cqw -1.5cqw rgba(0,0,0,.45),0 .25cqw .7cqw rgba(0,0,0,.18)}
.certificate-wax{position:absolute;left:5.5cqw;top:-4.7cqw;width:10.8cqw;height:10.8cqw;transform:rotate(-12deg)}
.certificate-kicker{font-size:1.75cqw;line-height:1.3;text-transform:uppercase;letter-spacing:0}
.certificate-title{margin-top:.8cqw;font:400 5.8cqw/1.1 'Libre Caslon Display',Georgia,serif;white-space:nowrap;color:#a02d37}
.certificate-flourish{display:block;width:39cqw;height:4.5cqw;margin:.4cqw auto 1.1cqw;color:#b98c3e}
.certificate-recognition{font-size:1.3cqw;line-height:1.35;white-space:nowrap;text-transform:uppercase;letter-spacing:-.015em}
.certificate-name{width:56cqw;margin:1cqw auto 0;padding-bottom:.6cqw;border-bottom:.12cqw solid #484743;line-height:1.2}
.certificate-name>span{display:block;font-size:3.7cqw;line-height:1.2;white-space:nowrap;letter-spacing:0}
.certificate-placed{margin-top:1.5cqw;font-size:1.45cqw;line-height:1.4;text-transform:uppercase}
.certificate-list{margin-top:.8cqw;font:400 4.6cqw/1.1 'Libre Caslon Display',Georgia,serif;white-space:nowrap;color:#a02d37}
.certificate-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:2cqw;margin-top:2cqw;text-align:left}
.certificate-signature{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:.8cqw}.certificate-signature>span:first-child{font-size:1.35cqw;line-height:1.3;text-transform:uppercase;white-space:nowrap}.certificate-signature>span:last-child{min-width:25cqw;padding-bottom:.4cqw;margin-top:.4cqw;border-bottom:.12cqw solid #555;font:400 3.9cqw/1.1 'Pinyon Script',cursive;transform:rotate(-3deg)}
.certificate-postmark{flex:none;width:21cqw;height:12.7cqw;color:#a02d37;transform:rotate(-7deg);opacity:.92}
.caps{text-transform:uppercase;letter-spacing:.12em}

.name-alt{font-family:'Libre Caslon Text',Georgia,serif;font-size:20px;color:#F3EEE4;background:rgba(243,238,228,.06);border:1px solid rgba(243,238,228,.45);border-radius:3px;padding:12px 14px;margin:0;width:100%;max-width:320px;box-sizing:border-box;caret-color:#F3EEE4}
.name-alt::placeholder{color:rgba(243,238,228,.55)}
.name-alt:focus{outline:none;border-color:#F3EEE4}
.name-alt:focus-visible{outline:2px solid #F3EEE4;outline-offset:3px}
.incl{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.incl li{display:flex;gap:12px;align-items:baseline}
.incl li::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:#C7CFC3;transform:translateY(-2px)}

/* FAQ */
.faq summary{list-style:none;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary:focus-visible{outline:2px solid #183328;outline-offset:4px}
.faq-icon{flex:none;transition:transform .2s ease}
.faq details[open] .faq-icon{transform:rotate(45deg)}

.foot-links a{color:#F3EEE4;text-decoration:none}
.foot-links a:hover{color:#FFFFFF;text-decoration:underline}

/* Mobile buy bar: phones only, sticks to the bottom of the screen */
.buybar{display:none}

/* Placeholders: replace before launch */
.ph{font-style:italic;background:rgba(179,32,44,.07);border:1px dashed rgba(179,32,44,.55);border-radius:3px;padding:0 .3em}
.on-dark .ph{background:rgba(243,238,228,.08);border-color:rgba(243,238,228,.55)}

@container (max-width: 899px){
.hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"art" "copy";gap:36px}
.art-stack{width:min(80%,400px);margin-right:4%}
.ben,.faqg{grid-template-columns:minmax(0,1fr)}
.det{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "art" "rest";row-gap:36px}
.det-head,.det-rest{align-self:auto}
}
@container (max-width: 599px){
.hdr{height:64px}
.hdr-buy{display:none}
.hero-print img{aspect-ratio:1 / 1;object-position:50% 45%}
.btn-hero{width:100%}
.buybar{display:flex;position:sticky;bottom:0;z-index:10;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#FFFFFF;border-top:1px solid #DCDCD7;box-shadow:0 -10px 24px -14px rgba(24,51,40,.35)}
}
@media (prefers-reduced-motion: reduce){.faq-icon,.btn{transition:none}}
/* Order flow follows the supplied stationery design. */
html{scroll-behavior:smooth;scroll-padding-top:24px}*{box-sizing:border-box}body{overflow-x:clip}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}input,textarea{min-width:0}a,button,input,textarea,summary{touch-action:manipulation}:focus-visible{outline:3px solid #183328;outline-offset:4px}.skip-link{position:fixed;left:12px;top:-80px;z-index:50;background:white;padding:12px}.skip-link:focus{top:12px}.order-section{padding:clamp(72px,9vw,128px) 0;background:#fff}.order-intro{max-width:600px;margin-bottom:44px}.order-intro h2{font:400 clamp(34px,3.5vw,48px)/1.12 'Libre Caslon Display',Georgia,serif;margin:0 0 16px}.order-intro p{color:#4c5650;margin:0}.order-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,6vw,96px);align-items:start}.order-fields{display:grid;gap:32px}fieldset{margin:0;padding:0;border:0;min-width:0}legend{font-weight:700;margin:0 0 14px;padding:0}.optional{font-weight:400;font-size:15px;color:#55605a}.choice-grid{display:grid;gap:12px}.choice{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #dcdcd7;border-radius:3px;min-height:56px;cursor:pointer;font-size:16px}.choice:has(input:checked){border-color:#183328;background:#f2f2f0}.choice input{accent-color:#183328;width:20px;height:20px;flex-shrink:0}.choice span{flex:1}.choice b{font-size:16px;font-weight:400;white-space:nowrap;margin-left:auto}.choice strong{font-size:16px}.choice small{display:block;color:#55605a;font-size:13px;line-height:1.6;margin-top:3px}.field{display:flex;flex-direction:column;gap:8px;font-size:16px}.field>label{font-weight:700}.field input,.field textarea,.promo-field input{width:100%;padding:12px 14px;border:1px solid #8a938b;border-radius:3px;background:#fff;color:#183328}.field textarea{resize:vertical;min-height:88px}.field small,.field-help{font-size:14px;color:#55605a;line-height:1.6;margin:0 0 12px}.field small{margin:0}#achievement-fields{display:grid;gap:16px}.text-button{border:0;border-bottom:1px solid #183328;padding:10px 0;background:none;color:#183328;font-size:15px;min-height:44px;margin-top:10px}.envelope-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice .swatch{width:26px;height:26px;border-radius:50%;flex:none;border:1px solid #999}.swatch.red{background:#b3202c}.swatch.almond{background:#e9dfca}fieldset>.choice+label{margin-top:12px}.order-summary{padding:28px;background:#f2f2f0;border-top:2px solid #183328;position:sticky;top:24px}.order-summary h3{font:400 30px/1.2 'Libre Caslon Display',Georgia,serif;margin:0 0 24px}.order-summary dl{margin:0 0 24px}.summary-row{display:flex;justify-content:space-between;gap:20px;margin:12px 0;font-size:15px;line-height:1.6}.summary-row dd{margin:0;white-space:nowrap}.discount-row{color:#183328}.promo-field{border-top:1px solid #dcdcd7;padding-top:20px;font-size:14px}.promo-field>div{display:flex;gap:8px;margin-top:8px}.promo-field button{border:1px solid #183328;border-radius:3px;background:transparent;color:#183328;padding:0 16px;min-height:48px}.promo-field p{font-size:13px;margin:8px 0;min-height:20px}.order-total{border-top:1px solid #dcdcd7;margin-top:20px;padding-top:20px;display:flex;justify-content:space-between;align-items:baseline}.order-total output{font:400 40px/1.1 'Libre Caslon Display',Georgia,serif}.summary-note{font-size:13px;line-height:1.7;color:#55605a}.pay-button{width:100%;border:0;margin:12px 0}.privacy-note{font-size:12px;line-height:1.7;color:#55605a;margin:20px 0 0}#order-message{font-size:14px}#order-message[data-error=true],#promo-message[data-error=true]{color:#8f1922}.policies{padding-top:30px;padding-bottom:30px;font-size:14px}.policies summary{min-height:44px;cursor:pointer}.policies p{max-width:60em;color:#4c5650}.site-notice{margin:0;padding:10px 20px;background:#fff;border-bottom:1px solid #dcdcd7;text-align:center;font:13px/1.5 'Libre Caslon Text',Georgia,serif;color:#55605a}#achievements[hidden]{display:none}.remove-achievement{border:0;background:none;color:#55605a;text-decoration:underline;padding:6px;align-self:end;font-size:13px;min-height:44px}@media(max-width:899px){.order-grid{grid-template-columns:1fr}.order-summary{position:static}.order-intro{margin-bottom:32px}}@media(max-width:599px){.order-summary{padding:22px}.choice{padding:12px}.policies{padding-bottom:24px}.order-total output{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
