/* Template library, client portal and client login additions */
.hd-login{display:none;align-items:center;gap:.4rem;min-height:2.875rem;padding:0 .9rem;color:#fff;font:600 .95rem 'Outfit',sans-serif;text-decoration:none;border-radius:.75rem;white-space:nowrap}
.hd-login:hover{background:rgba(255,255,255,.14)}
.hd-login svg{width:1.1rem;height:1.1rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:900px){.hd-login{display:inline-flex;width:100%;justify-content:center;border:3px solid #fff;color:#fff}}
.lb-stats{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.3rem 0 0;padding:0;list-style:none}
.lb-stats li{background:#fff;color:var(--navy);border:3px solid var(--navy);border-radius:99px;padding:.35rem .95rem;font:600 .95rem 'Outfit',sans-serif;box-shadow:3px 3px 0 var(--teal)}
.lb-bar{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin-bottom:1.2rem}
.lb-q{position:relative;flex:1 1 16rem;max-width:26rem}
.lb-q svg{position:absolute;left:.9rem;top:50%;width:1.2rem;height:1.2rem;transform:translateY(-50%);fill:none;stroke:var(--navy);stroke-width:2;stroke-linecap:round}
.lb-q input{width:100%;min-height:2.9rem;padding:.5rem .9rem .5rem 2.7rem;border:3px solid var(--navy);border-radius:.9rem;font:500 1rem 'Outfit',sans-serif;color:var(--navy);background:#fff}
.lb-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1.4rem}
.lb-chips button{border:3px solid var(--navy);background:#fff;color:var(--navy);border-radius:99px;padding:.3rem .85rem;font:600 .9rem 'Outfit',sans-serif;cursor:pointer}
.lb-chips button em{font-style:normal;opacity:.6;margin-left:.3rem}
.lb-chips button[aria-pressed=true]{background:var(--navy);color:#fff}
.lb-count{margin:0 0 1rem;font-weight:600;color:var(--navy)}
.lb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:1.5rem}
.lb-card{display:flex;flex-direction:column;background:#fff;color:var(--navy);border:3px solid var(--navy);border-radius:1.4rem;box-shadow:5px 5px 0 var(--teal);overflow:hidden;min-width:0}
.lb-card[hidden]{display:none}
.lb-img{display:block;aspect-ratio:16/10;background:var(--soft);border-bottom:3px solid var(--navy);overflow:hidden}
.lb-img img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;transition:transform .5s var(--ease)}
.lb-card:hover .lb-img img{transform:scale(1.03)}
.lb-b{display:flex;flex-direction:column;gap:.55rem;padding:1.1rem 1.2rem 1.25rem;flex:1}
.lb-cat{font:600 .8rem 'Outfit',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.lb-b h3{margin:0;font:400 1.3rem 'Bowlby One','Arial Black',sans-serif;line-height:1.15}
.lb-d{margin:0;font-size:.95rem;opacity:.85}
.lb-ds{display:grid;gap:.4rem;margin-top:.3rem}
.lb-ds a{display:flex;align-items:center;gap:.6rem;padding:.4rem .6rem;border:2px solid var(--navy);border-radius:.8rem;text-decoration:none;color:var(--navy);font:600 .9rem 'Outfit',sans-serif;background:#fff;transition:background .2s}
.lb-ds a:hover{background:var(--soft)}
.lb-ds .n{flex:none;display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--navy);color:#fff;font-size:.75rem}
.lb-ds .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb-ds .sw{display:flex;flex:none}
.lb-ds .sw i{width:.8rem;height:.8rem;border-radius:50%;border:1.5px solid var(--navy);margin-left:-.2rem}
.lb-ds .go{flex:none;font-size:.8rem;opacity:.7}
.lb-empty{padding:2.5rem 1rem;text-align:center;font-weight:600}
.lb-note{margin:1.8rem 0 0;font-size:.95rem;opacity:.85}
/* feature grid */
.cp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.3rem}
@media(max-width:1100px){.cp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.cp-grid{grid-template-columns:minmax(0,1fr)}}
.cp-f{background:#fff;color:var(--navy);border:3px solid var(--navy);border-radius:1.3rem;box-shadow:5px 5px 0 var(--teal);padding:1.3rem;display:flex;flex-direction:column;gap:.5rem;min-width:0}
.cp-f .ic{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:.9rem;border:3px solid var(--navy);background:var(--teal)}
.cp-f:nth-child(3n+2) .ic{background:var(--pink)}.cp-f:nth-child(3n) .ic{background:#F5C242}
.cp-f .ic svg{width:1.4rem;height:1.4rem;fill:none;stroke:var(--navy);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cp-f h3{margin:0;font:400 1.15rem 'Bowlby One','Arial Black',sans-serif}
.cp-f p{margin:0;font-size:.97rem}
.cp-shot{margin:0;border:3px solid var(--navy);border-radius:1.2rem;overflow:hidden;background:#fff;box-shadow:6px 6px 0 var(--navy)}
.cp-shot img{display:block;width:100%;height:auto}
.cp-shot figcaption{padding:.7rem 1rem;border-top:3px solid var(--navy);font:600 .95rem 'Outfit',sans-serif;background:#fff;color:var(--navy)}
.cp-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:2.4rem;align-items:center}
.cp-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.6rem;margin-top:2rem}
.cp-tabs{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1.2rem}
.cp-tabs button{border:3px solid var(--navy);background:#fff;color:var(--navy);border-radius:99px;padding:.35rem .95rem;font:600 .95rem 'Outfit',sans-serif;cursor:pointer}
.cp-tabs button[aria-selected=true]{background:var(--navy);color:#fff}
.cp-panel[hidden]{display:none}
.cp-sec{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;margin:0;padding:0;list-style:none}
.cp-sec li{padding:1rem 1.1rem;background:#fff;color:var(--navy);border:3px solid var(--navy);border-radius:1.1rem;font-weight:500}
.cp-sec b{display:block;margin-bottom:.15rem;font-weight:700}
.plat-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:1.6rem}
.plat-card{display:flex;flex-direction:column;gap:.8rem;background:#fff;color:var(--navy);border:3px solid var(--navy);border-radius:1.4rem;box-shadow:6px 6px 0 var(--teal);overflow:hidden;min-width:0}
.plat-card .pi{aspect-ratio:16/9;background:var(--soft);border-bottom:3px solid var(--navy);overflow:hidden}
.plat-card .pi img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}
.plat-card .pb{padding:0 1.4rem 1.5rem;display:flex;flex-direction:column;gap:.7rem;align-items:flex-start}
.plat-card h3{margin:0;font:400 1.5rem 'Bowlby One','Arial Black',sans-serif;line-height:1.1}
.plat-card p{margin:0}
.plat-card .row{display:flex;flex-wrap:wrap;gap:.6rem}
@media(max-width:860px){.cp-hero{grid-template-columns:1fr}}

/* template library: new designs with pictures */
.tlc-img>img{display:block;width:100%;aspect-ratio:560/350;height:auto;object-fit:cover;object-position:top;transition:transform .6s var(--ease)}
.tlc:hover .tlc-img>img{transform:scale(1.05)}
a.tlc-pv{text-decoration:none;color:inherit}
.tlc-badge{position:absolute;top:.6rem;left:.6rem;z-index:1;padding:.1rem .65rem;border:2px solid var(--navy);border-radius:99px;background:var(--pink);color:#fff;font:700 .7rem 'Outfit',sans-serif;letter-spacing:.06em;text-transform:uppercase;box-shadow:2px 2px 0 var(--navy)}
.tlc-badge.cl{background:#fff;color:var(--navy)}
.tlc-meta .pal{display:inline-flex}
.tlc-meta .pal u{width:.95rem;height:.95rem;margin-right:-.2rem;border-radius:50%;border:2px solid var(--navy);text-decoration:none}
.tll-det{margin:.7rem 0 0;border-top:2px solid var(--soft);padding-top:.5rem}
.tll-det summary{display:flex;justify-content:space-between;align-items:center;gap:.5rem;cursor:pointer;list-style:none;padding:.2rem 0}
.tll-det summary::-webkit-details-marker{display:none}
.tll-det summary .h{margin:0;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.tll-det summary::after{content:"+";display:grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:50%;background:var(--soft);font:700 1rem 'Outfit',sans-serif;color:var(--navy)}
.tll-det[open] summary::after{content:"\2212"}
.tll-det .tll-feats{margin-top:.5rem}
.tll-side .tll-col{margin-bottom:.2rem}
@media (max-width:640px){.tlc-badge{top:.4rem;left:.4rem;padding:0 .45rem;font-size:.6rem}.tlc-meta .pal u{width:.8rem;height:.8rem}}

/* sprite thumbs and design info pages */
.tlc-img>.tlc-th,.tm>.tlc-th{display:block;aspect-ratio:560/350;background-size:100% 300%;background-repeat:no-repeat;background-color:#dbe7ff;transition:transform .6s var(--ease)}
.tlc:hover .tlc-img>.tlc-th{transform:scale(1.05)}
.tm>.tlc-th{width:100%}
.dz-art .tplb{padding:0;overflow:hidden}.dz-art .tplb img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.dz-art .phone.dz-phone{padding:0;overflow:hidden}.dz-art .dz-phone img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.dz-top{display:flex;justify-content:space-between;align-items:flex-end;gap:1.2rem;flex-wrap:wrap;margin-bottom:1.4rem}.dz-top .sh{margin:0;max-width:42rem}.dz-act{margin:0}
.dz-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:1.6rem;align-items:start}
.dz-win{border:3px solid var(--navy);border-radius:.9rem;overflow:hidden;background:#fff;box-shadow:.4rem .4rem 0 var(--pink)}
.dz-bar{display:flex;align-items:center;gap:.35rem;padding:.45rem .7rem;background:var(--navy);color:#cfe0ff;font:600 .72rem 'Outfit',sans-serif}
.dz-bar i{width:.55rem;height:.55rem;border-radius:50%;background:var(--pink)}.dz-bar i:nth-child(2){background:#f6c343}.dz-bar i:nth-child(3){background:var(--teal)}.dz-bar span{margin-left:.5rem;opacity:.8}
.dz-win img,.dz-ph img{display:block;width:100%;height:auto}
.dz-ph{width:min(19rem,100%);margin:0 auto;border:3px solid var(--navy);border-radius:1.6rem;overflow:hidden;box-shadow:.4rem .4rem 0 var(--teal);background:#fff}
.dz-info{padding:1.2rem 1.3rem;border:3px solid var(--navy);border-radius:1.2rem;background:#fff;box-shadow:5px 5px 0 var(--teal);min-width:0}
.dz-info h3{margin:1rem 0 .4rem;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.dz-facts{display:grid;gap:.5rem}.dz-facts div{display:flex;justify-content:space-between;gap:1rem;font-size:.95rem;align-items:center}.dz-facts b{font-family:'Outfit',sans-serif;opacity:.7;font-weight:600}
.dz-pal{display:inline-flex}.dz-pal u{width:1.3rem;height:1.3rem;margin-left:-.25rem;border-radius:50%;border:2px solid var(--navy);text-decoration:none}
@media (max-width:900px){.dz-grid{grid-template-columns:minmax(0,1fr)}}

/* brochures */
.bro{margin-top:1rem;padding-top:1rem;border-top:2px dashed var(--navy);display:grid;gap:.5rem}.bro b{font:700 .78rem 'Outfit',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}.bro p{margin:0;font-size:.9rem}
.bro-dl{text-align:center;font:700 .9rem 'Outfit',sans-serif;color:var(--navy);text-decoration:underline;text-underline-offset:3px}.bro-dl:hover{color:var(--pink)}
.bro-note{margin-bottom:1rem}.bro-note .row{display:flex;gap:.6rem;flex-wrap:wrap}

/* per-design template pages */
.dz-art .dz-phone img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.ao{display:flex;flex-direction:column;gap:.35rem;text-decoration:none;color:inherit;position:relative}.ao:hover{transform:translateY(-3px)}
.ao-p{align-self:flex-start;padding:.1rem .7rem;border:2px solid var(--navy);border-radius:99px;background:var(--teal);font:700 .8rem 'Outfit',sans-serif}
.ao h3{margin:.2rem 0 0}.ao p{margin:0}
.dz-pal-row{display:flex;align-items:center;gap:.8rem;margin-top:1rem;font:600 .95rem 'Outfit',sans-serif}
.tm>img{display:block;width:100%;height:auto}
