/* Extra styles for the content, legal, download, gift and contact pages. Only adds; never overrides site.css rules for other pages. */

/* a legal-entity field that is still open: clearly marked, never mistaken for real data */
.todo{background:#f4e5b8;border-bottom:2px dotted #8a6a22;padding:0 .3em;color:#3d2c06;font-style:normal}

/* feature grid (what Premium adds) */
.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17.5rem),1fr));gap:clamp(14px,2.5vw,24px);margin:28px 0 0;padding:0;list-style:none}
.feat{background:var(--paper);border:1px solid var(--line);padding:clamp(16px,2.5vw,24px);box-shadow:0 18px 30px -26px rgba(0,0,0,.5)}
.feat h3{font-size:1.45rem;margin:0 0 .3em}
.feat p{margin:0;font-size:1.02rem}
.feat .tag{display:inline-block;font:700 .72rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--verdigris);margin-bottom:.6em}

/* where we sell */
.regions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:16px;margin:22px 0;padding:0;list-style:none}
.regions li{border:1px solid var(--line);background:var(--paper);padding:14px 16px}
.regions b{display:block;font:600 1.25rem var(--serif);margin-bottom:.2em}
.regions .soon{border-style:dashed}

/* print guide */
.print-guide{background:var(--paper);border:1px solid var(--line);padding:clamp(18px,3vw,32px);margin:28px 0}
.print-guide h2{font-size:clamp(1.7rem,3.4vw,2.3rem);margin-top:0}
.print-guide h3{font-size:1.4rem;margin:1.4em 0 .3em}
.print-guide ul{padding-left:1.2em;margin:.4em 0}
.print-guide li{margin:.3em 0}
.print-guide .tablewrap{margin:.6em 0 0}

/* waiting list and small inline forms */
.inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;max-width:34rem}
.inline-form .field{margin:0}
@media(max-width:520px){.inline-form{grid-template-columns:1fr}}

/* contact */
.page-contact select{width:100%}

/* download page */
.panel{background:var(--paper);border:1px solid var(--line);padding:clamp(18px,3vw,30px);margin-top:28px;box-shadow:0 18px 30px -26px rgba(0,0,0,.5)}
.panel h2{font-size:1.7rem;margin-top:0}
.panel > h2 + p{margin-top:0}
.panel .row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0}
.dl-sizes{margin:.6em 0 0;padding:0;list-style:none;font-size:1rem}
.dl-sizes li{padding:.15em 0}
.dl-files-note{margin:.4em 0 0}
.film{margin-top:28px}
.film video{width:100%;max-width:520px;height:auto;background:#000;border-radius:var(--r);display:block}
.film .alt{max-width:36em;margin:.6em 0 0}
.fix-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
.fix-grid .wide{grid-column:1/-1}
@media(max-width:640px){.fix-grid{grid-template-columns:1fr}}
.fix-group{margin:1.2rem 0 .4rem;padding-top:.8rem;border-top:1px solid var(--line)}
.fix-group h3{font-size:1.25rem;margin:0 0 .5em}
.meter{height:10px;background:rgba(29,36,34,.12);border-radius:99px;overflow:hidden;margin:.6em 0}
.meter > i{display:block;height:100%;width:0;background:var(--verdigris);transition:width .4s}
.status{min-height:1.5em;margin:.6em 0 0}
.page-download .notice p{margin:.2em 0 .6em}

/* pricing: what you get (Basic and Premium side by side) */
.whatyouget{margin:34px 0}
.dl-notice{border:1px solid var(--brass);background:#f4e5b8;color:#3d2c08;padding:.8em 1em;border-radius:var(--r)}
.plan-cards{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2.4vw,28px);margin:20px 0}
.plan-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:clamp(14px,2.2vw,24px)}
.plan-card-premium{border-color:var(--brass-d);box-shadow:0 0 0 2px var(--brass)}
.plan-card img{width:100%;height:auto;border:1px solid var(--line);margin-bottom:12px}
.plan-card h3{margin:.1em 0 .2em;font-size:1.6rem}
.plan-card h4{margin:1em 0 .3em;font:700 .8rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.plan-price{margin:.2em 0 .6em}
.plan-list{margin:.2em 0 .6em;padding-left:1.2em}
.plan-list li{margin:.35em 0}
.plan-not{color:var(--muted);font-size:.95rem}
.plan-terms{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:clamp(14px,2.2vw,24px)}
.plan-terms h3{margin-top:0}
@media(max-width:700px){.plan-cards{grid-template-columns:1fr}}

/* ready-to-hang delivery choice (checkout) */
.deliv{margin:0 0 1.4rem}.deliv legend{font:600 1.25rem var(--serif);padding:0;margin:0 0 .6rem}
.rcards{display:grid;gap:10px;margin:0 0 1rem}
.rcard{display:flex;gap:.75em;align-items:flex-start;border:1px solid var(--line);background:var(--paper);padding:12px 14px;cursor:pointer;font-weight:400}
.rcard:has(input:checked){border-color:var(--verdigris);box-shadow:0 0 0 2px rgba(60,120,110,.22)}
.rcard b{display:block;font-weight:600}.rcard small{display:block;color:var(--muted);font-size:.92rem;margin-top:2px}
.rcard .rp{margin-left:auto;font:600 1rem var(--serif);white-space:nowrap}
.row2{display:grid;grid-template-columns:1fr 1.4fr;gap:10px}
.etsy-code{font:600 1.4rem/1.2 ui-monospace,Menlo,monospace;letter-spacing:.04em;background:#fff;border:1px dashed var(--ink);padding:10px 12px;margin:.6em 0;word-break:break-all;user-select:all}
/* the order summary becomes a small wall with the plate in the chosen finish */
#co-thumb{padding:16px;background:radial-gradient(120% 90% at 40% 25%,#efe8dc,#d9d0c1);transition:background .3s}
#co-thumb[data-kind=digital]{padding:0;background:none}
#co-thumb[data-kind=poster] .frame{padding:0;background:none;box-shadow:0 14px 22px -12px rgba(40,30,20,.55),0 1px 2px rgba(40,30,20,.35)}
#co-thumb[data-kind=poster] .mat{padding:0;background:none;box-shadow:none}
@media(max-width:600px){.row2{grid-template-columns:1fr}}

/* 04-11 always in view: the way in */
.startbtn{position:fixed;z-index:42;left:50%;bottom:max(14px,env(safe-area-inset-bottom));transform:translateX(-50%);display:inline-flex;align-items:center;min-height:52px;padding:0 28px;border-radius:999px;background:linear-gradient(90deg,#ff9a3c,#ffc76a,#ff9a3c);background-size:200% 100%;color:#1a1206!important;font-weight:700;font-size:1.05rem;text-decoration:none;white-space:nowrap;box-shadow:0 0 0 3px #fff,0 8px 26px rgba(240,140,40,.55);animation:startglow 2.6s ease-in-out infinite}
.startbtn:hover{filter:brightness(1.06)}
.startbtn:focus-visible{outline:3px solid #2563eb;outline-offset:3px}
@keyframes startglow{0%,100%{background-position:0 0;box-shadow:0 0 0 3px #fff,0 8px 26px rgba(240,140,40,.5)}50%{background-position:100% 0;box-shadow:0 0 0 3px #fff,0 0 36px 10px rgba(255,190,90,.8)}}
@media(max-width:640px){.startbtn{font-size:.95rem;padding:0 20px;min-height:48px;left:auto;right:10px;transform:none}}
@media(prefers-reduced-motion:reduce){.startbtn{animation:none}}

/* 05-11 the fixed buttons never cover content */
body:has(.startbtn){padding-bottom:84px}
body:has(.startbtn)::after{content:"";position:fixed;z-index:40;left:0;right:0;bottom:0;height:calc(76px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dce8f4}
.startbtn.off{opacity:0;pointer-events:none;transition:opacity .25s}
