.gifts .gift-builder-heading{margin-bottom:30px;gap:30px}
.gift-builder-heading h2{font-size:clamp(2rem,3.5vw,3.25rem)}
.gift-builder-heading>p{font-size:1rem;line-height:1.55;max-width:380px}
.gift-builder{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:45px;align-items:start;color-scheme:light}
.gift-preview-wrap{min-width:0;position:sticky;top:28px}
.gift-preview-label{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:13px;font-size:.75rem;letter-spacing:.08em;color:#666d5b}
.certificate-preview{--certificate-bg:#dcfa6b;--certificate-ink:#202716;--certificate-muted:#4e5b32;--certificate-line:#25320f30;--certificate-light:#ffffff38;position:relative;isolation:isolate;overflow:hidden;background:var(--certificate-bg);color:var(--certificate-ink);border:1px solid var(--certificate-line);border-radius:9px;padding:29px 31px 23px;min-height:355px;display:flex;flex-direction:column;box-shadow:0 15px 35px #27301914;transition:background-color .25s,color .25s}
.certificate-preview::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(120deg,transparent 56%,var(--certificate-light) 56.2%,transparent 56.5%,transparent 69%,var(--certificate-light) 69.2%,transparent 69.5%)}
.certificate-preview[data-design=graphite]{--certificate-bg:#1c2418;--certificate-ink:#dcfa6b;--certificate-muted:#bac5ac;--certificate-line:#dcfa6b40;--certificate-light:#dcfa6b16}
.certificate-preview[data-design=silver]{--certificate-bg:#dce0d2;--certificate-ink:#23291b;--certificate-muted:#555e49;--certificate-line:#414a2d35;--certificate-light:#ffffff77}
.certificate-header{display:flex;gap:18px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--certificate-line);padding-bottom:17px}
.certificate-header img{width:112px;height:43px;object-fit:contain;filter:brightness(0)}
.certificate-preview[data-design=graphite] .certificate-header img{filter:brightness(0) invert(1)}
.certificate-header>span{font-size:.75rem;line-height:1.5;letter-spacing:.08em;text-align:right}
.certificate-preview .certificate-course{font-size:clamp(2rem,3.2vw,3.2rem);line-height:1.08;font-weight:650;letter-spacing:-.04em;margin-top:27px;max-width:460px;white-space:pre-line}
.certificate-recipient{margin-top:24px;padding-top:18px;border-top:1px solid var(--certificate-line)}
.certificate-recipient>span{display:block;font-size:.75rem;letter-spacing:.1em;color:var(--certificate-muted)}
.certificate-recipient strong{display:block;font-size:clamp(1.2rem,1.8vw,1.65rem);font-weight:500;line-height:1.3;letter-spacing:-.02em;margin-top:7px;overflow-wrap:anywhere}
.gifts .certificate-message{color:var(--certificate-ink);font-size:1rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:17px}
.gifts .certificate-from{color:var(--certificate-muted);font-size:.875rem;line-height:1.4;margin-top:13px;overflow-wrap:anywhere}
.certificate-message[hidden],.certificate-from[hidden]{display:none}
.certificate-footer{display:flex;gap:20px;justify-content:space-between;align-items:center;padding-top:25px;margin-top:auto;font-size:.75rem;line-height:1.5;letter-spacing:.06em;color:var(--certificate-muted)}
.certificate-footer span:last-child{border:1px solid var(--certificate-line);padding:3px 7px;border-radius:3px}
.gifts .certificate-disclaimer{font-size:.875rem;line-height:1.5;color:#626b55;margin-top:16px;max-width:540px}
.gift-builder-form{min-width:0}
.gift-builder-form fieldset{border:0;padding:0;margin:0 0 20px;min-width:0}
.gift-builder-form legend,.gift-field>span{font-size:.875rem;font-weight:550;line-height:1.5;color:var(--ink);padding:0;margin-bottom:9px}
.gift-program-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.gift-program-choice{position:relative;min-width:0;cursor:pointer}
.gift-program-choice>span{display:flex;align-items:center;justify-content:center;min-height:49px;padding:9px 8px;border:1px solid #b7bea9;border-radius:4px;font-size:.875rem;text-align:center;background:#fbfcf5;line-height:1.4;color:var(--ink)}
.gift-program-choice input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--text)}
.gift-program-choice input:focus-visible+span,.gift-design-choice input:focus-visible+span{outline:3px solid #53721a;outline-offset:3px}
.gift-person-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}
.gift-field{display:block;min-width:0}.gift-field>span{display:block}
.gift-field input,.gift-field textarea{display:block;width:100%;min-height:47px;border:1px solid #b7bea9;border-radius:4px;background:#fbfcf5;color:var(--ink);padding:11px 13px;font-size:1rem;line-height:1.45}
.gift-field textarea{resize:vertical;min-height:88px;max-height:240px}
.gift-field input::placeholder,.gift-field textarea::placeholder{color:#727a64;opacity:1}
.gift-field input:focus-visible,.gift-field textarea:focus-visible{outline-color:#53721a;outline-offset:3px}
.gift-field .gift-field-hint{display:block;font-size:.75rem;font-weight:400;color:#737b65;margin-top:6px;margin-bottom:0}
.gift-builder-form .gift-designs{margin:20px 0 22px}
.gift-design-options{display:flex;gap:8px;flex-wrap:wrap}
.gift-design-choice{position:relative;cursor:pointer}
.gift-design-choice>span{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid #b7bea9;border-radius:4px;font-size:.875rem;line-height:1.4;background:transparent}
.gift-design-choice input:checked+span{border-color:#4e6330;box-shadow:inset 0 0 0 1px #4e6330;background:#fff8}
.gift-design-dot{width:16px;height:16px;border:1px solid #59604466;border-radius:50%;flex-shrink:0}
.gift-design-dot.lime{background:#dcfa6b}.gift-design-dot.graphite{background:#1c2418}.gift-design-dot.silver{background:#dce0d2}
.gift-builder-submit{width:100%;border:1px solid var(--ink);background:var(--ink);color:var(--text);min-height:51px}
.gift-builder-submit:hover{background:#303a23}
.gift-builder-submit:disabled{opacity:.5;cursor:wait;transform:none}
.gift-mobile-preview{display:none}
.gifts .gift-builder-status{font-size:.875rem;line-height:1.5;color:#667058;margin-top:12px}
@media(max-width:1100px){.gift-builder{gap:30px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.certificate-preview{padding:24px}.gift-person-fields{gap:12px}}
@media(max-width:900px){.gift-builder{grid-template-columns:1fr;gap:26px}.gift-preview-wrap{position:static;max-width:660px;width:100%;margin-inline:auto}.certificate-preview{min-height:340px}.certificate-preview .certificate-course{font-size:2.65rem}.gift-builder-form{width:100%;max-width:660px;margin-inline:auto}.gift-builder-heading>p{max-width:300px}.gift-mobile-preview{display:inline-flex;min-height:44px;align-items:center;gap:10px;margin-bottom:13px;font-size:.875rem;text-decoration:underline;text-underline-offset:4px}}
@media(max-width:620px){.gifts .gift-builder-heading{display:block;margin-bottom:25px}.gift-builder-heading h2{font-size:2rem}.gift-builder-heading>p{max-width:none;margin-top:16px;font-size:1rem}.gift-preview-label{font-size:.75rem;letter-spacing:.035em}.certificate-preview{padding:22px;min-height:325px}.certificate-header img{width:96px;height:37px}.certificate-header>span{font-size:.75rem;letter-spacing:.025em}.certificate-preview .certificate-course{font-size:2.2rem;margin-top:23px}.certificate-recipient{margin-top:20px;padding-top:16px}.certificate-recipient strong{font-size:1.3rem}.certificate-footer{font-size:.75rem;letter-spacing:0;gap:10px}.gift-person-fields{grid-template-columns:1fr;gap:15px}.gift-builder-form fieldset{margin-bottom:18px}.gift-program-options{gap:7px}.gift-program-choice>span{font-size:.875rem;min-height:53px}.gift-design-choice>span{padding-inline:10px}.gift-design-options{gap:7px}}
@media(prefers-reduced-motion:reduce){.certificate-preview{transition:none}}

/* A smaller preview and tighter form keep the whole constructor in view. */
.gifts.section{padding-block:42px}
.gifts .gift-builder-heading{margin-bottom:22px;align-items:center}
.gift-builder-heading h2{font-size:clamp(1.8rem,2.7vw,2.6rem);line-height:1.1}
.gift-builder-heading .eyebrow{margin-bottom:12px}
.gift-builder-heading>p{max-width:370px;line-height:1.45}
.gift-builder{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:32px;max-width:1180px;margin-inline:auto}
.gift-preview-label{margin-bottom:9px}
.certificate-preview{padding:20px 23px;min-height:270px;box-shadow:0 10px 30px #40581312}
.certificate-header{padding-bottom:11px}
.certificate-header img{width:98px;height:37px}
.certificate-preview .certificate-course{font-size:clamp(1.7rem,2.6vw,2.5rem);margin-top:17px}
.certificate-recipient{margin-top:16px;padding-top:12px}
.certificate-recipient strong{font-size:1.3rem;margin-top:5px}
.gifts .certificate-message{margin-top:12px;line-height:1.45}
.gifts .certificate-from{margin-top:8px}
.certificate-footer{padding-top:16px}
.gifts .certificate-disclaimer{margin-top:10px;line-height:1.4}
.gift-builder-form fieldset{margin-bottom:12px}
.gift-builder-form legend,.gift-field>span{margin-bottom:6px}
.gift-program-choice>span{min-height:44px;padding:7px 8px}
.gift-person-fields{margin-bottom:12px;gap:12px}
.gift-field input,.gift-field textarea{min-height:44px;padding:9px 11px}
.gift-field textarea{min-height:64px}
.gift-builder-form .gift-designs{margin:12px 0 14px}
.gift-design-choice>span{padding-block:6px}
.gift-builder-submit{min-height:46px}
.gifts .gift-builder-status{margin-top:8px;font-size:.875rem;line-height:1.4}
@media(max-width:900px){.gifts.section{padding-block:34px}.gift-builder{grid-template-columns:1fr 1.08fr;gap:22px}.certificate-preview{padding:18px;min-height:260px}.certificate-preview .certificate-course{font-size:1.85rem}.gift-program-options{gap:6px}.gift-person-fields{grid-template-columns:1fr;gap:10px}.gift-preview-wrap{position:sticky;top:24px}.gift-mobile-preview{display:none}.certificate-header{gap:8px}.certificate-header img{width:80px}.certificate-header>span{font-size:.75rem;letter-spacing:0}}
@media(max-width:680px){.gifts .gift-builder-heading{margin-bottom:18px}.gift-builder-heading h2{font-size:1.9rem}.gift-builder-heading>p{margin-top:12px;max-width:none}.gift-builder{grid-template-columns:1fr;gap:18px}.gift-preview-wrap{position:static}.certificate-preview{min-height:240px;padding:18px 20px}.certificate-preview .certificate-course{font-size:2rem;margin-top:14px}.certificate-recipient{margin-top:13px;padding-top:10px}.certificate-recipient strong{font-size:1.2rem}.certificate-footer{padding-top:13px}.gift-person-fields{grid-template-columns:1fr 1fr;gap:10px}.gift-mobile-preview{display:inline-flex;margin-bottom:8px}.gift-design-choice>span{padding-inline:9px}}
@media(max-width:360px){.gift-person-fields{grid-template-columns:1fr}.gift-design-options{gap:5px}.gift-design-choice>span{padding-inline:7px}.certificate-preview .certificate-course{font-size:1.7rem}}
