/* Vector Professions Finance V3: inner pages. Loaded after styles.css and home-v2.css on every page
   except the homepage, scoped to body.v3-inner. Only palette tokens from styles.css (DESIGN.md 3.1)
   and existing alphas (.18, .31, .79). Buttons keep the 8px V3 corner (--radius-card). */

/* page head band: same navy-to-blue gradient as the homepage hero */
.v3-inner .v3-head{background:linear-gradient(120deg,var(--navy) 0%,var(--blue) 100%);color:var(--white);padding-block:var(--s6) var(--s5)}
.v3-inner .v3-head .crumbs{margin-bottom:var(--s2);font-size:var(--fs-xs);color:var(--footer-text)}
.v3-inner .v3-head .crumbs a{color:var(--white)}
.v3-inner .v3-head .crumbs a:hover{color:var(--sky)}
.v3-inner .v3-head .crumbs li+li::before{color:var(--footer-text)}
.v3-inner .v3-head h1{font-size:clamp(2rem,1.3rem + 2.6vw,3.25rem);font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--white);margin:0;max-width:24ch}

/* content band: white, generous spacing, readable measure */
.v3-inner .page{background:var(--white);padding-block:var(--s6) var(--s7)}
.v3-inner .page article{background:none;padding:0}
.v3-inner .prose{max-width:46rem;font-size:var(--fs-base);line-height:1.75}
.v3-inner .layout-2{grid-template-columns:minmax(0,1fr) 20rem;gap:var(--s6)}
.v3-inner .layout-2 > .prose{max-width:none}
.v3-inner .prose h2,.v3-inner .page article > .layout-2 h2{font-weight:700;color:var(--navy);letter-spacing:-.01em;margin-top:var(--s5)}
.v3-inner .prose h3,.v3-inner .prose h4{font-weight:700;color:var(--navy);margin-top:var(--s4)}
.v3-inner .prose > :first-child{margin-top:0}
.v3-inner .prose ul{padding-left:1.25rem}
.v3-inner .prose li{margin-bottom:.4rem}
.v3-inner .prose li::marker{color:var(--green)}

/* buttons in page content: original V3 shape (8px corners) */
.v3-inner .page .btn{border-radius:var(--radius-card)}

/* aside: one light ice panel on desktop, a plain divided section on mobile */
.v3-inner .aside{background:var(--ice);border-radius:var(--radius-card);padding:var(--s4);position:sticky;top:var(--s3)}
.v3-inner .aside h2{font-size:var(--fs-md);font-weight:700;color:var(--navy);margin:0 0 var(--s2)}
.v3-inner .aside h2 ~ h2{margin-top:var(--s3)}
.v3-inner .aside p{font-size:var(--fs-sm)}
.v3-inner .aside p:last-child{margin-bottom:0}

/* callouts: soft, rounded on the open side */
.v3-inner .callout{border-left:4px solid var(--green);background:var(--mist);border-radius:0 var(--radius-card) var(--radius-card) 0;padding:var(--s2) var(--s3);margin:var(--s4) 0}

/* tables */
.v3-inner .page table{border-radius:var(--radius-card)}
.v3-inner .page th{background:var(--mist);color:var(--navy);font-family:var(--font-head);font-weight:500}

/* figures */
.v3-inner .figure-right img{border-radius:var(--radius-card)}

/* services hub: a light divided list, not boxes */
.v3-inner .service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--s5)}
.v3-inner .service-list li{border:0;border-top:1px solid var(--border);border-radius:0;padding:var(--s4) 0}
.v3-inner .service-list h2{font-size:var(--fs-md);font-weight:700;margin:0 0 var(--s1)}
.v3-inner .service-list h2 a{color:var(--navy);text-decoration:none}
.v3-inner .service-list h2 a:hover{color:var(--blue);text-decoration:underline}
.v3-inner .service-list p{margin:0 0 var(--s1)}
.v3-inner .service-list p:last-child{font-family:var(--font-head);font-weight:500;margin:0}

/* forms: rounded fields and fieldsets on desktop; on mobile fieldsets lose their box */
.v3-inner .form fieldset{border-radius:var(--radius-card);padding:var(--s4)}
.v3-inner .form legend{font-weight:700;color:var(--navy)}
.v3-inner .form input[type=text],.v3-inner .form input[type=email],.v3-inner .form input[type=tel],.v3-inner .form input[type=number],.v3-inner .form select,.v3-inner .form textarea{border-radius:var(--radius-card)}
.v3-inner .form-status{border-radius:var(--radius-card)}

@media (max-width:960px){
  .v3-inner .layout-2{grid-template-columns:1fr;gap:var(--s5)}
  .v3-inner .aside{position:static}
}
@media (max-width:760px){
  .v3-inner .v3-head{padding-block:var(--s5) var(--s4)}
  .v3-inner .page{padding-block:var(--s5) var(--s6)}
  .v3-inner .aside{background:none;border-radius:0;padding:var(--s4) 0 0;border-top:1px solid var(--border)}
  .v3-inner .service-list{grid-template-columns:1fr}
  .v3-inner .service-list li{padding:var(--s3) 0}
  .v3-inner .form fieldset{border:0;border-top:1px solid var(--border);border-radius:0;padding:var(--s3) 0 0}
  .v3-inner .form legend{padding:0 .5rem 0 0}
  .v3-inner .callout{padding:var(--s2)}
}
.v3-inner .page .aside h2{margin-top:0}
.v3-inner .page .aside h2 ~ h2{margin-top:var(--s4)}
.v3-inner .prose:has(> .service-list){max-width:none}
.v3-inner .prose .service-list{padding-left:0}
/* contact-us side panel only (the layout with the enquiry form): first heading sits flush with the panel padding (the layout-2 h2 rule outranked the aside reset) */
.v3-inner .page article > .layout-2:has(> div > form.form) > .aside > h2:first-child{margin-top:0}

/* Wufoo embeds (start-an-application, personal-worth): full content width, no frame chrome; height is set by Wufoo autoResize so the page is the only scrollbar */
.v3-inner .wufoo-embed{margin:var(--s3) 0 var(--s4);min-height:12rem}
.v3-inner .wufoo-embed iframe{display:block;width:100% !important;max-width:100%;border:0}

/* contact form: optional attachments (light dashed drop area; the picker button follows the 8px .btn style) */
.v3-inner #enquiry{scroll-margin-top:calc(81px + var(--s3))} /* clears the sticky header (81px) */
.v3-inner .file-drop{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem var(--s2);padding:var(--s3);border:1px dashed var(--slate);border-radius:var(--radius-card);background:var(--white);transition:background-color .15s,border-color .15s}
.v3-inner .file-drop:hover{background:var(--mist)}
.v3-inner .file-drop.is-over{border-color:var(--blue);border-style:solid;background:var(--ice)}
.v3-inner .file-drop:has(input:focus-visible){border-color:var(--blue);outline:3px solid var(--blue);outline-offset:2px}
.v3-inner .file-drop input[type=file]{font:inherit;font-size:var(--fs-sm);color:var(--ink);min-width:0;max-width:100%;flex:1 1 14rem;overflow:hidden;text-overflow:ellipsis}
.v3-inner .file-drop input[type=file]:focus-visible{outline:none}
.v3-inner .file-drop input[type=file]::file-selector-button{font-family:var(--font-head);font-weight:700;font-size:var(--fs-sm);color:var(--white);background:var(--green);border:0;border-radius:var(--radius-card);padding:.55rem 1.1rem;margin-right:var(--s2);cursor:pointer}
.v3-inner .file-drop input[type=file]:hover::file-selector-button{text-decoration:underline}
.v3-inner .file-drop-note{font-size:var(--fs-sm);color:var(--slate)}
.v3-inner .file-status{font-size:var(--fs-sm);color:var(--ink);margin-top:.5rem}
.v3-inner .file-status:empty{display:none}
.v3-inner .file-status.is-warn{color:var(--navy);font-weight:600}
.v3-inner .file-list{list-style:none;padding:0;margin:.35rem 0 0;font-size:var(--fs-sm)}
.v3-inner .file-list li{padding:.3rem 0;border-top:1px solid var(--border);overflow-wrap:anywhere}
.v3-inner .file-list li:first-child{border-top:0}
.v3-inner .file-list span{color:var(--slate);white-space:nowrap}
.v3-inner .file-clear{font:inherit;font-size:var(--fs-sm);color:var(--blue);background:none;border:0;padding:.3rem 0;text-decoration:underline;cursor:pointer}
.v3-inner .file-clear:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
@media (max-width:600px){.v3-inner .file-drop{padding:var(--s2)}.v3-inner .file-drop-note{display:none}}
.v3-inner .layout-2 > div:has(> form.form),.v3-inner .file-field,.v3-inner .file-drop{min-width:0}
@media (max-width:600px){.v3-inner .file-drop input[type=file]{flex-basis:100%;width:100%}}
