:root{--charcoal:#3d3d37;--olive:#7a7a6e;--cream:#f8efe7;--rose:#b79c9d;--pink:#e0c6c6;--light:#e6e6dd}
*{box-sizing:border-box}body{margin:0;color:var(--cream);font-family:Arial,Helvetica,sans-serif;background:var(--pink);min-height:100vh;position:relative;isolation:isolate}
button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--cream);outline-offset:5px}h1:focus,h2:focus{outline:none}h1,h2,p{margin:0}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}
.skip{position:fixed;top:-100px;left:16px;z-index:3;background:var(--cream);color:var(--charcoal);padding:16px}.skip:focus{top:12px}
.form-header{display:flex;justify-content:space-between;align-items:center;padding:20px max(5%,calc((100vw - 1200px)/2));background:var(--charcoal);min-height:94px}.form-header img{display:block;width:145px;height:auto}.form-header span{text-transform:uppercase;color:var(--pink);font-size:17px;letter-spacing:-.5px}
main{max-width:1200px;margin:auto;padding:26px 32px 24px}.form-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:22px;color:var(--charcoal);font-size:13px}.form-toolbar a{text-decoration:none;min-height:32px;display:flex;align-items:center}.form-toolbar a:hover{text-decoration:underline}
.form-card{--photo:none;position:relative;isolation:isolate;overflow:hidden;border-radius:32px;border:1px solid #ffffff45;background:#393935;min-height:530px;display:flex;align-items:center}.form-card::before{content:'';position:absolute;inset:0;z-index:-2;background-image:var(--photo);background-position:center;background-size:cover}.form-card::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#23231fea 0%,#292924bd 45%,#29292419 100%)}.form-card.right{justify-content:flex-end}.form-card.right::after{background:linear-gradient(270deg,#23231fea 0%,#292924bd 45%,#29292419 100%)}
.form-content{width:62%;max-width:690px;padding:42px 48px}.form-wordmark{display:block;width:320px;max-width:100%;height:140px;object-fit:contain;object-position:left center;margin-bottom:20px}.right .form-wordmark{width:330px;height:165px}.intro{font-size:19px;line-height:1.45;max-width:500px;color:var(--light)}.cover-info{font-size:13px;color:var(--pink);margin:22px 0 12px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 24px;border:1px solid transparent;border-radius:10px;font-weight:700;background:var(--rose);color:#272723;text-decoration:none;line-height:1.2;transition:background .15s}.button:hover{background:var(--pink)}.button.primary{width:100%;max-width:440px}.button.secondary{background:transparent;color:var(--cream);border-color:#f8efe75c}.button.secondary:hover{background:#ffffff12}.cover-actions{display:grid;gap:12px;max-width:440px}.cover-actions .button{width:100%}
.progress-meta{display:flex;justify-content:space-between;gap:20px;color:var(--pink);font-size:12px;line-height:1.4;margin-bottom:10px}.progress{display:block;width:100%;height:4px;accent-color:var(--rose);margin-bottom:28px;border:0;border-radius:4px;overflow:hidden;background:#ffffff26}.progress::-webkit-progress-bar{background:#ffffff26}.progress::-webkit-progress-value{background:var(--rose)}.progress::-moz-progress-bar{background:var(--rose)}
.question-title{font-size:clamp(22px,2.2vw,30px);line-height:1.2;letter-spacing:-.8px;font-weight:500;margin-bottom:16px}.helper{font-size:13px;line-height:1.5;color:var(--light);margin:0 0 18px}fieldset{border:0;margin:0;padding:0;min-width:0}legend{padding:0;width:100%}.field{display:block;width:100%;min-height:52px;border:1px solid #b79c9d;border-radius:10px;padding:14px 16px;background:#f8efe7;color:var(--charcoal);font-size:17px}.field::placeholder{color:#746768}textarea.field{resize:vertical;min-height:140px;line-height:1.5}.field[aria-invalid=true]{border:2px solid #ffd3c5}
.choices{display:grid;gap:10px}.choice{display:flex;gap:12px;align-items:center;min-height:52px;padding:13px 16px;background:var(--rose);color:#272723;border:2px solid transparent;border-radius:10px;font-size:15px;line-height:1.35;cursor:pointer}.choice:hover{background:#ceb2b3}.choice:has(input:checked){border-color:var(--cream);background:var(--pink)}.choice:has(input:focus-visible){outline:3px solid var(--cream);outline-offset:4px}.choice input{flex-shrink:0;width:18px;height:18px;margin:0;accent-color:var(--charcoal)}.choice input:focus-visible{outline:none}.other-detail{margin-top:18px}.other-detail label{display:block;font-size:14px;margin-bottom:8px}.error{color:#ffd3c5;font-size:14px;line-height:1.4;margin-top:14px}.question-actions{display:flex;gap:12px;margin-top:26px}.question-actions .primary{flex:1}.question-actions .secondary{flex:0 0 auto}
.form-card.review{align-items:flex-start}.review .form-content{width:100%;max-width:none}.review::after{background:#262622e8}.review-heading{font-size:32px;line-height:1.2;margin-bottom:12px}.review-list{padding:0;list-style:none;margin:26px 0}.review-row{padding:18px 0;border-top:1px solid #ffffff26;display:grid;grid-template-columns:1fr auto;gap:12px}.review-row h2{font-size:14px;font-weight:400;color:var(--pink);margin-bottom:8px;line-height:1.4}.review-answer{font-size:16px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.edit-button{border:0;background:transparent;color:var(--cream);text-decoration:underline;min-height:44px;padding:8px;font-size:13px;align-self:start}.confirmation-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--rose);border-radius:50%;color:var(--pink);font-size:24px;margin-bottom:24px}.confirmation h1{font-size:30px;font-weight:500;margin-bottom:18px;line-height:1.2}.confirmation p{font-size:18px;line-height:1.5;margin-bottom:26px}footer{padding:22px 5%;color:var(--charcoal);display:flex;justify-content:space-between;gap:20px;font-size:12px}.chooser .form-content{width:100%;max-width:none}.chooser::after{background:#292924}.chooser h1{font-size:32px;margin-bottom:16px}.chooser p{line-height:1.5}.service-links{display:grid;gap:12px;margin-top:24px;max-width:500px}.noscript{padding:24px;background:var(--cream);color:var(--charcoal)}
@media(max-width:900px){.form-content{width:76%;padding:36px}.form-card{min-height:510px}.form-card::after{background:linear-gradient(90deg,#23231ff2,#292924a8)}.form-card.right::after{background:linear-gradient(270deg,#23231ff2,#292924a8)}}
@media(max-width:600px){.form-header{padding:16px 20px;min-height:74px}.form-header img{width:116px}.form-header span{font-size:13px}main{padding:20px 16px}.form-toolbar{font-size:11px;gap:8px;margin-bottom:16px}.form-card{min-height:0;border-radius:22px}.form-content{width:100%;padding:28px 22px}.form-card::before{background-position:65% center}.form-card.right::before{background-position:30% center}.form-card::after,.form-card.right::after{background:#242420cf}.form-wordmark{width:245px;height:110px;margin-bottom:18px}.right .form-wordmark{width:240px;height:130px}.intro{font-size:16px;line-height:1.45}.cover-info{font-size:12px;margin-top:20px}.question-title{font-size:23px;line-height:1.25}.choice{font-size:15px;padding:12px;gap:10px}.progress-meta{font-size:11px;gap:12px}.progress{margin-bottom:24px}.question-actions{gap:10px;margin-top:22px}.question-actions .button{padding:13px 16px}.review-heading,.confirmation h1{font-size:26px}.review-row{gap:6px}.review-answer{font-size:15px}.confirmation p{font-size:16px}footer{padding:20px;flex-direction:column;gap:6px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Mirror the soft photographic background so it joins at the center. */
body::before,body::after{content:'';position:fixed;top:0;bottom:0;width:50%;z-index:-1;background:url('assets/forms/background.webp') right center/cover no-repeat;opacity:.42;pointer-events:none}
body::before{left:0}body::after{right:0;transform:scaleX(-1)}

/* Keep the consultancy label readable while preserving the supplied wordmark. */
.right .vision-wordmark{position:relative;height:auto;aspect-ratio:600/344}
.vision-wordmark img{display:block;width:100%;height:100%;clip-path:inset(14% 0 0)}
.vision-label{position:absolute;top:0;left:0;width:100%;text-align:center;color:var(--cream);text-transform:uppercase;font-size:16px;font-weight:600;line-height:1.5}
@media(max-width:600px){.vision-label{font-size:13px}}

.enquiry-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
button:disabled { opacity: .6; cursor: wait; }
