@font-face{font-family:SantaHand;src:url('assets/santa/santa-handwriting.otf') format('opentype');font-display:swap}
:root{--forest:#16392f;--deep:#102a24;--paper:#fbf7ee;--gold:#b49860;--ink:#203c33;--muted:#69776d;--red:#8a3434;--line:rgba(38,63,50,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}:focus-visible{outline:3px solid #a98447;outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.14;letter-spacing:-.035em}em{font-weight:400}.overline{font-size:.65rem;letter-spacing:.24em;font-weight:700;line-height:1.6;color:var(--gold)}.section-wrap{max-width:1140px;margin:auto;padding:84px 40px}.santa-nav{max-width:1440px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:24px 48px;gap:20px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:24px/1.15 Georgia,serif}.brand img{border-radius:50%}.brand small{display:block;font:8px/1.5 Arial,sans-serif;letter-spacing:.2em;margin-top:6px}.nav-back{font-size:.8rem;text-decoration:none}.nav-back span{margin-left:12px}.santa-hero{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--deep);color:var(--paper);max-width:1440px;margin:auto;min-height:620px}.hero-copy{padding:80px 55px 65px max(40px,calc((100vw - 1160px)/2))}.hero-copy h1{font-size:clamp(3rem,5.3vw,5.2rem);line-height:1.06;letter-spacing:-.045em;margin-top:24px}.hero-copy h1 em{color:#e4d1ac}.gold-rule{height:1px;background:var(--gold);width:66px;margin:28px 0}.hero-description{font-size:1rem;line-height:1.85;color:#e5e9df}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;border:1px solid transparent;padding:15px 22px;min-height:50px;text-decoration:none;font-size:.83rem;line-height:1.4;font-weight:700;letter-spacing:.02em;border-radius:2px;transition:background .2s,box-shadow .2s}.gold{background:#e8d6b1;color:var(--deep)}.gold:hover{background:#f4e4c4}.green{background:var(--forest);color:#fff}.green:hover{background:#245441}.hero-copy .button{margin-top:30px}.launch-note{font-size:.72rem;color:#bdcabe;margin-top:17px;max-width:280px}.hero-product{position:relative;min-width:0}.hero-product img{width:100%;height:100%;object-fit:cover;object-position:46% center}.hero-product figcaption{position:absolute;bottom:0;left:0;right:0;padding:26px 30px 18px;background:linear-gradient(transparent,rgba(0,0,0,.65));font-size:.58rem;letter-spacing:.2em}.hero-product figcaption span{display:block;letter-spacing:.05em;font-size:.65rem;color:#d9d7cc;margin-top:4px}.promise-strip{display:flex;justify-content:center;gap:80px;padding:20px 24px;border-bottom:1px solid var(--line);font:italic 16px Georgia,serif}.promise-strip span:before{content:'✧';color:#a0844c;margin-right:14px}.gift-section{display:grid;grid-template-columns:1fr 1fr;gap:70px}.section-intro h2{margin-top:20px}.gift-details>p:first-child{font-size:1.05rem;line-height:1.8}.gift-list{margin:24px 0}.gift-list p{font-size:.83rem;padding:12px 0;border-bottom:1px solid var(--line);display:flex;gap:22px;align-items:baseline}.gift-list p span{color:#9d8352;font:italic 16px Georgia,serif}.price-line{display:flex;align-items:center;gap:20px}.price-line strong{font:42px Georgia,serif}.price-line span{font-size:.72rem;line-height:1.6;color:var(--muted)}.small-note{font-size:.72rem;color:var(--muted);line-height:1.65;margin-top:14px}.atelier{background:#eeeae0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.atelier-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:44px}.atelier-heading h2{margin-top:14px}.atelier-heading>p{color:var(--muted);font-size:.88rem}.atelier-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:40px;align-items:start}.editor-panel{min-width:0}fieldset{padding:0;margin:0;border:0;min-width:0}legend{font:20px/1.4 Georgia,serif;margin-bottom:22px;display:flex;gap:12px}legend>span{font:italic 16px Georgia,serif;color:#a0844c}.input-pair{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:12px}label{display:block;font-size:.78rem;line-height:1.5;font-weight:700;margin-bottom:16px}.optional{font-size:.66rem;font-weight:400;color:var(--muted);float:right}input,textarea,select{display:block;width:100%;margin-top:7px;border:1px solid #cbcfc4;background:#fffcf6;border-radius:2px;padding:12px 11px;color:var(--ink);font-size:16px;line-height:1.5}input::placeholder,textarea::placeholder{font-size:.8rem;color:#7a8177}textarea{resize:vertical;min-height:78px}select{font-size:.82rem;min-height:48px}.design-field{margin-top:26px}.design-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.design-option{border:1px solid #c5c8bb;padding:5px;background:#fbf7ee;color:var(--ink);position:relative;border-radius:2px;min-width:0}.design-option[aria-pressed=true]{border:2px solid #214f3c;padding:4px;box-shadow:0 0 0 2px #eeeee3}.design-option img{width:100%;aspect-ratio:8.5/11;object-fit:cover;background:#fff}.design-option span{display:block;font:11px Georgia,serif;margin-top:5px}.design-description{font-size:.75rem;line-height:1.6;color:var(--muted);min-height:56px;margin-top:12px}form>.button{width:100%;margin-top:22px}.privacy-note{font-size:.7rem;color:var(--muted);line-height:1.65;margin-top:13px}.preview-panel{min-width:0}.preview-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 15px;font:18px Georgia,serif}.preview-tag{font:8px Arial,sans-serif;letter-spacing:.17em;border:1px solid #c4c7b8;padding:5px 8px;white-space:nowrap}.preview-tabs{display:flex;gap:22px;border-bottom:1px solid #c8cabc;margin-bottom:20px}.preview-tabs button{padding:10px 0;font-size:.75rem;border:0;border-bottom:2px solid transparent;background:none;color:#667366;min-height:44px}.preview-tabs button.active{border-color:var(--forest);color:var(--forest)}.paper-viewport{width:100%;position:relative;box-shadow:0 15px 45px #203b2920;background:white;overflow:hidden}.letter-sheet{width:612px;height:792px;background:#fff;position:relative;transform-origin:top left;padding:49px 54px 35px;color:#20283a;overflow:hidden;isolation:isolate}.stationery-art{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}.letter-heading{text-align:center;color:#99743c;margin-bottom:20px}.letter-heading>p{font-family:SantaHand,cursive;font-size:19px;line-height:1.2}.letter-heading h3{font-family:SantaHand,cursive;font-size:43px;line-height:1.15}.letter-heading>span{font:8px/2 Arial,sans-serif;letter-spacing:.3em;border-top:1px solid #bb9c65;padding-top:6px;display:inline-block}.letter-body{font-family:SantaHand,Georgia,serif;font-size:19px;line-height:1.2}.letter-body p{margin-bottom:14px}.letter-body .signature{font-size:34px;margin-bottom:2px}.letter-body .postscript{font-size:16px;line-height:1.25}.letter-footer{position:absolute;bottom:22px;left:50px;right:50px;text-align:center;font:6px Arial,sans-serif;letter-spacing:.25em;color:#a17e45}.letter-footer span{margin:0 10px;font-size:11px}.preview-actions{display:flex;flex-direction:column;gap:8px;margin-top:22px}.text-button{background:none;border:0;color:var(--forest);text-decoration:underline;text-underline-offset:4px;font-size:.77rem;min-height:44px}.preview-status{font-size:.73rem;line-height:1.6;text-align:center;color:var(--muted);margin:10px 0 0;min-height:24px}.preview-view[hidden]{display:none}.envelope-scene{padding:70px 20px;background:#e0e4d9;min-height:360px;display:grid;align-content:center}.envelope{background:#fffdf5;aspect-ratio:9.5/4.125;position:relative;color:#284134;box-shadow:0 16px 30px #283a2625;padding:20px;overflow:hidden}.return-address{font:22px/1 SantaHand,cursive}.return-address small{display:block;font:6px/2.5 Arial,sans-serif;letter-spacing:.23em}.stamp-placeholder{position:absolute;right:16px;top:16px;border:1px dashed #b9aa8e;color:#b5a488;padding:10px 7px;text-align:center;font-size:6px;line-height:1.6}.envelope-ornament{position:absolute;inset:0;width:100%;height:100%;opacity:.35;pointer-events:none}.envelope-recipient{position:absolute;left:18%;right:15%;top:45%;text-align:center}.envelope-recipient p{font:clamp(20px,2.5vw,30px)/1.2 SantaHand,cursive}.envelope-recipient span{font-size:8px;color:#818879}.envelope-foot{position:absolute;bottom:15px;left:0;width:100%;text-align:center;font-size:5px;letter-spacing:.22em;color:#9d8252}.certificate{padding:44px 25px;background:#fffcf5;border:1px solid #b59a65;outline:1px solid #b59a65;outline-offset:-10px;text-align:center;min-height:430px;display:flex;flex-direction:column;justify-content:center}.certificate h3{font-size:34px;margin:10px 0 20px}.certificate-star{font-size:36px;color:#a58a55;line-height:1.1;margin-top:15px}.certificate p:not(.overline){font:14px/1.7 Georgia,serif}.certificate strong{font:42px/1.2 SantaHand,cursive;margin:16px 0}.certificate-signature{font:32px SantaHand,cursive;margin:24px 0 14px}.certificate small{font:7px Arial,sans-serif;letter-spacing:.24em}.centered{text-align:center}.closing{text-align:center;padding-top:90px;padding-bottom:75px}.closing h2{margin:25px auto;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.24}.closing h2 em{color:#8b6d3e}.closing>p:not(.overline){font-size:.9rem;color:var(--muted)}.coming-soon{display:table;margin:26px auto;border:1px solid #c4b591;padding:10px 20px;letter-spacing:.2em;font-size:.6rem}.closing>a{font-size:.78rem;text-underline-offset:5px}.letter-faq{padding-top:0;max-width:850px}.letter-faq h2{font-size:1.8rem;margin-bottom:25px}.letter-faq details{border-top:1px solid var(--line)}summary{cursor:pointer;padding:20px 0;font-size:.86rem;font-weight:700}.letter-faq details p{font-size:.86rem;color:var(--muted);padding:0 20px 20px 0}.santa-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:25px 40px;font-size:.75rem}.santa-footer a{font:20px Georgia,serif;text-decoration:none}.reveal-dialog{border:0;padding:0;width:min(1000px,96vw);max-height:94dvh;background:var(--deep);color:var(--paper);box-shadow:0 25px 100px #0008;overflow:auto}.reveal-dialog::backdrop{background:#061a15e8;backdrop-filter:blur(6px)}body:has(.reveal-dialog[open]){overflow:hidden}.reveal-close{position:sticky;display:block;top:12px;margin:12px 12px 0 auto;background:none;color:var(--paper);width:44px;height:44px;border:1px solid #849886;border-radius:50%;font-size:26px;z-index:3}.reveal-inner{text-align:center;padding:0 50px 50px}.reveal-inner h2{margin:20px 0 38px;font-size:clamp(2rem,4vw,3rem)}.sealed-envelope{display:block;position:relative;margin:0 auto 24px;width:min(570px,100%);aspect-ratio:9.5/4.5;border:0;background:#f4eddd;box-shadow:0 20px 50px #0004;color:#223e30;overflow:hidden}.envelope-top{position:absolute;top:0;left:0;right:0;height:60%;background:linear-gradient(165deg,#e4dbc6,#fffbef);clip-path:polygon(0 0,100% 0,50% 100%);filter:drop-shadow(0 2px 1px #0003)}.reveal-return{position:absolute;top:20px;left:23px;font:22px SantaHand,cursive;text-align:left}.reveal-return small{display:block;font:6px Arial,sans-serif;letter-spacing:.2em}.sealed-envelope>#reveal-name{position:absolute;top:60%;left:8%;right:8%;font:30px SantaHand,cursive}.seal{position:absolute;top:29%;left:calc(50% - 25px);border:2px solid #bf995e;border-radius:50%;height:50px;width:50px;background:#813432;color:#e9cf98;font:22px/46px Georgia,serif;box-shadow:0 3px 5px #0002}.open-instruction{position:absolute;bottom:15px;left:0;right:0;font-size:8px;letter-spacing:.2em;color:#8a7147}.revealed-content{max-width:612px;margin:auto}.revealed-content[hidden]{display:none}.reveal-dedication{font:italic 20px Georgia,serif;margin-bottom:22px;color:#e8d6b1}#reveal-letter-copy .paper-viewport{text-align:left;margin:auto}.revealed-content>.button{margin-top:25px}.revealed-content .small-note{color:#b9c6b6}.reveal-dialog.is-unsealing .sealed-envelope{animation:unseal .65s ease forwards}@keyframes unseal{to{opacity:0;transform:translateY(15px)}}
@media(min-width:1500px){.hero-copy{padding-left:80px}}
@media(max-width:1000px){.santa-nav{padding:22px 28px}.hero-copy{padding:65px 35px}.santa-hero{min-height:540px}.promise-strip{gap:30px;font-size:14px}.section-wrap{padding:65px 28px}.atelier-layout{grid-template-columns:290px minmax(0,1fr);gap:25px}.gift-section{gap:40px}.letter-faq{padding-top:0}}
@media(max-width:760px){.santa-nav{padding:18px 20px}.brand{font-size:21px}.brand img{width:40px;height:40px}.nav-back{font-size:0}.nav-back span{font-size:22px;margin:0}.santa-hero{grid-template-columns:1fr}.hero-copy{padding:50px 26px 40px}.hero-copy h1{font-size:3.65rem}.hero-product{height:370px}.hero-product img{object-position:center 62%}.hero-product figcaption{font-size:8px}.promise-strip{gap:8px;padding:18px 10px;text-align:center;font-size:12px;align-items:center;line-height:1.4}.promise-strip span{flex:1}.promise-strip span:before{display:block;margin:0 0 5px}.section-wrap{padding:55px 22px}.gift-section{grid-template-columns:1fr;gap:26px}.gift-details>p:first-child{font-size:.95rem}.atelier-heading{display:block;margin-bottom:30px}.atelier-heading>p{margin-top:18px}.atelier-heading>p br{display:none}.atelier-layout{grid-template-columns:1fr;gap:38px}.editor-panel{border-bottom:1px solid #c4c7b6;padding-bottom:28px}.design-options{gap:10px}.design-option span{font-size:12px}.design-description{min-height:0}.preview-toolbar{font-size:20px}.preview-tabs{justify-content:space-between;gap:5px}.preview-tabs button{font-size:.8rem}.preview-actions .button{width:100%}.closing{padding-top:60px}.letter-faq{padding-top:0}.santa-footer{padding:23px 22px;align-items:center}.santa-footer span{font-size:.65rem}.reveal-inner{padding:0 18px 30px}.reveal-inner h2{font-size:1.8rem;margin-bottom:25px}.reveal-inner>.overline{font-size:8px}.sealed-envelope>#reveal-name{font-size:24px}.seal{height:40px;width:40px;left:calc(50% - 20px);font-size:18px;line-height:36px}.reveal-return{font-size:17px;left:14px;top:14px}.reveal-close{top:8px;margin:8px 8px 0 auto}.reveal-dialog{width:96vw}.reveal-dedication{font-size:17px}.envelope-scene{min-height:290px;padding:45px 15px}.envelope{padding:15px}.return-address{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.sealed-envelope[hidden]{display:none}
/* Christmas Echoes atmosphere: snowy scenery, lustrous color, soft ivory. */
:root{--forest:#284a60;--deep:#15314b;--paper:#fffaf1;--ink:#213c50;--muted:#617382;--gold:#aa8347;--line:rgba(48,74,93,.16)}
body{background:linear-gradient(135deg,#fffdf6,#f4f5f1 55%,#fff8ec)}
.santa-nav{background:#fffaf4}.brand small{color:#84663d}
.santa-hero{position:relative;isolation:isolate;background:linear-gradient(90deg,rgba(8,28,50,.88),rgba(14,35,55,.57) 47%,rgba(14,35,55,.04)),url('assets/santa/christmas-mailbox-v2.png') center 48%/cover;grid-template-columns:1fr 1fr;min-height:680px}
.hero-copy{padding-top:85px;padding-bottom:80px;position:relative;z-index:1}
.hero-copy h1{color:#fffaf1;text-shadow:0 2px 24px #081e3c45}.hero-copy h1 em{color:#f5dfb1}
.hero-copy .overline{color:#eed7a6}.hero-description{color:#f5f1e7}.launch-note{color:#e6e7e3}
.hero-product{align-self:end;margin:0 32px 35px 0;height:230px;width:310px;justify-self:end;border:1px solid #e8dac6bd;box-shadow:0 15px 40px #0b213775;transform:rotate(2deg);border-radius:4px;overflow:hidden}
.hero-product img{object-position:50% 62%}.hero-product figcaption{padding:25px 15px 12px;font-size:7px}.hero-product figcaption span{font-size:9px}
.promise-strip{background:#fffaf0;border-color:#d9cfb8}.promise-strip span:before{color:#a2413c}
.gift-section{position:relative}.section-intro .overline,.atelier .overline,.closing>.overline{color:#9a403a}
.gift-list p span{color:#9e413a}.price-line strong{color:#8e3539}
.atelier{position:relative;background:linear-gradient(140deg,rgba(255,253,245,.96),rgba(240,247,249,.96)),url('assets/santa/christmas-mailbox-v2.png') center/cover;border-color:#d3dce0}
.atelier:before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent 3%,#a34842 15%,#c49b4b 33%,#52735a 50%,#467395 70%,#a34842 85%,transparent 97%);opacity:.65}
.editor-panel{background:rgba(255,253,247,.82);padding:24px;border:1px solid #ded9c9;border-radius:12px;box-shadow:0 15px 35px #193b4e09}
.atelier-layout{grid-template-columns:365px minmax(0,1fr);gap:32px}
input,textarea,select{background:#fffefa;border-color:#cbd5d7;border-radius:5px}
legend>span{color:#a6493e}
.design-option{background:#fff;border-color:#cdd3d2;border-radius:5px}
.design-option[aria-pressed=true]{border-color:#a84a40;box-shadow:0 0 0 2px #f1dacf}
.design-description{color:#5b7180}.preview-tag{background:#fffaf1;border-color:#d8c4a4;color:#916331}
.preview-tabs button.active{border-color:#ad4942;color:#8c353b}
.green{background:linear-gradient(130deg,#a94943,#87323d);border-color:#a04a43;box-shadow:0 5px 14px #9b3c3520;color:#fff}
.green:hover{background:linear-gradient(130deg,#bd5850,#983b42)}
.gold{background:linear-gradient(120deg,#f3e4c6,#e8cc94);border-color:#e1c18a;color:#20394e;box-shadow:0 4px 14px #9b74331a}
.gold:hover{background:linear-gradient(120deg,#fff0d2,#efd8a9)}
.text-button{color:#864346}.letter-sheet{box-shadow:inset 0 0 0 1px #e7e0d1}.paper-viewport{box-shadow:0 18px 45px #29445d20}
.envelope-scene{background:linear-gradient(145deg,#e3edf3,#fff8ed);border:1px solid #d7e0e2}.envelope{color:#243e52}.envelope-ornament{opacity:.9}
.closing{max-width:none;background:linear-gradient(90deg,rgba(248,250,250,.94),rgba(255,250,239,.88)),url('assets/santa/christmas-mailbox-v2.png') center 65%/cover;border-bottom:1px solid #e1dbcd}
.closing h2 em{color:#a2463d}.coming-soon{background:#fffaf0a8;border-color:#c6a97b;color:#8a583a}
.letter-faq{padding-top:65px}
.reveal-dialog{background:linear-gradient(rgba(12,35,62,.4),rgba(18,41,60,.82)),url('assets/santa/christmas-mailbox-v2.png') center/cover;color:#fffaf0;border:1px solid #d6bf90;border-radius:10px}
.reveal-dialog::backdrop{background:#0d2237d9;backdrop-filter:blur(8px)}
.reveal-inner>.overline{color:#f6ddb0;text-shadow:0 1px 8px #001a35}.reveal-inner h2{color:#fffaf0;text-shadow:0 2px 15px #081d34}
.reveal-dedication{color:#fff0d1;text-shadow:0 2px 12px #071c31}
.reveal-close{background:#13314ec9;border-color:#f5e3bd;color:#fffaf0}.revealed-content .small-note{color:#fbf3df;background:#102d458c;padding:8px 12px;border-radius:5px}
@media(max-width:1000px){.atelier-layout{grid-template-columns:300px minmax(0,1fr);gap:24px}.editor-panel{padding:20px}.hero-product{width:270px;height:210px;margin-right:25px}}
@media(max-width:760px){
 .santa-hero{display:block;min-height:0;background:linear-gradient(180deg,rgba(9,28,49,.68),rgba(10,31,51,.35) 50%,rgba(13,31,50,.08)),url('assets/santa/christmas-mailbox-v2.png') 63% center/cover;padding-bottom:24px}
 .hero-copy{padding:55px 26px 40px}.hero-copy h1{font-size:3.65rem;max-width:360px}.hero-copy .overline{font-size:.59rem}
 .hero-description{font-size:1rem;text-shadow:0 1px 12px #081e35}.hero-copy .button{margin-top:25px}
 .hero-product{width:190px;height:133px;margin:5px 24px 0 auto;transform:rotate(2deg);border-radius:3px}.hero-product figcaption{padding:20px 8px 7px;font-size:5px}.hero-product figcaption span{font-size:7px}
 .atelier-layout{grid-template-columns:minmax(0,1fr);gap:34px}.editor-panel{padding:22px 17px;border-bottom:1px solid #ded9c9}
 .atelier>.section-wrap{padding-left:14px;padding-right:14px}.atelier-heading{padding:0 8px}.preview-panel{padding:0 5px}
 .preview-toolbar{font-size:20px}.design-options{gap:6px}.design-option span{font-size:10px}.reveal-inner{padding-left:14px;padding-right:14px}
 .closing{padding:58px 22px}.letter-faq{padding-top:50px}
}
/* Screen-specific composition. The scene carries the opening without a mockup inset. */
.santa-hero{min-height:650px}.hero-copy{max-width:640px;padding-bottom:75px}.hero-product{display:none}
@media(max-width:760px){
 .santa-hero{min-height:640px;padding-bottom:0;background:linear-gradient(180deg,rgba(8,27,49,.35),rgba(8,27,49,.14) 52%,rgba(8,27,49,0)),url('assets/santa/christmas-mailbox-mobile-v3.png') right bottom/cover}
 .hero-copy{padding:43px 26px 185px;max-width:100%}.hero-copy h1{font-size:clamp(2.75rem,12.5vw,3.6rem);line-height:1.07;max-width:365px;margin-top:21px}
 .gold-rule{margin:23px 0}.hero-description{font-size:.94rem;line-height:1.8}.hero-copy .button{margin-top:23px}.launch-note{font-size:.69rem;max-width:280px;line-height:1.6}
 .reveal-dialog{background-image:linear-gradient(rgba(12,35,62,.42),rgba(18,41,60,.84)),url('assets/santa/christmas-mailbox-mobile-v3.png');background-position:center bottom}
}
@media(max-width:760px){.hero-copy .launch-note{display:inline-block;background:#102b4780;color:#fffaf1;padding:7px 9px;border-radius:3px}}

/* V4: heirloom Christmas presentation, with the letter canvas untouched. */
.santa-nav{border-bottom:1px solid #c4aa795c}
.promise-strip{background:linear-gradient(110deg,#102c43,#203e51);color:#fff5df;border-block:1px solid #bfa16a;padding-block:24px}
.promise-strip span:before{color:#e9c884}
.gift-section{max-width:1180px;margin:42px auto;padding:78px 48px;gap:48px;background:#fcf8ef url('assets/santa/christmas-ivory-card-v4.png') center/100% 100% no-repeat;border:1px solid #d2bd96;border-radius:16px;box-shadow:0 20px 65px #233d4c12;align-items:center}
.section-intro h2{font-size:clamp(2rem,3.4vw,3.1rem)}
.gift-portrait{margin-top:30px;overflow:hidden;border:1px solid #c6a574;border-radius:100px 100px 8px 8px;background:#183447;box-shadow:0 12px 30px #152d4320}
.gift-portrait img{width:100%;aspect-ratio:4/3;object-fit:cover}
.gift-portrait figcaption{padding:14px 18px;text-align:center;color:#f6e6c5;font:italic 18px/1.4 Georgia,serif}
.gift-details{background:#fffdf8e8;border:1px solid #cdb98e99;border-radius:8px;padding:28px;box-shadow:0 7px 30px #765c2810}
.gift-details>.gift-label{font:700 9px/1.7 Arial,sans-serif;letter-spacing:.2em;color:#9a443c;margin-bottom:16px}
.gift-details>p:nth-child(2){font-size:.95rem;line-height:1.8}
.gift-list{margin-top:18px}.gift-list p{padding:14px 0;gap:16px;font-size:.82rem}.gift-list p span{font-size:20px}
.price-line{padding-top:4px}.price-line strong{font-size:46px}
.atelier{background:radial-gradient(ellipse at 10% 0,#33576660,transparent 45%),linear-gradient(145deg,#142f44,#0c2338 60%,#1c3b4b);border-block:1px solid #bca16f}
.atelier:before{height:1px;opacity:1;background:linear-gradient(90deg,transparent,#d9bf87,transparent)}
.atelier-heading h2{color:#fff7e8}.atelier-heading h2 em{color:#efd19b}.atelier-heading .overline{color:#e7c387}.atelier-heading>p{color:#d4dfdf}
.editor-panel{background:linear-gradient(135deg,#fffdf7,#f8f0e1);border:1px solid #c2a472;border-radius:10px;padding:28px;box-shadow:0 20px 50px #03142440;position:relative}
.editor-panel:before{content:'';position:absolute;inset:6px;border:1px solid #c9b17e55;border-radius:6px;pointer-events:none}
legend{font-size:22px}.design-field{border-top:1px solid #cbb58e80;padding-top:24px}
.preview-toolbar{color:#fff4dc}.preview-tag{background:#213e50;color:#f0d29b;border-color:#c7a56d}
.preview-tabs{border-color:#bba67e70}.preview-tabs button{color:#d6dedc}.preview-tabs button.active{color:#f4d59d;border-color:#e2bc77}
.preview-panel>.preview-status{color:#d2dddf}.preview-panel>.preview-actions>.text-button{color:#f1d9b0}
.preview-actions .green{border-color:#d4a26d}.preview-status .button{color:#243e50}
.closing{background:linear-gradient(90deg,#102a43e8,#173447d9),url('assets/santa/christmas-mailbox-v2.png') center 60%/cover;color:#fff7e8;border-block:1px solid #c7ac78;padding-block:75px}
.closing>.overline{color:#e8c68e}.closing h2 em{color:#f1d39e}.closing>p:not(.overline){color:#d9e2de}.closing>a{color:#f8e1b8}.coming-soon{background:#fff6e80d;color:#f2d8a9;border-color:#c4a573}
.letter-faq{margin-top:42px;margin-bottom:42px;background:#fffcf5;border:1px solid #dccbad;border-radius:12px;padding:38px 34px;box-shadow:0 10px 35px #203c5010}
@media(max-width:1200px){.gift-section{margin:30px 20px}}
@media(max-width:1000px){.gift-section{gap:28px;padding:75px 30px}.gift-details{padding:22px}.editor-panel{padding:22px}}
@media(max-width:760px){
 .promise-strip{font-size:12px;padding:22px 12px}
 .gift-section{margin:22px 12px;padding:86px 20px 88px;gap:25px;border-radius:12px}
 .section-intro h2{font-size:2.15rem}.gift-portrait{margin-top:24px;border-radius:65px 65px 7px 7px}
 .gift-portrait figcaption{font-size:16px;padding:12px}
 .gift-details{padding:23px 18px;background:#fffdf7f2}.gift-details>.gift-label{font-size:8px}
 .gift-details>p:nth-child(2){font-size:.91rem}.gift-list p{font-size:.81rem;gap:14px}
 .price-line{gap:16px;align-items:center}.price-line span{font-size:.68rem}.price-line strong{font-size:42px}
 .atelier>.section-wrap{padding-top:45px;padding-bottom:45px}.editor-panel{padding:27px 17px}
 .atelier-heading{padding-inline:10px}.atelier-heading h2{font-size:2.25rem}.atelier-heading>p{font-size:.88rem}
 .preview-panel{padding-inline:4px}.preview-toolbar{font-size:22px}.preview-tag{font-size:7px;padding:5px 7px}
 .letter-faq{margin:24px 14px;padding:30px 23px}.closing{padding-block:60px}
}
/* Keep the decorative foliage at its natural scale on tall layouts. */
.gift-section{background:#fcf8ef;isolation:isolate}
.gift-section:before,.gift-section:after{content:'';position:absolute;left:0;right:0;height:112px;pointer-events:none;z-index:-1;background-image:url('assets/santa/christmas-ivory-card-v4.png');background-size:100% auto;background-repeat:no-repeat;border-radius:inherit}
.gift-section:before{top:0;background-position:center top}
.gift-section:after{bottom:0;background-position:center bottom}
.gift-section{padding-top:120px;padding-bottom:120px}
@media(max-width:760px){.gift-section{padding-top:100px;padding-bottom:100px}.gift-section:before,.gift-section:after{height:90px}}
.editor-panel{padding-top:58px}
.editor-panel:after{content:'';position:absolute;top:7px;right:7px;width:170px;height:39px;background:url('assets/santa/christmas-ivory-card-v4.png') center top/170px auto no-repeat;pointer-events:none;border-top-right-radius:5px}
.editor-panel{padding-top:100px}
.editor-panel:after{left:7px;right:7px;width:auto;height:78px;background-size:100% auto;border-radius:5px 5px 0 0;mask-image:linear-gradient(#000 65%,transparent)}

/* Checkout and confirmation */
.checkout-panel{margin:24px 0;padding:24px;border:1px solid #c9aa6b;border-radius:14px;background:#fffaf0;color:#15314b}
.checkout-panel .approval-label{display:flex;align-items:flex-start;gap:12px;margin:16px 0;line-height:1.6;font-size:14px}
.checkout-panel input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;margin-top:3px;accent-color:#214c3b}
.checkout-panel .button{width:100%;white-space:normal;text-align:center}
.checkout-panel button:disabled{opacity:.55;cursor:not-allowed}
#checkout-status{font-size:14px;line-height:1.6;margin-bottom:0}
.order-confirmation{max-width:760px;padding-top:70px;padding-bottom:90px;overflow-wrap:anywhere;line-height:1.8}
.order-confirmation h1{font-size:clamp(32px,6vw,52px);line-height:1.15}

/* v1.5: one included wooden keepsake in the $25 Santa letter package */
.wood-field{border-top:1px solid #cbb58e80;margin-top:22px;padding-top:24px}
.wood-intro{font-size:.85rem;line-height:1.65;color:#344f56;margin:0 0 17px}
.wood-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.wood-option{display:block;position:relative;cursor:pointer;min-width:0}
.wood-option input{position:absolute;top:12px;left:12px;width:20px;height:20px;accent-color:#265240;z-index:1;cursor:pointer}
.wood-card{display:flex;flex-direction:column;min-height:100%;gap:9px;background:#fffdf8;border:2px solid #d6c8ac;border-radius:9px;padding:11px;transition:border-color .12s,box-shadow .12s;position:relative}
.wood-card img{display:block;width:100%;aspect-ratio:2/1;object-fit:cover;object-position:center;background:#24160d;border:1px solid #e9e0ca;border-radius:5px}
.wood-card strong{font:700 17px/1.25 Georgia,serif;color:#173447;padding-right:4px}
.wood-card small{color:#52676b;font-size:12px;line-height:1.5}
.wood-included{font:700 10px/1.4 Arial,sans-serif;letter-spacing:.08em;color:#2c6048;margin-top:auto}
.wood-option:has(input:checked) .wood-card{border-color:#22543d;box-shadow:0 0 0 2px #22543d30;background:#f8faf1}
.wood-option:has(input:focus-visible) .wood-card{outline:3px solid #a26d34;outline-offset:3px}
.wood-note{font-size:11px;line-height:1.6;color:#5e6660;margin:15px 0 0}
.selected-wood-summary{font-size:13px;color:#355741;line-height:1.55}
@media(max-width:430px){.wood-options{grid-template-columns:1fr}.wood-card img{aspect-ratio:2.15/1}.wood-card{gap:7px}}

/* v1.6: coordinated Christmas Nice List certificate, US Letter proportions */
.hero-package-note{display:inline-block;color:#efd1a4;font-size:.85em;padding-top:9px}
.certificate{position:relative;display:block;width:100%;aspect-ratio:612/792;min-height:0;padding:0;margin:0;outline:none;border:0;background:#fffcf5 url('assets/santa/nice-list-certificate-v19.svg?v=1.9.0') no-repeat center / 100% 100%;color:#203e52;container-type:inline-size;box-shadow:0 8px 30px #03152835;overflow:hidden}
.certificate > *{position:absolute;left:10%;right:10%;width:80%;text-align:center;margin:0}
.certificate .certificate-north{top:12.4%;color:#8b3538;font:700 2.55cqw/1.1 Arial,sans-serif;letter-spacing:.26em}
.certificate .certificate-caption{top:22%;left:8%;right:8%;width:84%;color:#9c7e4f;font:600 1.55cqw/1.45 Arial,sans-serif;letter-spacing:.095em}
.certificate h3{top:31%;left:7%;right:7%;width:86%;color:#17384b;font:400 6.05cqw/1.14 Georgia,'Times New Roman',serif;letter-spacing:-.018em;white-space:nowrap}
.certificate .certificate-affirmation{top:44%;color:#465a5f;font:italic 3.25cqw/1.2 Georgia,serif}
.certificate strong{top:52%;left:6%;right:6%;width:88%;color:#8c343c;font:400 8.4cqw/1 SantaHand,Georgia,serif;overflow-wrap:anywhere}
.certificate .certificate-message{top:63%;color:#263f4d;font:3.25cqw/1.46 Georgia,serif}
.certificate .certificate-signature{top:79.5%;color:#213f50;font:400 6.9cqw/1 SantaHand,Georgia,serif}
.certificate small{top:91.8%;font:600 1.35cqw/1.2 Arial,sans-serif;letter-spacing:.24em;color:#987e57}
.certificate-note{color:#d4d8d1}
.preview-actions{flex-wrap:wrap;row-gap:10px}
@media(max-width:760px){.certificate .certificate-message{font-size:3.2cqw}.preview-actions .text-button{display:inline-block;margin:6px auto}}

/* v1.7 compact certificate title and fresh image assets. */
@supports not (font-size: 1cqw){.certificate h3{font-size:clamp(18px,4.8vw,42px)}.certificate .certificate-caption{font-size:clamp(7px,1.6vw,12px)}}

/* V1.8 — redesigned, collision-free 8.5 x 11 certificate.
   Decorative dividers and berries are outside all copy lines. */
.certificate{width:100%;max-width:100%;min-width:0;aspect-ratio:612/792;
 background-image:url('assets/santa/nice-list-certificate-v19.svg?v=1.9.0')}
.certificate .certificate-north{top:16.8%;left:15%;right:15%;width:70%;font:700 2.18cqw/1.2 Arial,Helvetica,sans-serif;letter-spacing:.18em}
.certificate .certificate-caption{top:24.2%;left:10%;right:10%;width:80%;font:600 1.52cqw/1.3 Arial,Helvetica,sans-serif;letter-spacing:.15em}
.certificate h3{top:29.7%;left:8%;right:8%;width:84%;font:400 6.53cqw/1.18 Georgia,'Times New Roman',serif;letter-spacing:-.025em;white-space:nowrap}
.certificate .certificate-affirmation{top:43.6%;font:italic 3.27cqw/1.2 Georgia,serif}
.certificate strong{top:51.8%;left:9%;right:9%;width:82%;font:400 8.5cqw/1.12 SantaHand,Georgia,serif;overflow-wrap:anywhere}
.certificate .certificate-message{top:65.5%;left:8%;right:8%;width:84%;font:2.91cqw/1.48 Georgia,'Times New Roman',serif}
.certificate .certificate-signature{top:81.8%;left:12%;right:12%;width:76%;font:400 7.03cqw/1.12 SantaHand,Georgia,serif}
.certificate small{top:92.5%;left:10%;right:10%;width:80%;font:600 1.13cqw/1.2 Arial,Helvetica,sans-serif;letter-spacing:.18em}
/* Allow mobile preview columns to shrink fully instead of widening the page. */
.atelier-layout,.preview-panel,.preview-view,.preview-toolbar,.preview-tabs{min-width:0;max-width:100%}
.preview-tabs button{min-width:0}
@media(max-width:760px){
 .preview-toolbar{flex-wrap:wrap}
 .preview-tabs{gap:5px}
 .preview-tabs button{font-size:clamp(11px,3vw,13px);white-space:normal}
 .certificate .certificate-message{font-size:2.91cqw}
}

/* V1.9 — premium, unadorned envelope. Selected stationery is exclusive to the letter. */
.envelope-ornament{display:none!important}
.envelope{background:#fffcf6;color:#213c4e;border:1px solid #dfd1b8}
.envelope-scene{background:linear-gradient(145deg,#e7e7e2,#dfe4e7)}
.return-address{color:#243f50}
.envelope-recipient p{color:#203c50}
.envelope-foot{color:#9f875d}
/* Premium engraved North Pole certificate: no holly/berries or ribbon artwork. */
.certificate{background-image:url('assets/santa/nice-list-certificate-v19.svg?v=1.9.0')}

/* V1.14 — sender is intentionally understated, with normally spaced words.
   No flex distribution or text-justify on the lower line. */
.envelope .return-address {
  position: absolute;
  z-index: 2;
  top: 15px;
  left: 7px;
  right: auto;
  bottom: auto;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  width: max-content;
  max-width: 65%;
  margin: 0;
  padding: 0;
  text-align: left;
  color: #213c4f;
}
.envelope .return-address .return-sender {
  display: block;
  width: auto;
  margin: 0;
  padding: 0;
  font-family: SantaHand, Georgia, serif;
  font-size: 19px;
  font-weight: 400;
  font-style: normal;
  line-height: 1.04;
  letter-spacing: 0;
  color: #213c4f;
  white-space: nowrap;
}
.envelope .return-address .return-origin {
  display: block;
  position: static;
  width: auto;
  margin: 0;
  padding: 0;
  color: #9f8557;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 7px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: .08em;
  word-spacing: normal;
  white-space: nowrap;
  text-align: left;
}
@media (max-width: 760px) {
  .envelope .return-address { top: 13px; left: 3px; gap: 2px; }
  .envelope .return-address .return-sender { font-size: 19px; }
  .envelope .return-address .return-origin { font-size: 7px; letter-spacing: .08em; }
}

/* V1.31 — real keepsake photography, natural proportions, and consistent small-screen cards.
   Photo pixel aspect ratio matches the displayed aspect ratio, so nothing is stretched or cropped. */
.wood-options { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.wood-option, .wood-card { min-width: 0; }
.wood-card { overflow: hidden; }
.wood-card img {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 2 / 1;
  object-fit: contain;
  object-position: 50% 50%;
  background: #24160d;
}
@media (max-width: 620px) {
  .wood-options { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
  .wood-card { padding: 8px; gap: 8px; }
  .wood-card strong { font-size: clamp(13px, 3.65vw, 17px); line-height: 1.23; }
  .wood-card small { font-size: clamp(11px, 2.85vw, 12px); line-height: 1.48; }
}
@media (max-width: 350px) {
  .wood-options { grid-template-columns: 1fr; }
  .wood-card { padding: 11px; }
  .wood-card strong { font-size: 17px; }
  .wood-card small { font-size: 12px; }
}

/* V1.32 — only the chosen keepsake carries a status. */
.wood-selected {
  display:block;
  margin-top:auto;
  min-height:1.4em;
  visibility:hidden;
  font:700 10px/1.4 Arial,sans-serif;
  letter-spacing:.08em;
  color:#24533e;
}
.wood-option input:checked + .wood-card .wood-selected {visibility:visible}
/* Removing the redundant closing sales panel leaves the FAQ comfortably spaced. */
.letter-faq {margin-top:28px}

/* V1.33: small in-form writing status; no change to approved layout. */
.letter-writing-note{margin:12px 0 0;color:#42634d;font-size:.96rem;line-height:1.5}.letter-writing-note[hidden]{display:none!important}#preview-button:disabled{opacity:.72;cursor:wait}

/* V1.34: planned shipping date choice */
.ship-date-choice{background:rgba(246,235,208,.85);border:1px solid #c7ad78;border-radius:12px;padding:16px 18px;margin:16px 0 22px;color:#243e4d}.ship-date-choice>label{font-size:17px;display:block;margin:0 0 7px}.ship-date-choice p{font-size:14px;line-height:1.5;margin:8px 0}.ship-date-choice select{width:100%;max-width:430px;border:1px solid #bdab88;border-radius:7px;background:#fffaf0;color:#203951;padding:12px;font:16px Arial,sans-serif}.ship-date-choice .ship-date-help{color:#65747b;font-size:13px;margin-top:8px}

/* V143: shipping pill centered on the action button. */
.hero-copy .hero-order-action{width:220px;max-width:100%;margin-top:30px}
.hero-copy .hero-order-action>.button{display:flex;width:100%;margin:0;gap:18px;padding-left:16px;padding-right:16px}
.hero-copy .hero-shipping-pill{display:block;width:calc(100% - 16px);margin:12px auto 0;padding:9px 8px;border:1px solid rgba(224,199,150,.65);border-radius:999px;background:rgba(13,39,62,.94);box-shadow:0 3px 12px rgba(5,22,38,.18);color:#fff7e8;text-align:center;font-size:11px;line-height:1.45;text-shadow:none}
.hero-shipping-pill strong{display:block;font-size:11px;font-weight:600;color:#f0d8a6;white-space:nowrap}
.hero-shipping-pill span{display:block;margin-top:2px;font-size:10px;font-weight:400;color:#f6f0e5}
@media(max-width:760px){.hero-copy .hero-order-action{width:202px;margin-top:23px}.hero-copy .hero-shipping-pill{margin-top:11px;padding:8px 7px}.hero-shipping-pill strong{font-size:10.5px}.hero-shipping-pill span{font-size:9.5px}}

/* V145: a concise family order review. */
.family-price-note{font-size:.86rem;line-height:1.6;margin-top:16px;color:var(--ink)}
.family-order{padding:20px 0;border-bottom:1px solid var(--line);margin-bottom:20px}.family-order h3{font-size:1.5rem;margin-bottom:12px}
#family-order-list{list-style:none;padding:0;margin:0}.family-order-item{padding:12px 0;border-bottom:1px solid var(--line)}.family-order-item strong{display:block;font-size:.92rem}.family-order-item small{display:block;font-size:.73rem;color:var(--muted);margin-top:3px}.family-order-item .family-item-actions{display:flex;gap:18px;margin-top:8px}.family-item-actions button{border:0;padding:3px 0;background:none;color:var(--ink);font-size:.76rem;text-decoration:underline}
#family-order-total{font-size:1rem;font-weight:700;margin-top:16px}.family-shipping-note{font-size:.76rem;color:var(--muted);margin-top:5px}.family-editor-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:16px 0}.family-editor-actions .button{margin:0}.family-editor-actions .text-button{font-size:.76rem}.family-editor-actions [hidden]{display:none}

#current-letter-approval[hidden],#another-letter-button[hidden]{display:none}#another-letter-button{display:inline-block;margin-top:14px;font-size:.85rem}
