*{box-sizing:border-box}body{margin:0;background:#f7efe1;color:#263b31;font:18px/1.65 system-ui}a{color:#7b3045}header{padding:36px max(24px,calc((100% - 1100px)/2));background:linear-gradient(90deg,#0b3028ee,#0b3028b0),url('../christmas-backdrop.png') center/cover;color:#fff4d8;border-bottom:5px solid #c7a35f}header a{color:#ffe4a2}h1,h2,h3{font-family:Georgia;line-height:1.15}h1{font-size:clamp(37px,6vw,62px);max-width:850px;margin:20px 0}h2{font-size:32px;color:#673143}h3{font-size:23px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:2px;text-transform:uppercase}.intro{max-width:760px;font-size:21px}main{max-width:1100px;margin:auto;padding:40px 24px}.path{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.path a,.cta{padding:10px 16px;border:1px solid #b48e50;border-radius:8px;text-decoration:none}.path a[aria-current=page]{background:#153c30;color:#fff4d8}.cta{display:inline-block;background:#7b3045;color:white;font-weight:700}.card{padding:28px;background:#fffaf0;border:1px solid #d7c194;border-radius:16px;margin:22px 0}.sample{background:#fffdf7;border:2px solid #bd9954;border-radius:20px;overflow:hidden;margin:28px 0;box-shadow:0 16px 40px #5c402017}.sample-head{background:#153c30;color:#fff3cf;padding:20px 26px}.sample-body{padding:26px}.sample-head h2{margin:5px 0;color:#fff3cf}.note{font-size:14px;color:#5b665c}.sample-head .note{color:#eee0bc}.row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tile{padding:20px;background:#f0e6cf;border-radius:12px;border:1px solid #ddc9a0}.tile strong{display:block;font-size:28px;color:#6b2d40}.check{display:flex;align-items:flex-start;gap:14px;border-bottom:1px solid #e1d5bb;padding:17px 0}.check input{width:24px;height:24px;flex:none;accent-color:#17533e;margin-top:4px}.check small{display:block;color:#5e665b}.check:has(input:checked) .task{text-decoration:line-through;color:#647363}.tag{display:inline-block;background:#efe0bf;color:#693442;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:700}.table{overflow:auto}table{width:100%;border-collapse:collapse}td,th{padding:13px;text-align:left;border-bottom:1px solid #ded2b8}th{color:#693442;background:#f2e8d2}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar>div{min-height:95px;border:1px solid #e1d2b2;padding:8px;font-size:13px}.calendar b{display:block}.calendar span{display:block;background:#e5eddc;border-left:3px solid #3f7153;padding:4px;margin-top:4px}.calendar .due{background:#f1dde1;border-color:#9d4c63}.calendar .blank{border:0;background:#f6f0e5}.week{font-weight:700;min-height:0!important;border:0!important}.line{white-space:pre-line}.step-list{padding-left:24px}.step-list li{padding:8px 0}label{font-weight:600}input[type=number]{display:block;font:inherit;width:100%;max-width:320px;padding:12px;border:1px solid #a7b3a4;border-radius:8px;background:white;margin:8px 0 16px}button{cursor:pointer;background:#7b3045;color:white;border:1px solid #ad8b50;border-radius:8px;padding:11px 16px;font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #ad7435;outline-offset:3px}summary{cursor:pointer;font-weight:700}progress{width:100%;height:18px;accent-color:#1e6445}.ribbon{background:linear-gradient(95deg,#5c2436,#8b354c,#5c2436);color:#fff0ce;border-block:3px solid #bd9954;padding:30px;margin-top:35px;border-radius:12px}.ribbon h2{color:#fff0ce}.ribbon .cta{background:#fff0ce;color:#652639}.field-list{display:flex;gap:8px;flex-wrap:wrap}.field-list span{padding:8px 12px;border:1px solid #c8b486;background:#fbf4e6;border-radius:6px}footer{text-align:center;padding:25px;background:#10392c;color:#f5e5bf}.help{border-left:4px solid #c49e59;padding-left:20px}.journal-page{background:repeating-linear-gradient(#fffdf7,#fffdf7 35px,#e9dfcd 36px);padding:26px;font-family:Georgia;font-size:21px;line-height:36px}.journal-page h3{font-size:24px}.shopping{max-width:600px}@media(max-width:700px){main{padding:24px 16px}.grid{grid-template-columns:1fr}.sample-body{padding:18px}.card{padding:22px}.calendar>div{min-height:82px;padding:3px;font-size:10px}.sample-head{padding:18px}h2{font-size:28px}.calendar span{padding:2px;border-left-width:2px}}
