/* Template-specific layout; type, colour, cards, buttons and shadows inherit the actual site system. */
.template-breadcrumb{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-8);font:400 var(--text-sm)/1.5 var(--font-sans);color:var(--site-muted)}
.template-breadcrumb a{color:var(--site-moss);text-underline-offset:3px}
.template-preview img{display:block;width:100%;height:auto}
.template-hero .cta-row{flex-wrap:wrap}
.template-hero .panel-note{margin-top:var(--space-5)}
.template-faq{max-width:900px}
.template-faq details{border-bottom:1px solid var(--site-line);padding:var(--space-6) 0}
.template-faq summary{cursor:pointer;font:500 var(--text-xl)/1.4 var(--font-sans);color:var(--site-ink);padding:var(--space-2) 0}
.template-faq details p{font:300 var(--text-lg)/1.65 var(--font-sans);color:var(--site-muted);margin:var(--space-4) 0 0}
.template-faq summary:focus-visible{outline:2px solid var(--site-moss);outline-offset:6px;border-radius:var(--radius-sm)}
[data-download-dialog]{width:min(540px,calc(100% - 32px));padding:var(--space-8);border:1px solid var(--glass-rim);border-radius:var(--radius-xl);background:var(--site-card);color:var(--site-ink);box-shadow:var(--glass-shadow);font-family:var(--font-sans)}
[data-download-dialog]::backdrop{background:rgba(36,39,33,.45);backdrop-filter:blur(4px)}
[data-download-dialog] h2{margin:var(--space-5) 0;font:500 var(--text-3xl)/1.2 var(--font-sans)}
[data-download-dialog] p{font:300 var(--text-lg)/1.5 var(--font-sans);color:var(--site-muted)}
[data-download-dialog] label{display:block;margin:var(--space-6) 0 var(--space-2);font-weight:500}
[data-download-dialog] input[type=email]{display:block;width:100%;box-sizing:border-box;padding:var(--space-4);border:1px solid var(--site-line-strong);border-radius:var(--radius-md);background:var(--site-surface);color:var(--site-ink);font:400 var(--text-lg)/1.4 var(--font-sans)}
[data-download-dialog] input:focus-visible,[data-download-dialog] button:focus-visible{outline:2px solid var(--site-moss);outline-offset:3px}
[data-download-dialog] .download-privacy,[data-download-dialog] .download-note{font-size:var(--text-sm)}
[data-download-dialog] a{color:var(--site-moss);text-underline-offset:3px}
.download-close{display:block;margin-left:auto;border:0;padding:var(--space-2);background:transparent;color:var(--site-ink);font:400 var(--text-base)/1.4 var(--font-sans);cursor:pointer}
[data-download-dialog] .download-check{min-height:65px;margin:var(--space-5) 0 var(--space-2)}
[data-download-dialog] [role=alert]{min-height:1.5em;font-size:var(--text-sm)}
[data-download-dialog] button:disabled{opacity:.6;cursor:wait}
@media(max-width:700px){.template-hero .cta-row .btn{width:100%;justify-content:center}.template-breadcrumb{gap:var(--space-2)}}
/* Room for Cloudflare's 300px bot check on phones. */
@media(max-width:420px){[data-download-dialog]{width:calc(100% - 16px);max-width:calc(100% - 16px);padding:var(--space-6) var(--space-4)}}

/* The supplied copy has two usage options; retain the existing mobile stack. */
@media(min-width:961px){[data-template-usage] .template-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
