.tyclt-form-wrap, .tyclt-tool { margin: 0; }
.tyclt-form { display: grid; gap: 16px; }
.tyclt-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.tyclt-form label, .tyclt-inline-form label { display: grid; gap: 7px; }
.tyclt-form label > span, .tyclt-inline-form label > span { font-size: 12px; font-weight: 800; color: #536057; }
.tyclt-form input, .tyclt-form select, .tyclt-form textarea, .tyclt-inline-form input, .tyclt-tool select { width: 100%; border: 1px solid #dfe5df; border-radius: 12px; background: #fff; padding: 12px 13px; color: #122018; outline: none; }
.tyclt-form input:focus, .tyclt-form select:focus, .tyclt-form textarea:focus, .tyclt-inline-form input:focus { border-color: #78a985; box-shadow: 0 0 0 3px rgba(120,169,133,.14); }
.tyclt-form textarea { resize: vertical; min-height: 140px; }
.tyclt-form__footer { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.tyclt-form__footer > span { color: #758178; font-size: 12px; }
.tyclt-form__footer a { color: #1f7a4d; font-weight: 800; }
.tyclt-hp { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.tyclt-notice { padding: 13px 15px; border-radius: 12px; font-size: 13px; margin-bottom: 16px; }
.tyclt-notice--success { background: #e7f4e8; color: #1f5b2e; }
.tyclt-notice--error { background: #f9e8e6; color: #8f2b22; }
.tyclt-tool { padding: 28px; border: 1px solid #dfe5df; border-radius: 22px; background: #fff; box-shadow: 0 15px 50px rgba(18,32,24,.06); }
.tyclt-tool__intro h2 { margin: 7px 0 9px; font-size: clamp(28px, 4vw, 40px); line-height: 1.03; letter-spacing: -.045em; }
.tyclt-tool__intro p { margin: 0 0 22px; color: #69756d; }
.tyclt-inline-form { display: flex; gap: 10px; align-items: end; }
.tyclt-inline-form .tyclt-grow { flex: 1; }
.tyclt-result { margin-top: 24px; }
.tyclt-score { display: flex; align-items: baseline; gap: 9px; margin-bottom: 14px; }
.tyclt-score strong, .tyclt-gbp-result strong { font-size: 42px; letter-spacing: -.06em; line-height: 1; }
.tyclt-score span, .tyclt-gbp-result span { color: #6f7b73; font-size: 13px; }
.tyclt-checks { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 9px; }
.tyclt-check { display: flex; gap: 10px; padding: 12px; border: 1px solid #e0e5e1; border-radius: 13px; }
.tyclt-check > b { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: #e8f4e6; color: #2a6b3b; font-size: 12px; flex: 0 0 auto; }
.tyclt-check--warn > b { background: #fff0d7; color: #965d00; }
.tyclt-check span { display: grid; gap: 2px; }
.tyclt-check small { color: #6b766e; font-size: 11px; line-height: 1.4; }
.tyclt-result__cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-top: 17px; padding-top: 17px; border-top: 1px solid #e5e9e6; }
.tyclt-result__cta p { margin: 0; max-width: 560px; color: #6b766e; font-size: 12px; }
.tyclt-cost-result { margin-top: 20px; padding: 20px; border-radius: 16px; background: #f2f8ef; border: 1px solid #d9e8d5; }
.tyclt-cost-result strong { display: block; font-size: 36px; line-height: 1; letter-spacing: -.06em; }
.tyclt-cost-result p { margin: 10px 0 0; color: #5d6a61; font-size: 13px; }
.tyclt-cost-result a { display: inline-flex; margin-top: 14px; }
.tyclt-gbp-result { display: grid; gap: 6px; margin-bottom: 18px; padding: 20px; border-radius: 16px; background: #f2f8ef; border: 1px solid #d9e8d5; }
.tyclt-gbp-result p { margin: 0 0 7px; color: #5d6a61; font-size: 13px; }
@media (max-width: 680px) { .tyclt-form__grid, .tyclt-checks { grid-template-columns: 1fr; } .tyclt-inline-form { display: grid; } .tyclt-tool { padding: 20px; } }

/* Tycoon Concept 2.0 tool system. */
.tyclt-contact-choice { margin: 0; padding: 15px 16px 14px; border: 1px solid var(--tyc-border, #dfe5df); border-radius: 15px; background: #fbfcfa; }
.tyclt-contact-choice legend { padding: 0 7px; font-size: 12px; font-weight: 850; color: #536057; }
.tyclt-contact-choice label { display: inline-flex; align-items: center; gap: 6px; margin-right: 18px; font-size: 14px; font-weight: 700; color: #28372e; }
.tyclt-contact-choice input { accent-color: var(--tyc-green, #1f7a4d); }
.tyclt-contact-choice p { margin: 9px 0 0; color: #78847c; font-size: 12px; }
.tyclt-form label small { font-weight: 500; color: #8a948e; }
.tyclt-data-table { margin-top: 22px; overflow-x: auto; }
.tyclt-data-table table { width: 100%; border-collapse: collapse; background: #fff; }
.tyclt-data-table th, .tyclt-data-table td { padding: 13px 14px; border: 1px solid #e1e6e2; text-align: left; vertical-align: top; font-size: 13px; }
.tyclt-data-table th { width: 190px; background: #f4f7f2; color: #23332a; }
.tyclt-data-table td { color: #5e6a62; white-space: pre-wrap; overflow-wrap: anywhere; }
.tyclt-data-table details { margin-top: 12px; }
.tyclt-data-table pre { max-height: 320px; overflow: auto; padding: 16px; border-radius: 12px; background: #17221b; color: #dbe6dd; font-size: 12px; white-space: pre-wrap; }
.tyclt-checks--single { grid-template-columns: 1fr; }
.tyclt-note { color: #76827a; font-size: 12px; margin-top: 16px; }
.tyclt-og-preview { margin-top: 25px; max-width: 660px; border: 1px solid #d8ded9; border-radius: 14px; overflow: hidden; background: #fff; }
.tyclt-og-preview__image { height: 280px; background: linear-gradient(135deg,#dfead9,#eef2eb); background-size: cover; background-position: center; }
.tyclt-og-preview__image.has-image { background-color: #dfead9; }
.tyclt-og-preview__copy { display: grid; gap: 5px; padding: 16px; }
.tyclt-og-preview__copy small { color: #869089; text-transform: uppercase; letter-spacing: .08em; }
.tyclt-og-preview__copy strong { color: #1a2a20; font-size: 19px; line-height: 1.1; }
.tyclt-og-preview__copy span { color: #69756d; font-size: 13px; }
@media (max-width:680px) { .tyclt-contact-choice label { margin-bottom:8px; } .tyclt-og-preview__image{height:210px;} }


/* Tycoon Concept 2.7 contact experience. */
.tyclt-form-wrap--premium { margin:0; }
.tyclt-form--premium { gap:0; }
.tyclt-wizard-head--premium { margin:0 0 8px; padding:0 0 18px; }
.tyclt-wizard-head__copy { display:grid; gap:5px; }
.tyclt-wizard-head__copy strong { color:#18304f; font-size:13px; }
.tyclt-wizard-kicker { color:#6c7d93; font-size:10px; text-transform:uppercase; letter-spacing:.13em; font-weight:850; }
.tyclt-wizard-progress { height:4px; background:#e7edf5; border-radius:99px; overflow:hidden; }
.tyclt-wizard-progress span { display:block; height:100%; width:33.333%; background:linear-gradient(90deg,#1456d8,#5c91ea); border-radius:inherit; transition:width .2s ease; }
.tyclt-step { animation:tycltStepIn .22s ease both; }
@keyframes tycltStepIn { from{opacity:.15;transform:translateY(5px)} to{opacity:1;transform:none} }
.tyclt-step__intro { max-width:700px; margin-bottom:23px; }
.tyclt-step__intro h3 { margin:7px 0 7px; font-size:clamp(29px,4vw,42px); line-height:1.02; letter-spacing:-.045em; color:#17273e; }
.tyclt-step__intro p { margin:0; color:#6d7b8f; font-size:14px; line-height:1.65; }
.tyclt-choice-grid--premium { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.tyclt-choice { min-height:96px; display:flex; align-items:flex-start; gap:13px; padding:16px 17px; border:1px solid #dce4ef; border-radius:16px; background:#fbfcfe; cursor:pointer; transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease; }
.tyclt-choice:hover { border-color:#abc2e6; background:#fff; transform:translateY(-1px); box-shadow:0 8px 25px rgba(13,33,65,.05); }
.tyclt-choice:has(input:checked) { border-color:#7ea3dc; background:#f4f8ff; box-shadow:0 0 0 3px rgba(20,86,216,.08); }
.tyclt-choice input { margin-top:4px; accent-color:#1456d8; flex:0 0 auto; }
.tyclt-choice span { display:grid; gap:4px; }
.tyclt-choice b { color:#1b2d46; font-size:14px; }
.tyclt-choice small { color:#6f7d90; line-height:1.45; font-size:11px; }
.tyclt-form--premium label > span { color:#566980; font-size:11px; letter-spacing:.01em; }
.tyclt-form--premium input, .tyclt-form--premium select, .tyclt-form--premium textarea { border-color:#d6e0ec; border-radius:13px; background:#fbfcfe; padding:14px; color:#17273e; }
.tyclt-form--premium input:focus, .tyclt-form--premium select:focus, .tyclt-form--premium textarea:focus { border-color:#7ea3dc; box-shadow:0 0 0 4px rgba(20,86,216,.10); background:#fff; }
.tyclt-form--premium textarea { min-height:170px; }
.tyclt-wizard-note { margin:13px 0 0; padding:13px 15px; border-left:3px solid #b7cae8; background:#f6f9fd; color:#69788c; font-size:12px; line-height:1.55; }
.tyclt-summary--premium { margin-top:17px; padding:18px; border:1px solid #dce6f2; border-radius:15px; background:#f7faff; }
.tyclt-summary--premium span { display:block; margin-bottom:5px; color:#6b7c92; font-size:10px; text-transform:uppercase; letter-spacing:.11em; font-weight:850; }
.tyclt-summary--premium strong { display:block; color:#18304f; font-size:17px; }
.tyclt-summary--premium small { display:block; margin-top:4px; color:#708096; font-size:11px; }
.tyclt-consent { display:flex; align-items:flex-start; gap:10px; margin-top:13px; }
.tyclt-consent span { display:grid; place-items:center; width:23px; height:23px; border-radius:50%; background:#eaf2ff; color:#1456d8; font-size:12px; font-weight:900; flex:0 0 auto; }
.tyclt-consent p { margin:0; color:#718096; font-size:11px; line-height:1.55; }
.tyclt-wizard-actions--premium { margin-top:24px; padding-top:18px; border-top:1px solid #e7edf5; }
.tyclt-wizard-actions__right { display:flex; align-items:center; justify-content:flex-end; gap:12px; }
.tyclt-wizard-actions__hint { color:#8290a2; font-size:11px; }
.tyclt-form--premium .tyc-button { min-height:50px; }
@media(max-width:680px){ .tyclt-choice-grid--premium { grid-template-columns:1fr; } .tyclt-wizard-actions--premium { align-items:stretch; flex-direction:column-reverse; } .tyclt-wizard-actions__right { width:100%; justify-content:space-between; } .tyclt-wizard-actions__hint { display:none; } .tyclt-wizard-actions__right .tyc-button { flex:1; } }
