.hp-field{position: absolute !important;left: -9999px !important;width: 1px;height: 1px;opacity: 0}.container--narrow{max-width: 880px}.section--alt{background: var(--bg-alt)}.section--listing{padding-top: clamp(28px,4vw,48px)}.section__head{display: flex;flex-wrap: wrap;align-items: flex-end;justify-content: space-between;gap: 24px;margin-bottom: clamp(28px,4vw,44px)}.section__head--center{flex-direction: column;align-items: center;text-align: center}.section__eyebrow{margin: 0 0 8px;font-size: .8rem;font-weight: 800;letter-spacing: .12em;text-transform: uppercase;color: var(--accent-text)}.section__title{margin: 0;font-size: clamp(1.6rem,3.4vw,2.3rem);font-weight: 600}.btn--ghost{background: transparent;border-color: var(--border-strong);color: var(--ink)}.btn--ghost:hover{border-color: var(--accent);color: var(--accent-text)}.btn--lg{padding: 15px 32px;font-size: 1.02rem}.faq-list{display: flex;flex-direction: column;gap: 12px}.faq{background: var(--surface);border: 1px solid var(--border);border-radius: var(--r-md);overflow: hidden;transition: border-color var(--t-3) var(--ease)}.faq[open]{border-color: var(--border-strong)}.faq summary{display: flex;align-items: center;justify-content: space-between;gap: 16px;padding: 18px 22px;list-style: none;cursor: pointer;font-weight: 700;color: var(--ink);font-size: 1.02rem}.faq summary::-webkit-details-marker{display: none}.faq summary svg{width: 18px;height: 18px;flex-shrink: 0;color: var(--muted);transition: transform var(--t-4) var(--ease)}.faq[open] summary svg{transform: rotate(180deg);color: var(--accent-text)}.faq__answer{padding: 0 22px 20px;color: var(--muted)}.faq__answer p{margin: 0}.page-head{padding-block: clamp(36px,6vw,64px) clamp(20px,3vw,32px)}.page-head__eyebrow{margin: 0 0 8px;font-size: .8rem;font-weight: 800;letter-spacing: .12em;text-transform: uppercase;color: var(--accent-text)}.page-head__title{display: flex;align-items: center;gap: 14px;font-size: clamp(1.9rem,4.5vw,3.3rem);font-weight: 600;margin-bottom: 12px}.page-head__desc{max-width: 64ch;margin: 0;color: var(--muted);font-size: 1.02rem}.breadcrumbs{padding-top: 18px;font-size: .84rem}.breadcrumbs__list{display: flex;flex-wrap: wrap;align-items: center;gap: 4px;list-style: none;margin-block: 0;padding-block: 0}.breadcrumbs__item{display: inline-flex;align-items: center;gap: 4px;color: var(--muted);min-width: 0}.breadcrumbs__item + .breadcrumbs__item::before{content: "›";margin-inline: 5px;color: var(--muted);opacity: .6}.breadcrumbs__item a{color: var(--muted);font-weight: 600;text-decoration: none;white-space: nowrap}.breadcrumbs__item a:hover{color: var(--accent-text)}.breadcrumbs__item span{font-weight: 600;color: var(--text);white-space: nowrap;overflow: hidden;text-overflow: ellipsis;max-width: 46ch}.form-label{display: block;margin-bottom: 14px;font-size: .8rem;font-weight: 800;letter-spacing: .1em;text-transform: uppercase;color: var(--muted)}.slot-btn{padding: 9px 18px;border: 1px solid var(--border-strong);border-radius: var(--r-pill);background: var(--surface);color: var(--ink);font-weight: 700;font-size: .9rem;font-variant-numeric: tabular-nums;transition: border-color var(--t-3) var(--ease),background-color var(--t-3) var(--ease),transform var(--t-3) var(--ease)}.slot-btn:hover{border-color: var(--accent);transform: translateY(-2px)}.slot-btn.is-selected{background: var(--ink);border-color: var(--ink);color: var(--bg)}.form-grid{display: grid;gap: 18px}@media (min-width: 768px){.form-grid{grid-template-columns: 1fr 1fr}.form-field--full{grid-column: 1 / -1}}.form-field label{display: block;margin-bottom: 7px;font-size: .88rem;font-weight: 700;color: var(--ink)}.form-field input,.form-field select,.form-field textarea{width: 100%;padding: 12px 16px;border: 1.5px solid var(--border-strong);border-radius: var(--r-sm);background: var(--bg);color: var(--ink);font-family: var(--font-sans);font-size: .95rem;transition: border-color var(--t-3) var(--ease)}.form-field textarea{resize: vertical;min-height: 80px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline: none;border-color: var(--accent);box-shadow: 0 0 0 3px var(--accent-soft)}.section__head{position: relative}.section__head>div,.section__head>a,.section__head>p,.section__head>h2{position: relative;z-index: 1}.tool{display: flex;flex-direction: column;gap: 28px}.tool-card{padding: clamp(24px,4vw,40px);background: var(--surface);border: 1px solid var(--border);border-radius: var(--r-lg);box-shadow: var(--shadow-sm)}.tool-card__title{font-size: 1.2rem;margin-bottom: 6px}.tool-card__hint{margin: 0 0 18px;font-size: .9rem;color: var(--muted)}.tool-card__optional{font-size: .8em;font-weight: 600;color: var(--muted)}.tool-intro{text-align: center;padding-block: 12px}.tool-intro__icon{display: inline-grid;place-items: center;width: 64px;height: 64px;margin-bottom: 18px;border-radius: var(--r-md);background: var(--accent-soft);color: var(--accent-text)}.tool-intro__icon svg{width: 30px;height: 30px}.tool-intro h2{font-size: 1.5rem}.tool-intro__list{list-style: none;max-width: 420px;margin: 18px auto 26px;padding: 0;text-align: left}.tool-intro__list li{position: relative;padding: 7px 0 7px 30px;font-weight: 600;color: var(--text)}.tool-intro__list li::before{content: "✓";position: absolute;left: 4px;color: var(--ok);font-weight: 800}.tool-intro__note{margin: 16px 0 0;font-size: .8rem;color: var(--muted);text-align: center}.tool-progress{display: flex;align-items: center;gap: 14px;margin-bottom: 26px}.tool-progress__bar{flex: 1;height: 6px;border-radius: 6px;background: var(--bg-alt);overflow: hidden}.tool-progress__bar span{display: block;height: 100%;width: 0;border-radius: 6px;background: linear-gradient(90deg,var(--accent),var(--accent-strong));transition: width var(--t-4) var(--ease)}.tool-progress__label{font-size: .85rem;font-weight: 800;color: var(--muted);font-variant-numeric: tabular-nums}.tool-question__title{font-size: 1.3rem;margin-bottom: 8px}.tool-question__help{margin: 0 0 20px;font-size: .9rem;color: var(--muted)}.tool-options{display: flex;flex-direction: column;gap: 10px}.tool-option{padding: 14px 18px;border: 1.5px solid var(--border-strong);border-radius: var(--r-md);background: var(--bg);color: var(--ink);font-weight: 600;font-size: .95rem;text-align: left;transition: border-color var(--t-3) var(--ease),background-color var(--t-3) var(--ease),transform var(--t-2) var(--ease)}.tool-option:hover{border-color: var(--accent);transform: translateX(4px)}.tool-option.is-selected{border-color: var(--accent);background: var(--accent-soft);color: var(--ink)}.tool-wizard__nav{display: flex;justify-content: space-between;gap: 12px;margin-top: 28px}.tool-gate h2{font-size: 1.4rem}.tool-gate>p{color: var(--muted);margin-bottom: 22px}.tool-consent{display: flex;gap: 12px;align-items: flex-start;margin: 18px 0;font-size: .85rem;color: var(--muted);cursor: pointer}.tool-consent input{margin-top: 3px;width: 17px;height: 17px;accent-color: var(--accent);flex-shrink: 0}.tool-error{margin: 12px 0 0;padding: 10px 16px;border-radius: var(--r-sm);background: var(--error-soft);color: var(--error);font-size: .88rem;font-weight: 600}.tool-result{padding: clamp(24px,4vw,40px);background: var(--surface);border: 1px solid var(--border);border-radius: var(--r-lg);box-shadow: var(--shadow-sm)}.tool-result__h{font-size: 1.15rem;margin: 26px 0 12px}.tool-result__mail{margin: 22px 0 0;padding: 12px 16px;border-radius: var(--r-sm);background: var(--ok-soft);color: var(--ok);font-size: .88rem;font-weight: 600}.tool-result__cta{margin-top: 28px;padding: 22px 24px;border-radius: var(--r-md);background: var(--bg-alt);text-align: center}.tool-result__cta p{margin: 0 0 14px}.tool-result__cta-btns{display: flex;flex-wrap: wrap;gap: 10px;justify-content: center;margin-top: 14px}.result-badge{display: inline-block;padding: 6px 16px;border-radius: var(--r-pill);font-family: var(--font-sans);font-size: .85rem;font-weight: 800;letter-spacing: .02em}.result-badge.is-ok{background: var(--ok-soft);color: var(--ok)}.result-badge.is-warn{background: var(--warn-soft);color: var(--warn)}.result-badge.is-bad{background: var(--error-soft);color: var(--error)}.result-badge-row{display: flex;flex-wrap: wrap;align-items: center;gap: 12px;margin-bottom: 16px}.result-list{list-style: none;margin: 0 0 8px;padding: 0}.result-list li{position: relative;padding: 7px 0 7px 28px;font-size: .94rem;line-height: 1.6}.result-list li::before{position: absolute;left: 2px;font-weight: 800}.result-list--ok li::before{content: "✓";color: var(--ok)}.result-list--warn li::before{content: "!";color: var(--warn)}.result-steps{margin: 0;padding-left: 22px}.result-steps li{margin-bottom: 10px;line-height: 1.6;font-size: .95rem}.result-steps li::marker{color: var(--accent-text);font-weight: 800}.tool-note{margin: 14px 0;padding: 13px 18px;border-radius: var(--r-md);background: var(--info-soft);font-size: .9rem;line-height: 1.6}.tool-note--ok{background: var(--ok-soft)}.tool-note--bad{background: var(--error-soft)}.score-head{display: flex;flex-wrap: wrap;align-items: center;gap: 24px;margin-bottom: 10px}.score-ring{--score: 0;position: relative;display: grid;place-content: center;width: 112px;height: 112px;flex-shrink: 0;border-radius: 50%;background: conic-gradient(var(--accent) calc(var(--score) * 1%),var(--bg-alt) 0)}.score-ring.is-ok{background: conic-gradient(var(--ok) calc(var(--score) * 1%),var(--bg-alt) 0)}.score-ring.is-bad{background: conic-gradient(var(--error) calc(var(--score) * 1%),var(--bg-alt) 0)}.score-ring::before{content: "";position: absolute;inset: 10px;border-radius: 50%;background: var(--surface)}.score-ring__num{position: relative;font-family: var(--font-display);font-size: 2rem;font-weight: 700;color: var(--ink);text-align: center}.score-ring__max{position: relative;font-size: .75rem;font-weight: 700;color: var(--muted);text-align: center}.score-head__summary{margin: 12px 0 0;font-size: 1rem;line-height: 1.65}.match-card{margin-bottom: 18px;padding: 22px 24px;border: 1px solid var(--border);border-radius: var(--r-md);background: var(--bg)}.match-card__head{display: flex;align-items: center;gap: 12px;flex-wrap: wrap}.match-card__rank{display: grid;place-items: center;width: 30px;height: 30px;border-radius: 50%;background: var(--accent);color: var(--accent-ink);font-family: var(--font-display);font-weight: 700}.match-card__flag{font-size: 1.5rem;line-height: 1}.match-card__name{margin: 0;font-size: 1.25rem}.match-card__score{margin-left: auto;font-weight: 800;color: var(--accent-text);font-size: .9rem}.match-card__bar{height: 6px;margin: 12px 0 16px;border-radius: 6px;background: var(--bg-alt);overflow: hidden}.match-card__bar span{display: block;height: 100%;border-radius: 6px;background: linear-gradient(90deg,var(--accent),var(--accent-strong))}.match-card__meta{display: grid;grid-template-columns: repeat(auto-fit,minmax(170px,1fr));gap: 10px 18px;margin: 16px 0 0;padding-top: 14px;border-top: 1px dashed var(--border)}.match-card__meta dt{font-size: .72rem;font-weight: 800;letter-spacing: .08em;text-transform: uppercase;color: var(--muted)}.match-card__meta dd{margin: 2px 0 0;font-weight: 700;color: var(--ink);font-size: .9rem}.match-card__notes{margin: 14px 0 0;font-size: .86rem;color: var(--muted)}.checklist-meta{font-size: .88rem;font-weight: 700;color: var(--muted)}.trip-rows{display: flex;flex-direction: column;gap: 12px;margin-bottom: 14px}.trip-row{display: grid;grid-template-columns: 1fr 1fr auto;gap: 12px;align-items: end}.trip-row--planned{grid-template-columns: 1fr 1fr}.trip-row__remove{display: grid;place-items: center;width: 42px;height: 46px;border: 1px solid var(--border);border-radius: var(--r-sm);background: var(--surface);color: var(--muted);transition: border-color var(--t-3) var(--ease),color var(--t-3) var(--ease)}.trip-row__remove:hover{border-color: var(--error);color: var(--error)}.trip-row__remove svg{width: 16px;height: 16px}@media (max-width: 767.98px){.trip-row{grid-template-columns: 1fr 1fr}.trip-row__remove{width: 100%;grid-column: 1 / -1;height: 38px}}.days-stats{display: grid;grid-template-columns: repeat(3,1fr);gap: 14px;margin-bottom: 18px}.days-stat{padding: 18px 12px;text-align: center;background: var(--bg);border: 1px solid var(--border);border-radius: var(--r-md)}.days-stat__num{display: block;font-family: var(--font-display);font-size: 2rem;font-weight: 700;color: var(--ink)}.days-stat__num.is-ok{color: var(--ok)}.days-stat__num.is-warn{color: var(--warn)}.days-stat__num.is-bad{color: var(--error)}.days-stat__lbl{font-size: .78rem;font-weight: 700;color: var(--muted)}.stepper-grid{display: grid;grid-template-columns: repeat(auto-fit,minmax(170px,1fr));gap: 14px}.stepper{padding: 14px 16px;border: 1px solid var(--border);border-radius: var(--r-md);background: var(--bg)}.stepper__label{display: block;margin-bottom: 10px;font-size: .85rem;font-weight: 700;color: var(--ink)}.stepper__controls{display: flex;align-items: center;gap: 8px}.stepper__controls button{width: 34px;height: 34px;border: 1px solid var(--border-strong);border-radius: var(--r-sm);background: var(--surface);color: var(--ink);font-size: 1.1rem;font-weight: 700;transition: border-color var(--t-3) var(--ease)}.stepper__controls button:hover{border-color: var(--accent)}.stepper__controls input{width: 48px;text-align: center;border: 0;background: none;color: var(--ink);font-weight: 800;font-size: 1.05rem}.addon-grid{display: grid;grid-template-columns: repeat(auto-fill,minmax(240px,1fr));gap: 12px}.addon{display: flex;gap: 12px;padding: 14px 16px;border: 1.5px solid var(--border);border-radius: var(--r-md);background: var(--bg);cursor: pointer;transition: border-color var(--t-3) var(--ease)}.addon:hover{border-color: var(--accent)}.addon:has(input:checked){border-color: var(--accent);background: var(--accent-soft)}.addon input{margin-top: 3px;width: 17px;height: 17px;accent-color: var(--accent);flex-shrink: 0}.addon__head{display: flex;justify-content: space-between;gap: 10px;font-size: .9rem;color: var(--ink)}.addon__price{font-weight: 800;color: var(--accent-text);white-space: nowrap}.addon__desc{display: block;margin-top: 2px;font-size: .8rem;color: var(--muted)}.cost-result{border: 1px solid var(--border);border-radius: var(--r-md);overflow: hidden;background: var(--bg)}.cost-result__row{display: flex;justify-content: space-between;align-items: center;gap: 16px;padding: 13px 18px}.cost-result__row + .cost-result__row{border-top: 1px solid var(--border)}.cost-result__row small{display: block;font-size: .78rem;color: var(--muted);font-weight: 500}.cost-result__row--sub{padding-left: 34px;font-size: .88rem;color: var(--muted)}.cost-result__amount{font-weight: 800;color: var(--ink);white-space: nowrap;font-variant-numeric: tabular-nums}.cost-result__total{background: var(--accent-soft);font-weight: 800;color: var(--ink)}.cost-grand{margin: 16px 0 0;font-size: 1.05rem;text-align: right}.cost-grand strong{font-family: var(--font-display);font-size: 1.3em;color: var(--accent-text)}.letter-output{margin: 0 0 18px;padding: 24px 26px;max-height: 480px;overflow: auto;border: 1px solid var(--border);border-radius: var(--r-md);background: var(--bg);font-family: "Courier New",Courier,monospace;font-size: .88rem;line-height: 1.7;white-space: pre-wrap;color: var(--text)}.compare-select{display: grid;grid-template-columns: repeat(auto-fill,minmax(160px,1fr));gap: 10px}.compare-option{display: flex;align-items: center;gap: 10px;padding: 11px 14px;border: 1.5px solid var(--border);border-radius: var(--r-md);background: var(--bg);cursor: pointer;font-weight: 600;font-size: .9rem;color: var(--ink);transition: border-color var(--t-3) var(--ease),opacity var(--t-3) var(--ease)}.compare-option:hover{border-color: var(--accent)}.compare-option:has(input:checked){border-color: var(--accent);background: var(--accent-soft)}.compare-option.is-disabled{opacity: .4;cursor: not-allowed}.compare-option input{width: 16px;height: 16px;accent-color: var(--accent);flex-shrink: 0}.compare-scroll{overflow-x: auto;-webkit-overflow-scrolling: touch}.compare-table{width: 100%;min-width: 560px;border-collapse: collapse;font-family: var(--font-sans);font-size: .9rem}.compare-table th,.compare-table td{padding: 12px 14px;border: 1px solid var(--border);text-align: left}.compare-table thead th{background: var(--navy);color: var(--on-navy);font-size: .95rem;white-space: nowrap}.compare-table tbody th{background: var(--bg-alt);color: var(--ink);font-weight: 700;font-size: .84rem}.compare-table__flag{font-size: 1.15rem}.compare-table td.is-best{background: var(--ok-soft);font-weight: 800;color: var(--ink)}.compare-table td.is-good{color: var(--ok);font-weight: 700}.compare-table td.is-mid{color: var(--warn)}.compare-table td.is-bad{color: var(--error)}.compare-best{color: var(--accent-text)}.reject-codes{display: flex;flex-direction: column;gap: 10px}.reject-code{display: flex;gap: 12px;padding: 14px 16px;border: 1.5px solid var(--border);border-radius: var(--r-md);background: var(--bg);cursor: pointer;transition: border-color var(--t-3) var(--ease)}.reject-code:hover{border-color: var(--accent)}.reject-code:has(input:checked){border-color: var(--accent);background: var(--accent-soft)}.reject-code input{margin-top: 3px;width: 17px;height: 17px;accent-color: var(--accent);flex-shrink: 0}.reject-code__head{display: flex;flex-wrap: wrap;align-items: center;gap: 8px;font-size: .92rem;color: var(--ink)}.reject-code__article{padding: 2px 9px;border-radius: var(--r-pill);background: var(--bg-alt);font-size: .7rem;font-weight: 800;color: var(--muted);white-space: nowrap}.reject-code__short{display: block;margin-top: 3px;font-size: .82rem;color: var(--muted)}.reject-detail{margin-bottom: 12px;border: 1px solid var(--border);border-radius: var(--r-md);background: var(--bg);overflow: hidden}.reject-detail summary{display: flex;align-items: center;gap: 10px;flex-wrap: wrap;padding: 15px 20px;cursor: pointer;list-style: none;color: var(--ink)}.reject-detail summary::-webkit-details-marker{display: none}.reject-detail summary::after{content: "+";margin-left: auto;font-size: 1.2rem;font-weight: 700;color: var(--muted)}.reject-detail[open] summary::after{content: "−"}.reject-detail__body{padding: 0 20px 18px;font-size: .92rem;line-height: 1.65}.reject-detail__body h4{font-family: var(--font-sans);font-size: .8rem;font-weight: 800;letter-spacing: .08em;text-transform: uppercase;color: var(--muted);margin: 16px 0 8px}.check-items{list-style: none;margin: 0;padding: 0}.check-item{border-bottom: 1px dashed var(--border)}.check-item label{display: flex;gap: 14px;padding: 13px 4px;cursor: pointer}.check-item input{position: absolute;opacity: 0;pointer-events: none}.check-item__box{flex-shrink: 0;width: 20px;height: 20px;margin-top: 2px;border: 2px solid var(--border-strong);border-radius: 5px;transition: background-color var(--t-3) var(--ease),border-color var(--t-3) var(--ease)}.check-item input:checked + .check-item__box{background: var(--ok);border-color: var(--ok)}.check-item input:checked + .check-item__box::after{content: "✓";display: grid;place-items: center;height: 100%;color: #fff;font-size: .8rem;font-weight: 800}.check-item input:checked~.check-item__body{opacity: .55}.check-item input:checked~.check-item__body strong{text-decoration: line-through}.check-item__body{font-size: .92rem}.check-item__body strong{color: var(--ink)}.check-item__req{font-style: normal;font-size: .68rem;font-weight: 800;letter-spacing: .06em;text-transform: uppercase;color: var(--error)}.check-item__desc{display: block;margin-top: 2px;color: var(--text)}.check-item__tip{display: block;margin-top: 3px;font-size: .84rem;color: var(--muted)}.strategy-phase{margin-bottom: 10px;padding: 14px 18px;border-left: 3px solid var(--accent);border-radius: 0 var(--r-sm) var(--r-sm) 0;background: var(--bg)}.strategy-phase strong{color: var(--ink)}.strategy-phase p{margin: 4px 0 0;font-size: .9rem;color: var(--muted)}