/* Program finder follows the approved rose paper, photography and quiet typography. */
.finder-banner{display:grid;grid-template-columns:1.25fr 1fr;margin-top:44px;background:var(--c-brand);color:#2b2a28;position:relative;isolation:isolate;overflow:hidden;border-radius:4px;text-decoration:none}
.finder-banner__copy{padding:36px 44px;position:relative;isolation:isolate}
.finder-banner__copy::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--grain) 0 0/85px;filter:grayscale(1) contrast(4);mix-blend-mode:screen;opacity:.9;mask-image:radial-gradient(ellipse 110% 120% at -15% -35%,transparent 43%,#000 90%)}
.finder-banner .sh__k{font-size:13px;color:var(--c-primary-text);margin:0 0 12px;display:block}
.finder-banner h3{font-size:clamp(23px,2.25vw,30px);font-weight:500;line-height:1.6;letter-spacing:.025em;margin:0 0 14px;text-wrap:balance}
.finder-banner p{font-size:15px;line-height:1.9;margin:0 0 24px;color:#2b2a28}
.finder-banner__link{font-size:14px;display:flex;align-items:center;gap:22px;font-weight:500}
.finder-banner__link>span{width:21px;height:21px;background:currentColor;mask:url(../assets/icons/arrow-right.svg) center/contain no-repeat;transition:transform .35s}
.finder-banner__photo{overflow:hidden;position:relative;min-width:0}
.finder-banner__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 48%;transition:transform .9s cubic-bezier(.2,.65,.3,1)}
.finder-banner:focus-visible{outline:2px solid var(--c-primary-text);outline-offset:5px}
@media(hover:hover){.finder-banner:hover .finder-banner__photo img{transform:none}.finder-banner:hover .finder-banner__link>span{transform:translate(3px,-3px)}}
.lower-program-finder .lower-hero{min-height:350px;padding-bottom:76px}
.lower-program-finder .lower-hero h1{font-size:clamp(28px,3vw,40px)}
.finder-section{padding:30px 0 80px}
.finder-shell{display:grid;grid-template-columns:minmax(210px,.65fr) minmax(0,1.35fr);gap:70px;align-items:start}
.finder-shell[hidden],[data-finder-fallback][hidden],.finder-controls button[hidden]{display:none}
.finder-aside{position:sticky;top:125px}
.lower-page .finder-aside h2{font-size:28px;margin-bottom:28px}
.finder-progress{list-style:none;margin:0 0 30px;padding:0;display:flex;flex-direction:column;gap:18px;counter-reset:finder}
.finder-progress li{counter-increment:finder;display:flex;align-items:center;gap:14px;font-size:14px;color:var(--c-text)}
.finder-progress li::before{content:counter(finder);display:grid;place-items:center;width:28px;height:28px;flex:none;border:1px solid var(--c-brand-tint40);border-radius:50%;font-family:var(--ff-label);font-size:13px}
.finder-progress li[aria-current=step]{font-weight:700;color:var(--c-primary-text)}
.finder-progress li[aria-current=step]::before{background:var(--c-brand-tint32);border-color:var(--c-brand-tint32);color:#2b2a28}
.finder-progress li.is-done::before{background:var(--c-brand-tint18)}
.finder-aside__photo{aspect-ratio:4/3;overflow:hidden;border-radius:4px;max-width:320px}
.finder-aside__photo img{width:100%;height:100%;object-fit:cover}
.finder-stage{min-width:0;background:var(--c-brand-tint12);border-radius:4px;padding:38px 40px;position:relative}
.finder-question{margin-bottom:26px}
.finder-counter{font-family:var(--ff-label);font-size:23px;letter-spacing:0;color:var(--c-primary-text);display:block;margin-bottom:14px}
.finder-counter span{font-size:14px}
.lower-page .finder-question h2{font-size:25px;line-height:1.65;margin:0 0 12px;text-wrap:balance}
.lower-page .finder-question p{font-size:14px;line-height:1.9;margin:0}
.finder-question h2:focus{outline:none}
.finder-options{border:0;padding:0;margin:0;display:grid;gap:10px;min-width:0}
.finder-option{position:relative;display:flex;align-items:center;gap:16px;padding:17px 20px;background:var(--c-bg);border:1px solid transparent;border-radius:4px;cursor:pointer;transition:background .25s,border-color .25s;min-height:83px}
.finder-option input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}
.finder-option__text{flex:1;min-width:0;pointer-events:none}
.finder-option__text strong{display:block;font-size:16px;font-weight:500;line-height:1.6}
.finder-option__text>span{display:block;font-size:13px;line-height:1.8;margin-top:4px;color:var(--c-text)}
.finder-radio{width:20px;height:20px;border:1px solid var(--c-brand-tint65);border-radius:50%;flex:none;display:grid;place-items:center;pointer-events:none}
.finder-option:has(input:checked){background:var(--c-brand-tint32);border-color:var(--c-primary)}
.finder-option:has(input:checked) .finder-radio{border-color:var(--c-primary)}
.finder-option:has(input:checked) .finder-radio::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--c-primary)}
.finder-option:has(input:focus-visible){outline:2px solid var(--c-primary);outline-offset:3px}
.finder-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px}
.finder-controls .btn{margin-left:auto}
.finder-controls .btn:disabled{background:#ddd0ca;color:var(--c-text);cursor:not-allowed;filter:none}
.finder-back,.finder-restart{appearance:none;background:none;border:0;font:inherit;font-size:13px;color:var(--c-text);padding:12px 0;cursor:pointer;text-decoration:underline;text-underline-offset:5px}
.finder-restart{display:block;margin-top:20px}
.finder-textlink{font-size:14px;color:var(--c-primary-text);text-underline-offset:5px;line-height:1.9}
.finder-result__program{display:grid;grid-template-columns:42% 1fr;gap:24px;align-items:center;margin-bottom:28px}
.finder-result__photo{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;max-height:320px}
.finder-result__program>div{min-width:0}
.lower-page .finder-result__program h3{font-size:21px;margin-bottom:18px;line-height:1.6}
.finder-result__program .sh__k{font-size:13px;color:var(--c-primary-text);letter-spacing:.015em;margin-bottom:8px}
.finder-result__plan{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:25px 0;border-block:1px solid var(--c-brand-tint40)}
.finder-plan-label{font-size:13px;color:var(--c-text);display:block;margin-bottom:9px}
.lower-page .finder-result__plan h3{font-size:21px;margin:0}.finder-result__plan h3>span{font-size:16px}
.lower-page .finder-result__plan p{font-size:13px;margin:7px 0 0}
.lower-page .finder-result__plan .finder-result__price{font-size:14px;line-height:1.4;margin:0;white-space:nowrap}
.finder-result__price>span{font:500 33px var(--ff-label);letter-spacing:-.02em;margin-right:4px}
.finder-result__price small{display:block;text-align:right;margin-top:7px}
.lower-page .finder-fee-note{font-size:13px;line-height:1.9;margin:18px 0 25px;color:var(--c-text)}
.finder-fee-note a{color:inherit;text-underline-offset:4px}
.finder-result__actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px}
.lower-page .finder-result__actions .more{margin:0}
.finder-shell.is-result .finder-controls{margin-top:0}
[data-finder-content]{animation:finder-in .5s ease both}
@keyframes finder-in{from{opacity:0}to{opacity:1}}
@media(max-width:1023px){.finder-shell{gap:30px;grid-template-columns:200px minmax(0,1fr)}.finder-stage{padding:28px 24px}.finder-result__program{grid-template-columns:1fr;gap:18px}.finder-result__program>.finder-result__photo{max-height:220px}.finder-result__plan{align-items:flex-start;flex-direction:column;gap:18px}.finder-result__price small{text-align:left}.finder-banner__copy{padding:30px}}
@media(max-width:767px){.finder-banner{grid-template-columns:1fr;margin-top:30px}.finder-banner__copy{padding:26px 24px}.finder-banner__photo{aspect-ratio:16/8;grid-row:1}.finder-banner h3{font-size:24px}.finder-banner p{font-size:14px}.finder-banner__link{font-size:14px;gap:12px;justify-content:space-between}.finder-shell{grid-template-columns:1fr;gap:24px}.finder-aside{position:static}.finder-aside>.sh__k,.lower-page .finder-aside h2,.finder-aside__photo{display:none}.finder-progress{flex-direction:row;justify-content:space-between;gap:6px;margin:0}.finder-progress li{font-size:13px;gap:6px}.finder-progress li::before{width:24px;height:24px}.finder-stage{padding:26px 20px}.lower-page .finder-question h2{font-size:23px}.finder-option{padding:15px 14px;gap:10px}.finder-option__text strong{font-size:15px}.finder-option__text>span{font-size:13px}.finder-counter{font-size:21px}.finder-controls{gap:14px}.finder-controls .btn{padding:12px 16px;font-size:14px}.finder-back{font-size:13px}.finder-section{padding:12px 0 45px}.lower-program-finder .lower-hero{padding-top:115px;min-height:300px}.finder-result__plan{flex-direction:row;flex-wrap:wrap;gap:20px}.finder-result__price>span{font-size:30px}.lower-page .finder-result__program h3{font-size:22px}.finder-result__actions{gap:18px}}
@media(prefers-reduced-motion:reduce){[data-finder-content]{animation:none}.finder-banner__photo img,.finder-banner__link>span,.finder-option{transition:none}}

.finder-options .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.lower-program-finder .float{display:none}
.finder-progress[hidden]{display:none}
.finder-options input{scroll-margin-block:130px}
.finder-controls button{scroll-margin-block:130px}

.finder-phrase{display:inline-block;white-space:nowrap}
.finder-question h2{scroll-margin-top:115px}
@media(min-width:768px) and (max-width:1023px){.lower-page .finder-aside h2{font-size:24px}}

.finder-result__photo + .finder-result__actions{margin-top:26px}

/* The finder opens the program page, followed by the detailed stories. */
.lower-program .finder-section{padding:48px 0 80px;scroll-margin-top:110px}
.lower-program .finder-section>.wrap{padding-top:0}
.lower-program .finder-aside h2{font-size:27px;letter-spacing:.025em;line-height:1.75}

@media(min-width:768px) and (max-width:1023px){.lower-program .finder-aside h2{font-size:23px}}
@media(max-width:767px){.lower-program .finder-section{padding:30px 0 54px}.lower-program .finder-section>.wrap{padding-top:0}.lower-program .finder-aside h2{display:block;font-size:25px;margin:0 0 24px}.lower-program .finder-aside>.sh__k{display:block}.lower-program .finder-aside h2 br{display:none}}

.is-finding-program .float{display:none}
