/* DudeMeds: the pricing tool is a single viewport workspace, not a compressed landing page. */
:root{--ds-orange:#ff6900;--ds-ink:#171916;--ds-paper:#f6f4ee;--ds-line:#d9dacf;--ds-muted:#55594f}
body.ds-tool{background:var(--ds-paper);color:var(--ds-ink);margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;-webkit-text-size-adjust:100%}
.ds-tool *, .ds-tool *::before, .ds-tool *::after{box-sizing:border-box}
.ds-tool #main{outline:none}.ds-tool h1,.ds-tool h2,.ds-tool h3{margin:0;text-transform:none;font-family:Arial,Helvetica,sans-serif;letter-spacing:-.04em;line-height:1.05}
.ds-tool p{margin:0}.ds-tool button,.ds-tool select,.ds-tool input{font:inherit}.ds-tool button,.ds-tool a{-webkit-tap-highlight-color:transparent}.ds-tool button{cursor:pointer}
.ds-tool [hidden]{display:none!important}
.ds-tool :is(a,button,select,input):focus-visible{outline:3px solid #235da6;outline-offset:3px}
.ds-tool .icon{width:20px;height:20px;flex:none;vertical-align:middle}
.ds-header{height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(32px,calc((100vw - 1240px)/2));border-bottom:1px solid var(--ds-line);background:#fff}
.ds-brand{display:flex;align-items:center;min-height:48px;width:165px;flex:none;color:var(--ds-ink);text-decoration:none;font-size:1.875rem;font-weight:900;letter-spacing:-1.5px}
.ds-brand svg{width:100%;height:auto}.ds-header-note{font-size:0.75rem;font-weight:700;letter-spacing:.14em}.ds-help{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;color:var(--ds-ink);font-size:1rem;text-decoration:none}
.ds-shell{max-width:1240px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:52px;padding:32px;align-items:center;min-height:calc(100svh - 72px)}
.ds-story{position:relative;background:#252721;border-radius:16px;overflow:hidden;align-self:stretch;min-height:570px;max-height:760px;color:#fff}
.ds-story>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center}
.ds-story::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#12151055 0%,#12151005 30%,#121510db 100%)}
.ds-story-top{position:absolute;left:28px;top:24px;right:28px;display:flex;align-items:center;justify-content:space-between;z-index:1;font-size:0.6875rem;letter-spacing:.1em;font-weight:700}
.ds-story-mark{font-size:1.5625rem;font-weight:900;letter-spacing:-2px;color:var(--ds-orange)}
.ds-story-copy{position:absolute;bottom:36px;left:32px;right:26px;z-index:1}.ds-story-copy>p:first-child{font-size:0.75rem;font-weight:700;letter-spacing:.15em;margin-bottom:20px}
.ds-story-copy h2{font-size:clamp(40px,4.4vw,65px);font-weight:900;line-height:.96;letter-spacing:-.055em}.ds-story-copy h2 em{font-style:normal;color:var(--ds-orange)}
.ds-story-bottom{font-size:1.125rem;line-height:1.5;margin-top:22px!important;color:#f1f0e9}
.ds-panel{min-width:0;width:100%;max-width:520px;margin:auto;background:#fff;border:1px solid var(--ds-line);border-radius:16px;box-shadow:0 12px 40px #1b231008;padding:26px}
.ds-kicker{display:block;color:var(--ds-muted);font-weight:700;font-size:0.6875rem;line-height:1.5;letter-spacing:.12em}
.ds-gate h1{font-size:2.75rem;line-height:1.06;margin:18px 0 20px;font-weight:800}.ds-gate h1 em{font-style:normal}.ds-gate-intro{font-size:1.125rem;line-height:1.6;margin-bottom:25px!important;color:var(--ds-muted)}
.ds-field{position:relative;min-width:0;display:flex;flex-direction:column;border:1px solid #a5aa9e;border-radius:9px;background:#fff;overflow:hidden;font-weight:400}
.ds-field>span{display:block;font-size:0.8125rem;font-weight:600;line-height:1.2;padding:10px 13px 0;color:var(--ds-muted);pointer-events:none}
.ds-field select{background:transparent;border:0;color:var(--ds-ink);border-radius:0;width:100%;min-width:0;font-size:1.0625rem;font-weight:600;line-height:1.3;padding:3px 32px 10px 13px;min-height:37px;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23171916' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat}
.ds-field:focus-within{outline:3px solid #235da6;outline-offset:2px}.ds-field select:focus-visible{outline:none}.ds-field select:disabled{color:var(--ds-muted);cursor:default}
.ds-agree{display:flex;align-items:flex-start;gap:12px;margin:22px 0 23px;font-size:1rem;line-height:1.5;cursor:pointer;padding:5px 0;min-height:44px}
.ds-agree input{appearance:auto;width:24px;height:24px;flex:none;margin:1px 0 0;accent-color:var(--ds-ink)}
.ds-agree a{color:var(--ds-ink);text-decoration:underline;text-underline-offset:3px}.ds-primary{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:2px solid transparent;border-radius:9px;min-height:60px;padding:15px 18px;background:var(--ds-orange);color:#171916;text-align:left;text-decoration:none;font-size:1.125rem;font-weight:700;line-height:1.3;box-shadow:0 3px 0 #cd4e00;transition:box-shadow .15s,transform .15s}
.ds-primary:hover{box-shadow:0 4px 0 #aa4000;transform:translateY(-1px)}.ds-primary:active{transform:translateY(1px);box-shadow:0 1px 0 #aa4000}.ds-primary:disabled{background:#e9eae4;color:#5c6156;cursor:not-allowed;box-shadow:none;transform:none}
.ds-reassurance{display:flex;align-items:center;justify-content:center;gap:8px;font-size:0.8125rem;line-height:1.5;color:var(--ds-muted);margin-top:21px!important}.ds-reassurance .icon{width:16px;height:16px}
.ds-error{padding:12px 0;color:#8c2c16;font-size:1rem;line-height:1.4}
.ds-config{display:flex;flex-direction:column;gap:12px}.ds-progress{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;font-size:0.8125rem;font-weight:600;color:#5c6057}.ds-progress span{display:flex;align-items:center;gap:8px}.ds-progress span:first-child{color:#171916}.ds-progress b{width:22px;height:22px;border-radius:50%;display:inline-grid;place-items:center;background:#e8eae3;font-size:0.75rem}.ds-progress span:first-child b{background:var(--ds-ink);color:#fff}
.ds-top-pair{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:10px}.ds-state-button{display:flex;flex-direction:column;justify-content:center;align-items:stretch;text-align:left;padding:8px 12px;border:1px solid #a5aa9e;border-radius:9px;min-height:62px;background:#fff;color:var(--ds-ink)}
.ds-state-button>span{font-size:0.8125rem;font-weight:600;color:var(--ds-muted);line-height:1.2}.ds-state-button strong{display:flex;justify-content:space-between;align-items:center;gap:4px;font-size:1rem;line-height:1.3;margin-top:5px;font-weight:600}.ds-state-button .icon{width:16px;height:16px}
.ds-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ds-fixed{min-width:0;display:flex;flex-direction:column;justify-content:center;min-height:63px;border:1px solid var(--ds-line);border-radius:9px;padding:9px 13px;background:#f8f9f5;gap:5px}.ds-fixed>span{font-size:0.8125rem;color:var(--ds-muted);font-weight:600}.ds-fixed>strong{font-size:1.0625rem;font-weight:600;line-height:1.3}
.ds-value{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px;font-size:0.875rem;color:#41483a;line-height:1.3;min-height:29px}.ds-value-badge{display:inline-flex;align-items:center;gap:5px;font-size:0.75rem;font-weight:700;background:#edf0e5;color:#354528;padding:5px 7px;border-radius:5px}.ds-value-badge .icon{width:14px;height:14px}
.ds-details-button{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:48px;text-align:left;background:#f3f4ee;color:var(--ds-ink);border:1px solid var(--ds-line);border-radius:8px;padding:8px 12px;font-size:1rem;font-weight:600;line-height:1.3}.ds-details-button:disabled{color:var(--ds-muted);cursor:default}.ds-details-plus{font-size:1.5rem;font-weight:400}
.ds-purchase{border-top:1px solid var(--ds-line);padding-top:17px;margin-top:3px}.ds-total{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px}.ds-total>div:first-child{flex:none}.ds-total-label{font-size:0.875rem;font-weight:600;display:block;margin-bottom:4px}.ds-total strong{display:block;font-weight:800;font-size:3.25rem;line-height:1;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.ds-total-context{text-align:right;max-width:58%;font-size:1rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.ds-total-context small{display:block;font-size:0.8125rem;color:var(--ds-muted);font-weight:400;margin-top:4px;line-height:1.4}
.ds-clinical{font-size:0.8125rem;color:var(--ds-muted);line-height:1.45;margin-top:14px!important;text-align:center}.ds-unavailable{font-size:0.875rem;line-height:1.4;color:#744321;background:#fbf2e9;padding:9px 10px;border-radius:6px;margin-bottom:12px!important}.ds-support{background:#22271f;color:#fff;box-shadow:none}
.ds-empty{min-height:83px;display:flex;align-items:center;gap:14px;background:#f5f6f0;border-radius:9px;padding:16px}.ds-empty p{font-size:1rem;line-height:1.6}.ds-empty-icon{display:grid;place-items:center;width:35px;height:35px;background:#e9ecdf;border-radius:50%;flex:none}.ds-clear-type{align-self:flex-start;text-decoration:underline;color:var(--ds-ink);min-height:44px;font-size:0.875rem;background:transparent;border:0}
.ds-sheet{margin:auto;width:min(620px,calc(100vw - 24px));max-height:calc(100svh - 24px);padding:0;background:#fff;color:var(--ds-ink);border:1px solid var(--ds-line);border-radius:16px;box-shadow:0 30px 110px #151a1350;overflow:auto;overscroll-behavior:contain}
.ds-sheet::backdrop{background:#131b17a8;backdrop-filter:blur(4px)}.ds-sheet-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 24px 16px}.ds-sheet h2{font-size:1.75rem;line-height:1.2;margin-top:10px;overflow-wrap:anywhere}.ds-sheet h3{font-size:1.25rem;margin:22px 0 10px;letter-spacing:-.02em}.ds-sheet-close{width:44px;height:44px;border:1px solid var(--ds-line);border-radius:50%;background:#f7f7f2;display:grid;place-items:center;flex:none;color:var(--ds-ink)}
.ds-sheet-tabs{position:sticky;top:0;z-index:1;background:#fff;display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:0 24px 12px;border-bottom:1px solid var(--ds-line)}.ds-sheet-tabs button{min-height:46px;font-size:1rem;border:1px solid var(--ds-line);border-radius:7px;background:#fff;color:var(--ds-ink);font-weight:600}.ds-sheet-tabs [aria-pressed=true]{background:var(--ds-ink);color:#fff;border-color:var(--ds-ink)}
.ds-sheet-content{padding:20px 24px 24px;font-size:1rem;line-height:1.6}.ds-sheet-content p+p{margin-top:16px}.ds-sheet-intro{margin-bottom:16px!important;color:var(--ds-muted)}.ds-sheet-done{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;min-height:56px;width:100%;padding:14px 24px;border:0;border-top:1px solid var(--ds-line);background:#fff;font-size:1rem;font-weight:700;color:var(--ds-ink)}
.ds-compare-list{display:flex;flex-direction:column;gap:10px}.ds-compare-option{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:15px;text-align:left;padding:14px;border:1px solid #a5aa9e;border-radius:9px;background:#fff;color:var(--ds-ink)}.ds-compare-option[aria-pressed=true]{border:2px solid var(--ds-ink);background:#f5f7ee;padding:13px}.ds-compare-option strong{font-size:1rem;line-height:1.4}.ds-compare-option small{display:block;font-size:0.875rem;line-height:1.45;color:var(--ds-muted);margin-top:5px}.ds-compare-total{font-weight:800;font-size:1.375rem;display:flex;align-items:center;gap:7px;white-space:nowrap}
.ds-sheet-price{background:#f4f6ee;padding:20px;border-radius:10px;margin-bottom:20px}.ds-sheet-price>span{font-size:0.9375rem}.ds-sheet-price>strong{display:block;font-size:2.625rem;font-weight:800;letter-spacing:-.04em}.ds-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.ds-shell{gap:24px;padding:24px}.ds-panel{padding:22px}.ds-story-copy{left:24px}.ds-story-copy h2{font-size:2.875rem}.ds-story-top{left:24px;right:24px}.ds-story-top>span:first-child{font-size:0.5625rem}.ds-header{padding:0 24px}.ds-header-note{display:none}}
@media(max-width:700px){
 .ds-header{height:56px;padding:0 16px;gap:12px}.ds-brand{width:134px;min-height:44px}.ds-help{font-size:0.9375rem;min-height:44px;gap:8px}.ds-help .icon{width:18px;height:18px}
 .ds-shell{display:block;padding:12px 12px max(12px,env(safe-area-inset-bottom));min-height:calc(100svh - 56px)}.ds-story{display:none}.ds-panel{border-radius:13px;padding:17px;max-width:500px;box-shadow:0 5px 25px #151a0905}
 .ds-config{gap:10px}.ds-progress{margin-bottom:2px;font-size:0.75rem}.ds-progress b{width:20px;height:20px}.ds-top-pair{gap:8px;grid-template-columns:1.15fr 1fr}
 .ds-field>span{font-size:0.75rem;padding:8px 11px 0}.ds-field select{font-size:1rem;min-height:35px;padding:3px 29px 9px 11px;background-position:right 10px center}
 .ds-state-button{min-height:58px;padding:8px 10px}.ds-state-button>span{font-size:0.75rem}.ds-state-button strong{font-size:1rem;margin-top:4px}
 .ds-pair{gap:8px}.ds-fixed{min-height:58px;padding:8px 11px;gap:4px}.ds-fixed>span{font-size:0.75rem}.ds-fixed>strong{font-size:1rem}
 .ds-value{font-size:0.875rem;min-height:25px;gap:6px}.ds-value-badge{font-size:0.6875rem;padding:4px 6px;gap:3px}.ds-value-badge .icon{width:12px;height:12px}
 .ds-details-button{min-height:44px;font-size:0.9375rem;padding:7px 10px}.ds-purchase{padding-top:12px;margin-top:1px}.ds-total{margin-bottom:12px;gap:10px}.ds-total-label{font-size:0.8125rem;margin-bottom:4px}.ds-total strong{font-size:2.875rem}.ds-total-context{font-size:0.9375rem;max-width:56%}.ds-total-context small{font-size:0.75rem}
 .ds-primary{min-height:56px;font-size:1.0625rem;padding:13px 14px}.ds-clinical{font-size:0.75rem;line-height:1.4;margin-top:12px!important}.ds-unavailable{font-size:0.8125rem;margin-bottom:9px!important;padding:7px 8px}
 .ds-gate{padding:6px 2px}.ds-gate .ds-kicker{font-size:0.625rem}.ds-gate h1{font-size:2.25rem;margin:15px 0}.ds-gate-intro{font-size:1.0625rem;line-height:1.5;margin-bottom:20px!important}.ds-gate .ds-field>span{font-size:0.8125rem}.ds-gate .ds-field select{min-height:40px;font-size:1.125rem}
 .ds-agree{font-size:1rem;line-height:1.5;margin:19px 0;gap:11px}.ds-reassurance{font-size:0.75rem;margin-top:19px!important;gap:6px}.ds-reassurance .icon{width:15px;height:15px}
 .ds-sheet{border-radius:14px;width:calc(100vw - 16px);max-height:calc(100svh - 16px)}.ds-sheet-top{padding:18px 17px 14px;gap:12px}.ds-sheet h2{font-size:1.5rem}.ds-sheet .ds-kicker{font-size:0.5625rem}.ds-sheet-tabs{padding:0 17px 10px}.ds-sheet-content{padding:17px}.ds-sheet-done{padding:14px 17px}.ds-compare-option{padding:11px}.ds-compare-option[aria-pressed=true]{padding:10px}.ds-compare-total{font-size:1.25rem}
}
@media(max-width:700px) and (max-height:680px){.ds-shell{padding-top:8px;padding-bottom:8px}.ds-panel{padding:13px 14px}.ds-config{gap:8px}.ds-progress{margin:0}.ds-clinical{margin-top:10px!important}.ds-gate h1{font-size:2.0625rem;margin:11px 0}.ds-gate-intro{margin-bottom:15px!important}.ds-agree{margin:15px 0}.ds-reassurance{margin-top:15px!important}.ds-gate .ds-kicker{font-size:0.625rem}}
@media(prefers-reduced-motion:reduce){.ds-primary{transition:none}.ds-primary:hover,.ds-primary:active{transform:none}}
/* No fixed body height, zoom lock, or hidden overflow: large text and short screens remain usable. */

/* The whole field, including its label, is a large native-select tap target. */
.ds-field{min-height:64px}
.ds-field>span{position:relative;z-index:1;pointer-events:none}
.ds-field select{position:absolute;inset:0;height:100%;min-height:100%;padding:25px 32px 8px 13px;background-position:right 12px center}
@media(max-width:700px){.ds-field{min-height:58px}.ds-field select{padding:23px 29px 7px 11px}.ds-gate .ds-field{min-height:64px}.ds-gate .ds-field select{padding-top:25px}}
.ds-gate h1 em{color:var(--ds-ink)}
@media(max-width:700px) and (max-height:600px){
 .ds-header{height:52px}
 .ds-shell{min-height:calc(100svh - 52px);padding:6px 10px}
 .ds-panel{padding:10px 12px}
 .ds-progress{display:none}
 .ds-config{gap:6px}
 .ds-value{min-height:20px}
 .ds-purchase{padding-top:9px}
 .ds-total{margin-bottom:10px}
 .ds-clinical{margin-top:8px!important}
 .ds-details-button{padding-top:4px;padding-bottom:4px}
 .ds-gate{padding:4px 2px}
 .ds-gate .ds-kicker{display:none}
 .ds-gate h1{margin-top:4px}
}

.ds-tool{font-size:1rem}
.ds-state-button strong{overflow-wrap:anywhere}
/* Native fields grow with the user's text setting instead of clipping their text. */
.ds-field{min-height:4rem}
@media(max-width:700px){.ds-field,.ds-state-button,.ds-fixed{min-height:3.625rem}.ds-gate .ds-field{min-height:4rem}}
/* Keep labels in document flow when a reader enlarges text. Select controls still have 44px+ hit areas. */
.ds-field{min-height:0}
.ds-field select{position:static;inset:auto;height:auto;min-height:44px;padding:3px 32px 9px 13px}
.ds-field>span{padding-top:8px}
.ds-progress{flex-wrap:wrap;row-gap:8px}
.ds-progress b{width:1.375rem;height:1.375rem;flex:none}
.ds-tool .skip-link:not(:focus){position:absolute;left:-10000px;top:auto;width:1px;height:1px;padding:0;overflow:hidden}
.ds-tool .skip-link:focus{position:fixed;top:8px;left:8px;width:auto;height:auto;padding:12px 20px}
@media(max-width:700px){.ds-field,.ds-gate .ds-field{min-height:0}.ds-field select,.ds-gate .ds-field select{padding:3px 29px 8px 11px;min-height:44px}}
.ds-config{container-name:dsconfig;container-type:inline-size}
@container dsconfig (max-width:20em){.ds-top-pair,.ds-pair{grid-template-columns:1fr}}

.ds-value-unavailable{background:#fbf2e9;color:#744321}
