@font-face{font-family:CalendarLora;src:url('/static/fonts/Lora-Regular.ttf')}@font-face{font-family:CalendarLora;src:url('/static/fonts/Lora-Italic.ttf');font-style:italic}
#calendar-app{--ink:#242322;--pink:#e8b5c0;--wine:#8f294c;--paper:#f8f5f0;--line:#dedbd5;color:var(--ink);background:var(--paper);font-family:Arial,sans-serif;font-size:16px;line-height:1.5}body{margin:0}#calendar-app *{box-sizing:border-box}#calendar-app [hidden]{display:none!important}#calendar-app button,#calendar-app input,#calendar-app textarea,#calendar-app select{font:inherit}#calendar-app button,#calendar-app a,#calendar-app label.bulk,#calendar-app .replacement{touch-action:manipulation}#calendar-app a{color:inherit}#calendar-app button{cursor:pointer}#calendar-app button:disabled{cursor:wait;opacity:.55}#calendar-app :focus-visible{outline:3px solid #a93b67;outline-offset:4px}#calendar-app .top,#calendar-app footer{display:flex;align-items:center;justify-content:space-between;padding:24px max(24px,calc((100vw - 1200px)/2));gap:20px;border-bottom:1px solid var(--line)}#calendar-app .brand{font-weight:900;font-size:38px;letter-spacing:-2px;text-decoration:none;line-height:1}#calendar-app .brand span{display:block;letter-spacing:.5px;font-size:9px;font-weight:400;margin-top:9px}#calendar-app .phone{text-decoration:none;font-size:14px}#calendar-app .hero{max-width:1248px;margin:auto;padding:74px 24px 90px;display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}#calendar-app .eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;margin:0 0 24px}#calendar-app h1{font-family:CalendarLora,Georgia,serif;font-weight:400;font-size:clamp(48px,5.7vw,82px);letter-spacing:-3px;line-height:1.1;margin:0 0 26px}#calendar-app h1 em,#calendar-app h2 em{color:var(--wine);font-weight:400}#calendar-app .lead{max-width:460px;font-size:17px;color:#69645f}#calendar-app .offer{display:flex;gap:20px;align-items:center;margin:28px 0}#calendar-app .offer strong{font-size:36px;letter-spacing:-1px}#calendar-app .offer span{font-size:11px;color:#706b65;border-left:1px solid #bbb;padding-left:18px}#calendar-app .primary,#calendar-app .secondary{border:1px solid var(--ink);border-radius:0;display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:15px 24px;text-decoration:none;min-height:48px;background:var(--ink);color:white;font-size:13px;font-weight:600;transition:background .15s}#calendar-app .primary:hover{background:#5c2438}#calendar-app .secondary{background:transparent;color:var(--ink);border-color:#c9c4bc}#calendar-app .secondary:hover{background:#ede8e1}#calendar-app .small{font-size:11px;color:#77716b;line-height:1.6}#calendar-app .hero-art{position:relative;height:470px;margin-top:24px}#calendar-app .hero-art img{position:absolute;width:58%;box-shadow:0 16px 40px #42342c26;border:1px solid #ddd}#calendar-app .hero-back{top:0;left:4%;transform:rotate(-9deg)}#calendar-app .hero-front{right:1%;top:50px;transform:rotate(8deg)}#calendar-app .year-badge{position:absolute;right:0;top:-42px;width:100px;height:100px;border-radius:50%;background:var(--pink);display:grid;place-content:center;transform:rotate(12deg);text-align:center;font-size:11px;letter-spacing:1px;z-index:2}#calendar-app .size-note{position:absolute;left:1%;bottom:0;font-family:Georgia,serif;font-style:italic;font-size:15px}#calendar-app .specs{display:flex;gap:30px;justify-content:center;padding:20px;background:#e9c3ca;font-size:12px}#calendar-app .constructor{max-width:1248px;margin:auto;padding:76px 24px 82px;scroll-margin-top:20px}#calendar-app .section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:44px}#calendar-app h2{font-family:CalendarLora,Georgia,serif;font-size:45px;font-weight:400;line-height:1.2;letter-spacing:-1px;margin:0}#calendar-app .section-head>p{font-size:12px;color:#77716b;line-height:1.8;margin:0 0 4px}#calendar-app .steps{display:flex;border-bottom:1px solid #ccc7c0;margin:0 0 30px}#calendar-app .step{background:transparent;border:0;padding:16px 22px;color:#88827a;border-bottom:3px solid transparent;font-size:12px;display:flex;gap:10px;align-items:center}#calendar-app .step.active{border-color:var(--wine);color:var(--wine)}#calendar-app .step b{font-size:12px;font-weight:400;border:1px solid currentColor;display:inline-grid;place-content:center;width:22px;height:22px;border-radius:50%}#calendar-app #step-count{font-size:10px;color:#888}#calendar-app .designs{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}#calendar-app .design-card{padding:0;text-align:left;background:transparent;border:1px solid var(--line);color:var(--ink);overflow:hidden;position:relative}#calendar-app .design-card.selected{border:2px solid var(--wine)}#calendar-app .design-card .img-wrap{padding:25px;background:#ede8e1;text-align:center}#calendar-app .design-card img{display:block;width:100%;max-width:220px;max-height:315px;object-fit:contain;margin:auto;box-shadow:0 5px 15px #0001}#calendar-app .design-card .card-text{padding:22px;min-height:142px}#calendar-app .design-card h3{margin:0 0 8px;font-family:CalendarLora,Georgia,serif;font-size:21px;font-weight:400}#calendar-app .design-card p{font-size:12px;line-height:1.7;color:#77716b;margin:0}#calendar-app .selected-mark{position:absolute;top:12px;right:12px;width:27px;height:27px;border:1px solid #aca49a;background:var(--paper);border-radius:50%;display:grid;place-content:center;font-size:15px}#calendar-app .selected .selected-mark{color:white;background:var(--wine);border-color:var(--wine)}#calendar-app .actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px}#calendar-app .actions p,#calendar-app .actions>span{font-size:12px;color:#777}#calendar-app h3{font-size:24px;font-weight:400;line-height:1.3;margin:0 0 12px}#calendar-app .upload-head{display:flex;align-items:center;justify-content:space-between;gap:30px}#calendar-app .upload-head p{font-size:13px;color:#777;max-width:650px}#calendar-app .bulk,#calendar-app .replacement{position:relative;cursor:pointer;flex-shrink:0}#calendar-app .bulk input,#calendar-app .replacement input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}#calendar-app .photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:25px}#calendar-app .photo-card{min-width:0}#calendar-app .photo-label{display:flex;justify-content:space-between;font-size:11px;margin-bottom:8px}#calendar-app .photo-label b{font-weight:600}#calendar-app .photo-tile{border:1px dashed #c2b9ad;width:100%;aspect-ratio:1.15;background:#efebe4;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;overflow:hidden;position:relative}#calendar-app .photo-tile .plus{font-size:32px;font-weight:300;color:#9d8e80}#calendar-app .photo-tile span:not(.plus){font-size:10px;color:#8a8076}#calendar-app .photo-tile img{position:absolute;width:100%;height:100%;object-fit:cover}#calendar-app .photo-tile.has-photo{border-style:solid}#calendar-app .photo-edit{position:absolute;bottom:8px;right:8px;padding:5px 8px;background:#fff;font-size:10px!important;color:#222!important;box-shadow:0 1px 5px #0003}#calendar-app .filename{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:10px;color:#777;margin-top:6px}#calendar-app .photo-input{display:none}#calendar-app .contact-layout{display:grid;grid-template-columns:1fr 360px;gap:80px}#calendar-app form>p{font-size:13px;color:#777;max-width:500px}#calendar-app form>label{display:block;font-size:12px;margin-top:19px}#calendar-app input:not([type=checkbox]):not([type=range]):not([type=file]),#calendar-app textarea,#calendar-app select{display:block;width:100%;border:1px solid #cfc8bf;border-radius:0;background:#fffdf9;color:#242322;padding:12px 14px;margin-top:7px;font-size:14px;min-height:47px}#calendar-app .muted{color:#938a80}#calendar-app .consent{display:flex;gap:10px;align-items:flex-start;font-size:11px;line-height:1.6}#calendar-app .consent input{margin:4px 0 0;accent-color:var(--wine)}#calendar-app .submit-row{display:flex;gap:12px;margin-top:24px}#calendar-app .honeypot{position:absolute!important;left:-10000px}#calendar-app progress{width:100%;height:7px;margin-top:24px;accent-color:var(--wine)}#calendar-app .summary{padding:30px;background:#ede6dc;align-self:start}#calendar-app .summary h3{font-family:CalendarLora,Georgia,serif;font-size:22px;margin-top:20px}#calendar-app .summary dl{font-size:12px;margin-bottom:0}#calendar-app .summary dl>div{display:flex;justify-content:space-between;border-bottom:1px solid #d2c8bd;padding:10px 0;gap:15px}#calendar-app .summary dd{margin:0;text-align:right}#calendar-app .summary dt{color:#777}#calendar-app .calendar-preview{position:relative;width:100%;aspect-ratio:301/424;box-shadow:0 4px 18px #0002;background:#fff;overflow:hidden}#calendar-app .calendar-preview>img{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}#calendar-app .calendar-preview .photo-viewport{position:absolute;overflow:hidden;background:#e8e2d8}#calendar-app .calendar-preview .photo-viewport>img{position:absolute;max-width:none}#calendar-app .empty-photo{height:100%;display:grid;place-content:center;color:#9b8f80;font-size:11px}#calendar-app .notice{border-left:3px solid #a54a68;background:#f0dce2;font-size:12px;padding:14px 18px;margin:16px 0}#calendar-app .success{text-align:center;max-width:640px;margin:40px auto}#calendar-app .success p{color:#777;font-size:14px}#calendar-app .success-mark{display:inline-grid;place-content:center;width:70px;height:70px;border-radius:50%;background:#dce7d7;color:#3a674a;font-size:32px;margin-bottom:25px}#calendar-app .success .secondary{margin-top:20px}#calendar-app .closing{background:#e7c1cb;text-align:center;padding:74px 24px}#calendar-app .closing h2{font-size:55px;margin-bottom:24px}#calendar-app .closing a{font-size:14px}#calendar-app footer{font-size:10px;color:#776d65;padding-top:30px;padding-bottom:30px}#calendar-app dialog{padding:28px;border:0;max-width:900px;width:calc(100% - 32px);max-height:94vh;overflow:auto;background:var(--paper);color:var(--ink)}#calendar-app dialog::backdrop{background:#171411b8}#calendar-app .dialog-head{display:flex;justify-content:space-between;align-items:start}#calendar-app .dialog-head .eyebrow{margin-bottom:8px}#calendar-app .icon-button{border:0;background:transparent;font-size:32px;line-height:1;padding:0 5px}#calendar-app .crop-layout{display:grid;grid-template-columns:minmax(200px,1fr) 280px;gap:35px;margin-top:16px}#calendar-app .crop-tools p{font-size:12px;color:#777}#calendar-app .crop-tools>label,#calendar-app .crop-swap label{display:block;font-size:12px;margin-top:24px}#calendar-app .crop-tools input[type=range]{display:block;width:100%;margin:12px 0;accent-color:var(--wine)}#calendar-app .crop-tools .primary,#calendar-app .crop-tools .replacement{width:100%;margin-top:20px}#calendar-app .crop-swap .secondary{margin-top:12px;font-size:11px;padding:10px 15px}#calendar-app .crop-tools .replacement{font-size:11px}
@media(max-width:800px){#calendar-app .hero{gap:20px;padding-top:48px;padding-bottom:55px}#calendar-app .hero-art{height:350px}#calendar-app .hero-art img{width:65%}#calendar-app h1{letter-spacing:-2px}#calendar-app .lead{font-size:14px}#calendar-app .specs{gap:15px;font-size:10px}#calendar-app .contact-layout{grid-template-columns:1fr 260px;gap:30px}#calendar-app .photo-grid{grid-template-columns:repeat(3,1fr)}#calendar-app .designs{gap:12px}#calendar-app .design-card .img-wrap{padding:15px}#calendar-app .design-card .card-text{padding:14px}#calendar-app .design-card h3{font-size:17px}#calendar-app .section-head{gap:20px}#calendar-app .section-head>p{font-size:11px}#calendar-app h2{font-size:36px}}
@media(max-width:560px){#calendar-app .top{padding:20px}#calendar-app .brand{font-size:32px}#calendar-app .brand span{font-size:8px}#calendar-app .phone{font-size:11px}#calendar-app .hero{display:block;padding:35px 20px 30px}#calendar-app h1{font-size:54px}#calendar-app .hero-art{height:390px;max-width:350px;margin:60px auto 0}#calendar-app .hero-art img{width:60%}#calendar-app .hero-front{top:45px;right:0}#calendar-app .hero-back{left:0}#calendar-app .year-badge{right:5px;top:-30px;width:80px;height:80px;font-size:9px}#calendar-app .hero .primary{width:100%}#calendar-app .specs{padding:18px 15px;gap:10px;justify-content:space-between;font-size:9px}#calendar-app .constructor{padding:45px 20px}#calendar-app .section-head{display:block;margin-bottom:24px}#calendar-app .section-head>p{margin-top:20px}#calendar-app .steps{justify-content:space-between}#calendar-app .step{padding:12px 4px;font-size:10px;gap:5px}#calendar-app .step b{width:18px;height:18px;font-size:10px}#calendar-app #step-count{font-size:9px}#calendar-app .designs{display:block}#calendar-app .design-card{display:grid;grid-template-columns:40% 1fr;width:100%;margin-bottom:15px}#calendar-app .design-card .img-wrap{padding:16px}#calendar-app .design-card .card-text{align-self:center;padding:20px;min-height:0}#calendar-app .design-card h3{font-size:20px}#calendar-app .selected-mark{top:8px;right:8px;width:22px;height:22px;font-size:12px}#calendar-app .actions{flex-wrap:wrap;gap:12px}#calendar-app .actions>.primary{width:100%}#calendar-app .actions p{margin:0}#calendar-app .upload-head{display:block}#calendar-app .bulk{margin:10px 0}#calendar-app .photo-grid{grid-template-columns:repeat(2,1fr);gap:16px}#calendar-app .photo-tile{min-height:140px}#calendar-app .contact-layout{display:flex;flex-direction:column;gap:30px}#calendar-app .summary{width:100%;order:-1;display:none}#calendar-app .submit-row{flex-wrap:wrap}#calendar-app .submit-row .primary{width:100%}#calendar-app footer{flex-wrap:wrap;justify-content:start;font-size:10px;padding:25px 20px}#calendar-app footer .brand{width:100%;margin-bottom:10px}#calendar-app .closing h2{font-size:43px}#calendar-app .crop-layout{display:block}#calendar-app #crop-preview{max-width:280px;margin:auto}#calendar-app dialog{padding:20px}#calendar-app .crop-tools>label{margin-top:16px}#calendar-app .crop-tools input[type=range]{height:25px}#calendar-app .dialog-head .eyebrow{font-size:8px}}
@media(prefers-reduced-motion:reduce){#calendar-app *{scroll-behavior:auto!important;transition:none!important}}
