/* Allhart Options: NA rebrand look (Cormorant / Jost; bone, ink, ochre). Mobile first. Token fallbacks keep it usable off-theme. */
.aho{--aho-ink:var(--ink,#1B1A17);--aho-ink2:var(--ink2,#4A443C);--aho-muted:var(--muted,#7A7065);--aho-line:var(--line,rgba(27,26,23,.14));--aho-white:var(--white,#FBF9F5);--aho-ochre:var(--ochre,#A8834A);--aho-photo:var(--photo,#F1EFE9);--aho-err:#9B2C1F;display:flex;flex-direction:column;gap:22px;margin:0 0 18px;font-family:var(--sans,'Jost',system-ui,sans-serif);color:var(--aho-ink)}
.aho *,.aho *::before,.aho *::after{box-sizing:border-box}
.aho [hidden]{display:none!important}
.aho-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.aho-sec{display:flex;flex-direction:column;gap:14px;margin:0;padding:0}
.aho-sec-title,.aho-legend,.aho-label{display:block;margin:0 0 12px;padding:0;font:500 11px/1.3 var(--sans,'Jost',sans-serif);letter-spacing:.18em;text-transform:uppercase;color:var(--aho-ink)}
.aho-sec-title{margin:0}
.aho-f{margin:0;padding:0;border:0;min-width:0}
.aho-f--font .aho-legend,.aho-f--text .aho-label{color:var(--aho-muted);letter-spacing:.14em}
.aho-req,.aho-opt-tag{font-weight:400;letter-spacing:.06em;text-transform:none;color:var(--aho-muted)}
.aho-opts{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.aho-opt{position:relative;margin:0;padding:0;list-style:none;flex:0 0 auto;max-width:100%}
.aho-radio{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.aho-chip{display:flex;align-items:center;gap:8px;min-height:44px;margin:0;padding:11px 14px;border:1px solid var(--aho-line);background:transparent;font-size:13px;line-height:1.25;color:var(--aho-ink);cursor:pointer;transition:border-color .15s,box-shadow .15s;-webkit-tap-highlight-color:transparent}
.aho-chip:hover{border-color:var(--aho-ink2)}
.aho-radio:checked+.aho-chip{border-color:var(--aho-ink);box-shadow:inset 0 0 0 .5px var(--aho-ink)}
.aho-radio:focus-visible+.aho-chip{outline:2px solid var(--aho-ochre);outline-offset:2px}
.aho-radio[aria-invalid=true]+.aho-chip{border-color:var(--aho-err)}
.aho-delta{color:var(--aho-muted);font-size:11.5px;white-space:nowrap}
.aho-delta:empty{display:none}
/* engraving styles: the customer's own words (or "Forever") in each style */
.aho-f--font .aho-chip{flex-direction:column;align-items:flex-start;gap:6px;min-width:132px;max-width:100%;padding:9px 12px}
.aho-f--font .aho-name{font-size:11px;color:var(--aho-muted)}
.aho-sample{display:block;max-width:calc(100vw - 80px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:21px;line-height:1.1;color:var(--aho-ink)}
.aho-sample[data-font^="Brush"]{font-family:'Brush Script MT','Brush Script Std','Lucida Handwriting',cursive;font-size:24px}
.aho-sample[data-font^="Didot"]{font-family:Didot,'Bodoni 72','Bodoni MT','Playfair Display',Georgia,serif}
.aho-sample[data-font^="Gilroy"]{font-family:Gilroy,'Jost','Helvetica Neue',Arial,sans-serif;font-weight:300;letter-spacing:.02em}
.aho-sample[data-font^="Jenna"]{font-family:'Jenna Sue','Segoe Script','Apple Chancery',cursive;font-size:23px}
.aho-sample[data-font^="Snell"]{font-family:'Snell Roundhand','Apple Chancery','Lucida Calligraphy',cursive;font-style:italic;font-size:23px}
#aho .aho-select{display:block;width:100%;min-height:50px;margin:0;padding:0 14px;border:1px solid var(--aho-line);border-radius:0;background:var(--aho-white);font:400 16px var(--sans,'Jost',sans-serif);color:var(--aho-ink);box-shadow:none}
#aho .aho-select:focus-visible,#aho .aho-text:focus-visible{outline:2px solid var(--aho-ochre);outline-offset:2px}
#aho .aho-select[aria-invalid=true]{border-color:var(--aho-err)}
.aho-f--text{margin-top:2px}
.aho-desc{margin:0 0 6px;font-size:12px;line-height:1.5;color:var(--aho-muted)}
#aho .aho-text{display:block;width:100%;margin:0;padding:10px 0;border:0;border-bottom:1px solid var(--aho-ink2);border-radius:0;background:transparent;font:italic 400 19px/1.2 var(--serif,'Cormorant Garamond',Georgia,serif);color:var(--aho-ink);box-shadow:none}
#aho .aho-text::placeholder{color:var(--aho-muted);opacity:.8}
#aho .aho-text[aria-invalid=true]{border-bottom-color:var(--aho-err)}
.aho-count{margin:6px 0 0;font-size:11.5px;color:var(--aho-muted)}
.aho-count--over{color:var(--aho-err)}
.aho-err{margin:8px 0 0;font-size:12.5px;line-height:1.4;color:var(--aho-err)}
.aho-errsum{margin:0;padding:12px 14px;border-left:2px solid var(--aho-err);background:var(--aho-photo);font-size:13px;line-height:1.45;color:var(--aho-err)}
.aho p.na-purity-note{font-size:12px;color:var(--aho-muted);margin:10px 0 0}
@media (min-width:768px){.aho-sample{max-width:260px}#aho .aho-select{font-size:14px}}
/* a section title already names the engraving group: keep the style legend for screen readers only */
.aho-sec-title~.aho-f--font>.aho-legend{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.aho-radio:checked+.aho-chip .aho-name{font-weight:600}
.aho-f--font .aho-radio:checked+.aho-chip .aho-name{font-weight:500;color:var(--aho-ink)}
@media (prefers-reduced-motion:reduce){.aho-chip{transition:none}}
