:root{--paper:#f7f4ef;--surface:#fffdf9;--surface-soft:#f0ebe4;--ink:#241f24;--muted:#625b61;--plum:#5e263b;--plum-dark:#3a1a2a;--line:#d5cbc4;--line-strong:#817680;--bronze:#875537;--max:1224px}
*{box-sizing:border-box}
html{background:var(--paper);color:var(--ink);font-family:'Avenir Next',Avenir,'Helvetica Neue',Arial,sans-serif;font-size:16px;line-height:1.5;scroll-behavior:smooth}
body{margin:0;background:var(--paper)}
.skip-link{position:absolute;left:18px;top:-60px;z-index:20;padding:10px 14px;background:var(--plum);color:#fff;font-weight:700;text-decoration:none;transition:top .2s ease}
.skip-link:focus{top:14px}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{max-width:100%}
.container{width:min(var(--max),calc(100% - 80px));margin-inline:auto}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
:focus-visible{outline:3px solid var(--bronze);outline-offset:4px}
main:focus{outline:0}
.site-header{min-height:84px;border-bottom:1px solid var(--line);background:rgba(247,244,239,.98);position:relative;z-index:4}
.header-inner{min-height:84px;display:flex;align-items:center;gap:28px}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);line-height:1}
.brand-mark{display:block;width:34px;height:34px;flex:0 0 34px;object-fit:cover;object-position:center;mix-blend-mode:multiply}
.brand-name{font-size:25px;font-weight:700;letter-spacing:.17em;white-space:nowrap}
.nav{margin-left:auto;display:flex;align-items:center;gap:32px;font-size:15px;font-weight:600}
.nav a:not(.button){padding:11px 0;position:relative}
.nav a:not(.button)::after{content:"";position:absolute;left:0;right:100%;bottom:5px;height:1px;background:var(--plum);transition:right .18s ease}
.nav a:not(.button):hover::after,.nav a[aria-current="page"]::after{right:0}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 22px;border:1px solid var(--plum);border-radius:2px;background:var(--plum);color:#fff;font-weight:700;line-height:1.2;transition:background .18s ease,color .18s ease,transform .18s ease}
.button:hover{background:var(--plum-dark);border-color:var(--plum-dark);transform:translateY(-1px)}
.button-small{min-height:44px;padding:11px 18px}
.button-light{background:#fff;color:var(--plum);border-color:#fff}
.button-light:hover{background:var(--surface-soft);border-color:var(--surface-soft);color:var(--plum-dark)}
.mobile-menu{display:none;flex:0 0 48px;width:48px;height:48px;padding:12px;border:1px solid var(--line-strong);border-radius:2px;background:transparent;color:var(--ink);margin-left:auto}
.mobile-menu span{display:block;height:2px;background:currentColor;margin:5px 0;transition:transform .18s ease,opacity .18s ease}
.mobile-menu[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.mobile-menu[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.eyebrow{margin:0 0 18px;color:var(--plum);font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.hero{padding:92px 0 96px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:72px;align-items:center}
.hero-content{min-width:0;max-width:600px}
.hero h1,.page-hero h1,.section-heading h2,.closing h2,.registration-panel h2,.legal-main h1,.contact-aside h2{font-family:'Iowan Old Style',Baskerville,Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em}
.hero h1{margin:0;font-size:clamp(3.8rem,6vw,5.25rem);line-height:.98}
.hero h1 em{font-style:normal;color:var(--plum)}
.hero-copy{max-width:600px;margin-top:28px;color:var(--muted);font-size:20px;line-height:1.58}
.hero-copy p{margin:0}
.actions{display:flex;align-items:center;gap:24px;margin-top:30px}
.text-link{display:inline-block;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:3px}
.text-link:hover{color:var(--plum)}
.hero-media{margin:0;min-width:0}
.hero-media picture,.hero-media img{display:block;width:100%}
.hero-image{aspect-ratio:3/2;object-fit:cover;object-position:center;border-radius:3px;background:var(--surface-soft)}
.section{padding:108px 0;border-top:1px solid var(--line)}
.section-heading{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;align-items:end;margin-bottom:48px}
.section-heading h2{font-size:clamp(2.6rem,4.3vw,4rem);line-height:1.02;margin:0}
.section-heading>p{max-width:680px;margin:0;color:var(--muted);font-size:19px;line-height:1.55}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);background:var(--surface)}
.service-card{display:flex;flex-direction:column;min-height:285px;padding:30px 32px;border-right:1px solid var(--line)}
.service-card:last-child{border-right:0}
.card-index{margin:0 0 26px;color:var(--bronze);font-size:14px;font-weight:700;letter-spacing:.14em}
.service-card h3{font-size:22px;line-height:1.18;margin:0 0 14px}
.service-card>p:not(.card-index){margin:0;color:var(--muted);line-height:1.55}
.service-card .text-link{align-self:flex-start;margin-top:auto;padding-top:28px}
.company-strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:end;padding:38px 0;border-bottom:1px solid var(--line)}
.company-strip .eyebrow{margin-bottom:10px}
.company-strip h2{font-family:'Iowan Old Style',Baskerville,Georgia,serif;font-size:32px;font-weight:400;line-height:1;margin:0}
.company-strip>p{margin:0;color:var(--muted);font-size:17px}
.company-strip .text-link{justify-self:end;text-align:right}
.process-overview{padding-top:96px}
.process-link{margin-top:30px}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;margin:0;list-style:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.steps li{display:grid;grid-template-columns:auto 1fr;gap:22px;min-width:0;padding:25px 26px 28px 0}
.steps li+li{padding-left:26px;border-left:1px solid var(--line)}
.steps li>span{color:var(--plum);font-size:14px;font-weight:700;letter-spacing:.12em}
.steps h3{font-size:19px;line-height:1.25;margin:0 0 8px}
.steps p{margin:0;color:var(--muted);font-size:15px;line-height:1.5}
.closing{padding:76px 0;background:var(--plum);color:#fff}
.closing-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center}
.closing h2{font-size:clamp(2.5rem,4vw,3.8rem);line-height:1;margin:0}
.site-footer{padding:58px 0 26px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(120px,.65fr) minmax(180px,.95fr);gap:72px}
.footer-brand{margin-bottom:22px}
.footer-brand .brand-mark{width:30px;height:30px;flex-basis:30px}
.footer-brand-block>p{max-width:360px;margin:0 0 16px;line-height:1.6}
.footer-email{color:var(--plum);font-weight:700;text-decoration:underline;text-underline-offset:4px}
.site-footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.site-footer nav strong{color:var(--ink);margin-bottom:6px}
.site-footer nav a:hover{text-decoration:underline;text-underline-offset:4px}
.copyright{border-top:1px solid var(--line);margin-top:42px;padding-top:20px}

.page-hero{padding:92px 0 70px}
.page-hero>div{max-width:800px}
.page-hero h1{font-size:clamp(3.1rem,5vw,4.7rem);line-height:1;margin:0}
.page-hero .lead{max-width:720px;margin:25px 0 0;color:var(--muted);font-size:20px;line-height:1.58}
.page-hero.compact{padding-bottom:52px}
.intro-email{margin-top:24px}
.services-hero{max-width:var(--max)}
.services-hero>h1{max-width:860px}
.jump-links{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:40px;padding-top:18px;border-top:1px solid var(--line);font-size:15px;font-weight:700}
.jump-links a{color:var(--plum);text-decoration:underline;text-underline-offset:5px}
.service-feature{padding:92px 0;border-top:1px solid var(--line)}
.service-feature-alt{background:var(--surface-soft)}
.feature-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:64px;align-items:center}
.feature-copy{max-width:470px}
.feature-copy h2{font-family:'Iowan Old Style',Baskerville,Georgia,'Times New Roman',serif;font-size:clamp(2.5rem,4vw,4rem);font-weight:400;line-height:1.03;letter-spacing:-.035em;margin:0 0 22px}
.feature-copy>p:not(.eyebrow){margin:0 0 28px;color:var(--muted);font-size:18px;line-height:1.6}
.fx-panel,.payment-panel,.fields-panel{border:1px solid var(--line-strong);background:var(--surface);min-width:0}
.fx-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.35fr) minmax(0,1fr);min-height:270px}
.fx-pair>div{padding:36px 30px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.fx-pair>div:first-child{border-right:1px solid var(--line)}
.fx-pair>div:last-child{border-left:1px solid var(--line)}
.fx-pair span,.payment-route span{color:var(--plum);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.fx-pair strong{margin-top:22px;padding-top:15px;border-top:1px solid var(--plum);font-family:'Iowan Old Style',Baskerville,Georgia,serif;font-size:21px;font-style:italic;font-weight:400;line-height:1.25;color:var(--muted)}
.connector{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;color:var(--bronze);font-size:12px;font-weight:700;letter-spacing:.12em;text-align:center;text-transform:uppercase}
.connector span{font-size:30px;line-height:1;font-weight:400;letter-spacing:0;color:var(--plum)}
.mini-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid var(--line)}
.mini-details div{padding:18px 22px}
.mini-details div+div{border-left:1px solid var(--line)}
.mini-details dt{font-weight:700}
.mini-details dd{margin:5px 0 0;color:var(--muted);font-size:14px}
.payment-panel{padding:34px}
.payment-route{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.55fr) minmax(0,1fr);align-items:stretch}
.payment-route>div{padding:20px 18px;border:1px solid var(--line);background:#fff}
.payment-route>div:last-child{border-left:0}
.payment-route>div:first-child{border-right:0}
.payment-route strong{display:block;margin-top:12px;font-family:'Iowan Old Style',Baskerville,Georgia,serif;font-size:22px;font-weight:400}
.route-details{margin:0;padding:19px 20px;border:1px solid var(--line);border-top:0;color:var(--muted);font-size:15px;text-align:center}
.wide-visual{padding:96px 0;border-top:1px solid var(--line)}
.direction-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);background:var(--surface)}
.direction-panel article{padding:38px 40px}
.direction-panel article+article{border-left:1px solid var(--line)}
.direction-panel .eyebrow{margin-bottom:10px}
.direction-panel h3{font-family:'Iowan Old Style',Baskerville,Georgia,serif;font-size:32px;font-weight:400;line-height:1.1;margin:0 0 28px}
.relationship{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.75fr) minmax(0,1fr);gap:10px;align-items:center;margin:12px 0 0}
.relationship span{padding:15px 12px;border:1px solid var(--line);background:#fff;text-align:center;font-size:15px;font-weight:700}
.relationship b{color:var(--muted);font-size:13px;text-align:center}
.relationship.payment span{background:var(--plum-dark);border-color:var(--plum-dark);color:#fff}
.relationship.payment b{color:var(--plum)}
.fields-panel{margin-top:42px;padding:0;overflow:hidden}
.fields-heading{padding:34px 38px 28px}
.fields-heading .eyebrow{margin-bottom:10px}
.fields-heading h3{font-family:'Iowan Old Style',Baskerville,Georgia,serif;font-size:34px;font-weight:400;line-height:1.1;margin:0 0 10px}
.fields-heading>p:last-child{margin:0;color:var(--muted);font-size:17px}
.field-table{border-top:1px solid var(--line)}
.field-table>div{display:grid;grid-template-columns:.75fr 1fr 1fr}
.field-table>div+div{border-top:1px solid var(--line)}
.field-table span,.field-table strong{padding:16px 22px}
.field-table span+span,.field-table strong+strong{border-left:1px solid var(--line)}
.field-table-head{background:var(--plum-dark);color:#fff}
.field-table>div:not(.field-table-head) span:first-child{color:var(--plum);font-weight:700}
.fields-panel>.button{margin:28px 38px 34px}
.process{padding:96px 0;background:var(--plum-dark);color:#fff}
.process .eyebrow{color:#d9a878}
.process .section-heading>p{color:#e6dce0}
.steps-dark{border-color:rgba(255,255,255,.25)}
.steps-dark li+li{border-color:rgba(255,255,255,.25)}
.steps-dark li>span{color:#d9a878}
.steps-dark p{color:#e6dce0}
.about-hero{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:68px;align-items:start}
.about-hero>div{max-width:none}
.audience-copy{max-width:580px;margin:18px 0 0;color:var(--muted);font-size:18px;line-height:1.55}
.about-landscape{margin:0}
.about-landscape img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;object-position:center;border-radius:3px;background:var(--surface-soft)}
.about-landscape figcaption{margin-top:10px;color:var(--muted);font-size:14px}
.facts{max-width:900px;margin:0 auto;border-top:1px solid var(--line)}
.facts div{display:grid;grid-template-columns:minmax(190px,.55fr) minmax(0,1.45fr);border-bottom:1px solid var(--line)}
.facts dt,.facts dd{margin:0;padding:19px 22px}
.facts dt{color:var(--plum);font-weight:700}
.facts dd{border-left:1px solid var(--line)}
.registration-section{padding-top:76px}
.registration-panel{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:12px 64px;padding:44px 48px;border:1px solid var(--line);background:var(--surface-soft)}
.registration-panel .eyebrow{margin-bottom:10px}
.registration-panel h2{font-size:clamp(2.1rem,3.4vw,3.2rem);line-height:1;margin:0}
.registration-copy{align-self:end;color:var(--muted);font-size:17px;line-height:1.6}
.registration-copy p{margin:0}
.registration-copy p+p{margin-top:10px}
.registration-panel dl{grid-column:1 / -1;display:grid;margin:24px 0 0;border-top:1px solid var(--line)}
.registration-panel dl div{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1fr)}
.registration-panel dt,.registration-panel dd{margin:0;padding:16px 0}
.registration-panel dd{text-align:right;font-weight:700}
.qualification{grid-column:1 / -1;margin:0;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:15px}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);gap:56px;align-items:start;padding-bottom:108px}
.enquiry-form{padding:38px;border:1px solid var(--line);background:var(--surface)}
.enquiry-form h2,.contact-aside h2{font-size:36px;line-height:1;margin:0}
.required-note{margin:12px 0 0;color:var(--muted);font-size:14px}
fieldset{min-width:0;padding:0;margin:24px 0 0;border:0}
.choice-legend{margin:0 0 14px;font-weight:700}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.choice-card{position:relative;display:flex;align-items:center;min-height:68px;padding:16px 18px;border:1px solid var(--line-strong);border-radius:2px;background:#fff;color:var(--ink);font-weight:700;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.choice-card:hover{border-color:var(--plum);transform:translateY(-1px)}
.choice-card input{position:absolute;width:1px;height:1px;opacity:0}
.choice-card span{position:relative;padding-left:30px;line-height:1.3}
.choice-card span::before{content:"";position:absolute;left:0;top:50%;width:18px;height:18px;border:1px solid var(--line-strong);border-radius:50%;transform:translateY(-50%);background:#fff}
.choice-card input:checked + span::before{border-color:var(--plum)}
.choice-card input:checked + span::after{content:"";position:absolute;left:5px;top:50%;width:10px;height:10px;border-radius:50%;background:var(--plum);transform:translateY(-50%)}
.choice-card:has(input:checked){border-color:var(--plum);background:var(--surface-soft)}
.choice-card:has(input:focus-visible){outline:3px solid rgba(135,85,55,.35);outline-offset:2px}
.choice-card:has(input[aria-invalid="true"]){border-color:#a34b4b}
.field{margin-top:22px}
.field-grid,.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.field label{display:block;margin-bottom:8px;font-weight:700}
.optional{color:var(--muted);font-weight:400}
.field input,.field select,.field textarea{display:block;width:100%;border:1px solid var(--line-strong);border-radius:2px;background:#fff;color:var(--ink);padding:13px 14px}
.field textarea{min-height:170px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(135,85,55,.35);outline-offset:2px}
.help{margin:10px 0 0;color:var(--muted);font-size:14px;line-height:1.5}
.form-actions{display:flex;align-items:flex-start;gap:22px;margin-top:28px}
.form-actions .button{flex:0 0 auto;border:0}
.form-privacy{align-self:center;color:var(--plum);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.form-status:not(:empty){margin:18px 0;padding:12px 14px;background:var(--surface-soft);color:var(--ink);font-size:14px}
.error-summary{margin:18px 0;padding:14px;border:1px solid #a34b4b;background:#fff2f0;color:#632b2b}
.error-summary h3{margin:0 0 8px;font-size:16px}
.error-summary ul{margin:0;padding-left:20px}
.error-summary a{text-decoration:underline}
.contact-aside{padding:30px 0;border-top:3px solid var(--plum)}
.contact-aside .eyebrow{margin-bottom:10px}
.contact-aside h2{font-size:38px}
.contact-aside p:not(.eyebrow){margin:20px 0;color:var(--muted);font-size:17px;line-height:1.6}
.legal-main{padding:92px 0 108px}
.legal-main article{max-width:760px;margin:0 auto}
.legal-main h1{font-size:clamp(3.1rem,5vw,4.5rem);line-height:1;margin:0}
.legal-intro{margin:25px 0 54px;color:var(--muted);font-size:20px;line-height:1.6}
.legal-main section{padding:28px 0;border-top:1px solid var(--line)}
.legal-main h2{font-family:'Iowan Old Style',Baskerville,Georgia,serif;font-size:29px;font-weight:400;line-height:1.1;margin:0 0 12px}
.legal-main section p{margin:0;color:var(--muted);line-height:1.7}
.legal-main section a{text-decoration:underline;text-underline-offset:3px;color:var(--plum)}

@media(max-width:1023px){
  .container{width:calc(100% - 56px)}
  .nav{display:none;position:absolute;top:84px;left:0;right:0;padding:18px 28px 24px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 14px 28px rgba(36,31,36,.08);flex-direction:column;align-items:stretch;gap:4px}
  .nav.is-open{display:flex}
  .nav a:not(.button){padding:13px 4px}
  .nav a:not(.button)::after{bottom:7px}
  .nav .button{margin-top:8px}
  .mobile-menu{display:block}
  .hero{padding-top:72px;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:42px}
  .hero h1{font-size:clamp(3.4rem,7vw,5rem)}
  .section-heading{gap:40px}
  .service-grid{grid-template-columns:1fr}
  .service-card{min-height:0;padding:28px 30px;border-right:0;border-bottom:1px solid var(--line)}
  .service-card:last-child{border-bottom:0}
  .company-strip{grid-template-columns:1fr 1fr;gap:24px}
  .company-strip .text-link{justify-self:start;text-align:left}
  .feature-grid{grid-template-columns:1fr;gap:40px}
  .feature-copy{max-width:680px}
  .feature-copy h2{font-size:clamp(2.6rem,6vw,4rem)}
  .about-hero{grid-template-columns:1fr;gap:44px}
  .about-hero>div{max-width:760px}
  .contact-layout{grid-template-columns:1fr;gap:42px}
  .contact-aside{padding-top:26px}
}
@media(max-width:700px){
  .container{width:calc(100% - 36px)}
  .site-header,.header-inner{min-height:74px}
  .brand-name{font-size:21px;letter-spacing:.15em}
  .nav{top:74px;padding-inline:18px}
  .hero{display:block;padding:56px 0 36px}
  .hero h1{font-size:clamp(3rem,13vw,4.1rem);line-height:.99}
  .hero-copy{font-size:17px;line-height:1.55}
  .actions{align-items:flex-start;flex-direction:column;gap:18px;margin-top:25px}
  .hero-media{width:100%;margin-top:42px}
  .hero-image{aspect-ratio:3/2}
  .section{padding:72px 0}
  .section-heading{display:block;margin-bottom:32px}
  .section-heading>p{margin-top:18px;font-size:17px}
  .section-heading h2{font-size:clamp(2.45rem,11vw,3.3rem)}
  .service-card h3{font-size:21px}
  .company-strip{display:block;padding:30px 0}
  .company-strip>p{margin:18px 0}
  .process-overview{padding-top:70px}
  .steps{display:block}
  .steps li,.steps li+li{grid-template-columns:42px 1fr;padding:20px 0;border-left:0}
  .steps li+li{border-top:1px solid var(--line)}
  .closing{padding:62px 0}
  .closing-inner{display:block}
  .closing h2{font-size:clamp(2.5rem,11vw,3.35rem)}
  .closing .button{margin-top:28px}
  .site-footer{padding-top:42px}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .copyright{margin-top:32px}
  .page-hero{padding:60px 0 52px}
  .page-hero h1{font-size:clamp(2.8rem,12vw,3.7rem)}
  .page-hero .lead{font-size:17px}
  .jump-links{gap:12px 20px;margin-top:30px}
  .service-feature,.wide-visual,.process{padding:70px 0}
  .fx-pair{grid-template-columns:minmax(0,1fr) 88px minmax(0,1fr);min-height:210px}
  .fx-pair>div{padding:22px 15px}
  .fx-pair strong{font-size:16px}
  .fx-pair span,.payment-route span{font-size:11px;letter-spacing:.1em}
  .connector{font-size:10px}
  .connector span{font-size:26px}
  .mini-details div{padding:14px 15px}
  .mini-details dd{font-size:13px}
  .payment-panel{padding:18px}
  .payment-route{display:block}
  .payment-route>div,.payment-route>div:first-child,.payment-route>div:last-child{border:1px solid var(--line);padding:16px}
  .payment-route .connector{flex-direction:row;justify-content:flex-start;padding:10px 16px;border:0;background:var(--surface-soft)}
  .payment-route .connector span{margin-left:4px}
  .route-details{font-size:14px;line-height:1.5}
  .direction-panel{display:block}
  .direction-panel article{padding:28px 18px}
  .direction-panel article+article{border-left:0;border-top:1px solid var(--line)}
  .direction-panel h3{font-size:29px}
  .relationship{grid-template-columns:minmax(0,1fr) 78px minmax(0,1fr);gap:6px}
  .relationship span{padding:13px 5px;font-size:13px}
  .relationship b{font-size:11px}
  .fields-panel{margin-top:28px}
  .fields-heading{padding:28px 20px 22px}
  .fields-heading h3{font-size:29px}
  .fields-heading>p:last-child{font-size:16px}
  .field-table{font-size:14px}
  .field-table>div{grid-template-columns:.7fr 1fr 1fr}
  .field-table span,.field-table strong{padding:13px 10px}
  .fields-panel>.button{margin:24px 20px 26px}
  .process .section-heading>p{margin-top:18px}
  .about-landscape img{aspect-ratio:3/2}
  .facts div{display:block}
  .facts dt,.facts dd{padding:14px 16px}
  .facts dd{border-left:0;padding-top:0}
  .registration-section{padding-top:54px}
  .registration-panel{display:block;padding:30px 22px}
  .registration-copy{margin-top:20px;font-size:16px}
  .registration-panel dl{margin-top:24px}
  .registration-panel dl div{display:block}
  .registration-panel dt,.registration-panel dd{padding:13px 0}
  .registration-panel dd{text-align:left;padding-top:0}
  .qualification{margin-top:2px;padding-top:14px}
  .contact-layout{padding-bottom:70px}
  .enquiry-form{padding:26px 20px}
  .enquiry-form h2,.contact-aside h2{font-size:32px}
  .choice-grid{grid-template-columns:1fr}
  .field-grid,.form-grid{grid-template-columns:1fr;gap:0}
  .form-actions{align-items:stretch;flex-direction:column;gap:16px}
  .form-privacy{align-self:flex-start}
  .legal-main{padding:62px 0 76px}
  .legal-intro{font-size:17px;margin-bottom:40px}
  .legal-main h2{font-size:26px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.mobile-menu span,.nav a:not(.button)::after{transition:none}}

/* The hero is drawn in code so the exchange relationship can move gently without a video payload. */
.hero-visual{position:relative;overflow:hidden;aspect-ratio:3/2;border-radius:3px;background:var(--surface-soft);isolation:isolate}
.hero-visual svg{display:block;width:100%;height:100%}
.hero-band{transform-box:fill-box;transform-origin:center;animation:hero-band-breathe 12s ease-in-out infinite}
.hero-band-bottom-left{animation-delay:-5s}
.hero-band-bottom-right{animation-delay:-8s}
.hero-routes{opacity:.82}
.hero-route{fill:none;stroke:rgba(247,244,239,.72);stroke-width:2;stroke-dasharray:3 14;stroke-linecap:round;animation:hero-route-drift 18s linear infinite}
.hero-route-secondary{stroke:rgba(135,85,55,.34);stroke-dasharray:2 20;animation-duration:23s;animation-direction:reverse}
.hero-node{fill:#f7f4ef;stroke:#875537;stroke-width:2;animation:hero-node-pulse 7s ease-in-out infinite}
.hero-node:nth-of-type(2){animation-delay:-2.2s}
.hero-node:nth-of-type(3){animation-delay:-4.4s}
.hero-packet{fill:#f7f4ef;stroke:#875537;stroke-width:2;filter:url(#hero-glow)}
.hero-packet-two{fill:#c78a63;stroke:#f7f4ef;stroke-width:1.5}
.hero-packet-three{fill:#f0c9a8;stroke:#f7f4ef;stroke-width:1}
.hero-captions{font-family:'Avenir Next',Avenir,'Helvetica Neue',Arial,sans-serif;font-size:20px;font-weight:700;letter-spacing:.18em;fill:rgba(247,244,239,.9)}
.hero-captions text:last-child{font-size:13px;letter-spacing:.25em;fill:rgba(247,244,239,.74)}
@keyframes hero-band-breathe{0%,100%{opacity:.97}50%{opacity:1}}
@keyframes hero-route-drift{to{stroke-dashoffset:-68}}
@keyframes hero-node-pulse{0%,100%{opacity:.54;transform:scale(.88)}50%{opacity:1;transform:scale(1.12)}}
@media(prefers-reduced-motion:reduce){.hero-band,.hero-route,.hero-node{animation:none}.hero-packet{display:none}}
