/* Amplemarket composition, adapted to TRYMBKM's existing colours and content.
   Native CSS; existing self-hosted DM Sans replaces the reference's proprietary font.
   No content, measurements, customer marks or claims introduced. */
:root { --gold:#96722d; --gold-soft:#f2ead9; --paper:#fff; --ink:#20201d; --muted:#66635b; }
body { background:#fff; }
.site-header { background:#ffffffef; border-bottom-color:transparent; height:84px; }
.site-header .header-inner { transition:background 240ms,box-shadow 240ms,border-radius 240ms; }
.site-header.has-scrolled { background:transparent; border-bottom-color:transparent; }
.site-header.has-scrolled .header-inner { height:64px; margin-top:10px; padding-inline:20px; background:#ffffffed; border:1px solid #ece8de; border-radius:14px; box-shadow:0 7px 18px #20201d15; }
.site-header .brand-name { font-size:14px; letter-spacing:2.4px; }
.site-header .brand-mark { width:40px; height:40px; }
.site-header .brand-mark img { width:34px; height:34px; }
.site-header nav .nav-cta { border-radius:8px; font-size:12px; }
main#main-content>section { border-color:#e9e5dc; }
main#main-content>section::after { display:none; }
main#main-content>section::before { background:none; animation:none; }
main#main-content h1,main#main-content h2,main#main-content h3 { font-family:'DM Sans',sans-serif; }
main#main-content h2 { font-size:clamp(34px,4.3vw,56px); font-weight:450; line-height:1.06; letter-spacing:-2px; }
main#main-content h2 em { font-family:inherit; font-style:normal; font-weight:450; color:#96722d; }
main#main-content>section:not(#method) { padding-block:86px; }
main#main-content>section#hero { display:flex; flex-direction:column; gap:0; min-height:0; padding-top:68px; padding-bottom:0; text-align:center; overflow:visible; }
main#main-content>#hero::before { background:radial-gradient(ellipse at 5% 88%,#c19b505c,transparent 44%),radial-gradient(ellipse at 88% 82%,#d9c39a4d,transparent 48%),linear-gradient(#fff 38%,#fcf8ed 100%); }
#hero .ambient-field { display:none; }
#hero .hero-copy { width:100%; max-width:850px; }
#hero .topic-label { display:inline-flex; margin-bottom:27px; border:1px solid #eee7d8; border-radius:30px; box-shadow:0 4px 12px #20201d07; background:#fff; padding:10px 18px; font-size:10px; letter-spacing:.6px; }
#hero h1 { max-width:850px; margin-inline:auto; font-size:clamp(44px,5.7vw,76px); font-weight:450; line-height:1.02; letter-spacing:-3.8px; }
#hero h1 em { font-family:'DM Sans',sans-serif; font-style:normal; font-weight:450; color:#96722d; }
#hero .hero-one-liner { max-width:575px; margin:23px auto 0; font-size:18px; line-height:1.45; }
#hero .hero-actions { justify-content:center; gap:24px; margin-block:26px 0; }
.button { border-radius:8px; }
#hero .oversight-art { width:min(880px,100%); height:310px; margin-top:62px; background:linear-gradient(140deg,#ffffffee,#fffcf5); border:1px solid #fff; border-radius:14px 14px 0 0; box-shadow:0 0 0 8px #ffffff80,0 -3px 40px #8b692315; perspective:1000px; text-align:left; }
#hero .art-orbit { inset:35px 20%; width:auto; height:200px; border-radius:50%; border-color:#d8c7a140; box-shadow:none; }
#hero .art-recommendation { width:40%; left:7%; top:37px; transform:rotate(-2deg); padding:25px; border-radius:9px; box-shadow:0 8px 20px #96722d0b; }
#hero .art-review { width:37%; right:7%; top:70px; transform:rotate(2deg); padding:25px; border-radius:9px; box-shadow:0 8px 20px #96722d0b; }
#hero .art-question { left:50%; bottom:55px; transform:translateX(-50%); border-radius:8px; white-space:nowrap; }
#hero .oversight-art figcaption { bottom:18px; text-align:center; }
#evidence.evidence-section { gap:60px; align-items:center; border-bottom:0; }
#evidence .research-count { padding:24px 0; border-bottom:1px solid #e6dfd1; }
#evidence .research-count strong { font-size:58px; letter-spacing:-3px; }
#evidence .evidence-findings>p { font-size:16px; line-height:1.6; }
main#main-content>section#method { padding-block:0; }
#method::before { background:#20201d; }
#method .method-sticky { padding-block:65px; gap:35px 65px; }
#method h2,#method .flow-copy h3 { color:#fff; }
#method h2 em { color:#d1b374; }
#method .section-heading>p,#method .flow-copy>p:not(.flow-count),#method .method-boundary { color:#bebcb5; }
#method .method-flow li>button { color:#d1b374; border-color:#595349; border-radius:8px; }
#method .method-flow li.is-current>button { background:#f2ead9; border-color:#f2ead9; color:#20201d; }
#method .method-stage { background:#fbfaf6; border:8px solid #ffffff1c; border-radius:12px; box-shadow:0 12px 45px #0003; }
#method .method-stage-head { border-bottom-color:#e3dccb; }
#method .method-stage-footer { border-color:#e3dccb; }
#method .flow-copy h3 { font-size:35px; font-weight:450; letter-spacing:-1.3px; }
#method .flow-count { color:#d1b374; }
#applications .section-heading { text-align:center; max-width:800px; margin:0 auto 46px; }
#applications .section-heading>p { margin-inline:auto; }
#applications .application-list { gap:20px; }
#applications .application-list article { padding:38px 94px 38px 32px; background:#faf7ef; border:1px solid #e9dfca; border-radius:12px; }
#applications .application-list article:nth-child(2) { background:#f7f6f3; border-color:#e5e1d8; }
#applications .application-list h3 { font-size:30px; font-weight:450; letter-spacing:-1.1px; }
#applications .application-note { text-align:center; }
#applications .domain-art { right:25px; top:44px; }
.chapter-thread { display:none; }
#demo.demo-section { gap:70px; padding-block:90px; border-top:0; }
#demo::before { background:#faf8f2; }
#demo .hero-demo { padding:18px; border:1px solid #e8dec8; background:#ede5d3; border-radius:14px; }
#demo .review-window { border-radius:10px; border:1px solid #e2d7bf; box-shadow:0 10px 24px #96722d0d; }
#demo .demo-story>p { line-height:1.6; font-size:17px; max-width:330px; }
#demo .prototype-label { background:#fff; border-radius:5px; border:1px solid #e4dac4; }
#report.study-section { gap:70px; border-top:0; }
#report .report-window { border-radius:12px; border:1px solid #e5decd; padding:12px; background:#faf8f2; }
#report .report-story h2 { font-size:clamp(34px,4vw,52px); }
#report .report-story>p { font-size:16px; line-height:1.6; }
#team .section-heading { text-align:center; margin-bottom:44px; }
#team .team-grid { gap:20px; }
#team .team-grid>article { padding:28px; border:1px solid #e5dfd1; border-radius:12px; background:#faf8f2; }
#team .team-grid h3 { font-size:24px; font-weight:450; letter-spacing:-.8px; }
#team .team-avatar { box-shadow:0 7px 25px #96722d12; }
#branches .section-heading { max-width:820px; margin-bottom:42px; }
#branches .branches-grid { gap:20px; }
#branches .branch-card { border:1px solid #e4dccb; border-radius:12px; background:#faf8f2; box-shadow:none; }
#branches .branch-card h3 { font-family:'DM Sans',sans-serif; font-size:38px; font-weight:450; }
main#main-content>section#publications { padding-block:80px; }
#publications .publications-heading { margin-bottom:38px; }
#publications .compact-publications { gap:20px; }
#publications .compact-publications>a { padding:26px 34px 35px 26px; border:1px solid #e7decc; background:#faf8f2; border-radius:10px; min-height:180px; }
#publications .compact-publications h3 { font-size:26px; font-weight:450; letter-spacing:-1px; }
#publications .compact-publications>a>span:last-child { right:16px; }
#publications .compact-publications>a::after { display:none; }
main#main-content>section#contact { padding-block:88px; }
#contact::before { background:#20201d; }
#contact .contact-grid { gap:65px; }
#contact h2 { font-size:clamp(38px,4.4vw,60px); text-transform:uppercase; font-weight:650; }
main#main-content>section#contact h2 em { color:#d1b374; font-weight:650; }
main#main-content>section#contact h2 { color:#fff; }
main#main-content>section#contact p { color:#c6c1b6; }
#contact .contact-details>a { color:#fff; border-color:#70685a; }
#contact .contact-details>a.contact-phone { color:#d1b374; }
#contact .button-light { background:#fff; color:#20201d; border-color:#fff; }
.site-footer { padding-block:35px; background:#fff; }
.resource-site .resource-subnav { padding-block:16px; }
.resource-site .research-overview h1,.resource-site .research-overview h2,.resource-site .research-overview h3 { font-family:'DM Sans',sans-serif; font-weight:450; }
.resource-site .research-overview h1 em,.resource-site .research-overview h2 em { font-family:inherit; font-style:normal; font-weight:450; }
.resource-site .research-hero { text-align:center; min-height:0; padding-block:65px 70px; }
.resource-site .research-hero::before { background:radial-gradient(ellipse at 10% 85%,#c19b5030,transparent 48%),radial-gradient(ellipse at 90% 85%,#d9c39a38,transparent 50%); }
.resource-site .research-hero::after,.resource-site .research-hero .ambient-field { display:none; }
.resource-site .research-hero h1 { font-size:clamp(48px,6vw,76px); letter-spacing:-3px; line-height:1; }
.resource-site .research-hero-bottom { flex-direction:column; align-items:center; gap:24px; margin-top:26px; }
.resource-site .research-hero-bottom>p { font-size:18px; line-height:1.5; }
.resource-site .research-hero-bottom>div { justify-content:center; }
.resource-site .research-button { border-radius:8px; }
.resource-site .research-feature { padding-block:75px; gap:65px; }
.resource-site .research-feature::before { background:#20201d; }
.resource-site .research-feature .research-section-intro h2 { color:#fff; font-size:48px; }
.resource-site .research-feature .research-section-intro h2 em { color:#d1b374; }
.resource-site .research-feature .research-section-intro p { color:#c6c1b6; }
.resource-site .research-feature .research-feature-article { background:#fffdf7; border:1px solid #e5d9bd; border-radius:12px; box-shadow:0 12px 35px #0002; }
.resource-site .research-archive-heading h2 { font-size:46px; }
.resource-site .research-entry { padding-block:30px; }
.resource-site .research-entry h3 { font-size:25px; }
.resource-site .research-overview .research-domains article { border-radius:12px; background:#faf8f2; }
.resource-site .research-overview .research-milestone { padding:45px; border:1px solid #e5d9bd; border-radius:12px; background:#faf6eb; min-height:0; margin-block:30px; }
.resource-site .research-overview .research-references a { border-radius:10px; }
.resource-site .research-overview .research-lab-link { border-radius:12px; background:#faf6eb; }
.resource-site .research-closing { text-align:center; justify-items:center; padding-block:85px; }
.resource-site .research-closing::before { background:#20201d; }
.resource-site .research-closing h2 { color:#fff; font-size:48px; text-transform:uppercase; font-weight:650; }
.resource-site .research-closing h2 em { color:#d1b374; font-weight:650; }
.resource-site .research-closing>p { color:#c6c1b6; }
.resource-site .research-closing .research-button { background:#fff; color:#20201d; border-color:#fff; }
.resource-site .research-toolkit h1 { font-family:'DM Sans',sans-serif; font-weight:450; }
.resource-site .research-toolkit h1 em { font-family:inherit; font-style:normal; }
@media(max-width:1150px) { .site-header.has-scrolled .header-inner { padding-inline:14px; } .site-header nav { gap:16px; } }
@media(max-width:900px) { .site-header.has-scrolled .brand-name { font-size:12px; letter-spacing:1.6px; } }
@media(max-width:860px) { .site-header { height:78px; } .site-header.has-scrolled .header-inner { height:58px; margin-top:10px; } .site-header.has-scrolled nav { top:67px; } main#main-content>section:not(#method) { padding-block:60px; } main#main-content>section#hero { padding-top:42px; } #hero h1 { font-size:clamp(43px,7vw,64px); letter-spacing:-2.4px; } #hero .oversight-art { margin-top:44px; } #method .method-sticky { padding-block:45px; gap:26px; } #method .section-heading h2 { font-size:38px; } #demo.demo-section,#report.study-section { grid-template-columns:1fr; gap:35px; } #demo .hero-demo { max-width:650px; padding:12px; margin-inline:auto; } #team .team-grid>article { padding:22px; } #contact .contact-grid { gap:35px; } .resource-site .research-feature { gap:35px; } }
@media(max-width:600px) { main#main-content h2 { font-size:34px; letter-spacing:-1.3px; } main#main-content>section:not(#method) { padding-block:48px; } main#main-content>section#hero { padding-top:35px; overflow:hidden; } #hero .topic-label { font-size:8px; padding:9px 12px; letter-spacing:.3px; margin-bottom:22px; } #hero h1 { font-size:43px; line-height:1.07; letter-spacing:-2px; } #hero .hero-one-liner { font-size:16px; line-height:1.5; } #hero .hero-actions { flex-wrap:wrap; gap:18px; } #hero .oversight-art { height:320px; margin-top:42px; } #hero .art-recommendation { left:5%; top:26px; width:74%; padding:18px; } #hero .art-review { top:118px; right:5%; width:66%; padding:18px; } #hero .art-question { bottom:48px; max-width:90%; padding:13px; } #hero .art-question strong { font-size:13px; } #hero .oversight-art figcaption { font-size:10px; } #evidence.evidence-section { gap:25px; } #evidence .research-count strong { font-size:44px; } #applications .application-list { grid-template-columns:1fr; } #applications .application-list article { padding:28px 85px 28px 24px; } #applications .application-list h3 { font-size:27px; } #applications .section-heading { margin-bottom:30px; } #team .section-heading { text-align:left; } #publications .compact-publications { grid-template-columns:1fr; } #publications .compact-publications>a { min-height:0; padding:24px; } #publications .publications-heading { flex-direction:column; align-items:start; gap:20px; } main#main-content>section#contact { padding-block:58px; } #contact h2 { font-size:36px; } .resource-site .research-hero { padding-block:40px; } .resource-site .research-feature { grid-template-columns:1fr; padding-block:48px; } .resource-site .research-feature .research-section-intro h2,.resource-site .research-closing h2 { font-size:36px; } .resource-site .research-overview .research-milestone { padding:26px; } .resource-site .research-archive-heading h2 { font-size:34px; } .resource-site .research-closing { padding-block:58px; } }
@media(prefers-reduced-motion:reduce) { .site-header .header-inner { transition:none; } }
.reduce-motion .site-header .header-inner { transition:none; }
/* Explicit section scope wins over the previous global background layers. */
main#main-content>section#method::before,main#main-content>section#contact::before { background:#20201d; }
main#main-content>section#demo::before { background:#faf8f2; }
main#main-content #method h2 em { color:#d1b374; }
.resource-site .research-overview .research-feature::before,.resource-site .research-overview .research-closing::before { background:#20201d; }
.resource-site .research-overview .research-hero::before { background:radial-gradient(ellipse at 10% 85%,#c19b5030,transparent 48%),radial-gradient(ellipse at 90% 85%,#d9c39a38,transparent 50%); }
.site-header nav>a::after { display:none; }
@media(min-width:861px) and (max-height:850px) { #method .method-sticky { padding-block:32px; gap:22px 50px; } #method .section-heading h2 { font-size:42px; } #method .section-heading>p { margin-top:16px; } #method .method-scenes { height:200px; } #method .method-stage-footer { padding:12px 20px; } #method .flow-copy h3 { font-size:30px; } }
#hero h1 { font-size:clamp(44px,4.5vw,60px); letter-spacing:-2.5px; }
#hero .hero-one-liner { max-width:520px; }
@media(max-width:600px) { #hero h1 { font-size:42px; letter-spacing:-2px; } }
/* Review fixes: viewport hero, crisp illustration, calm feedback and a real enquiry form. */
main#main-content>section#hero { min-height:calc(100svh - 84px); justify-content:space-between; padding-top:clamp(35px,6svh,68px); padding-bottom:0; }
main#main-content>section#hero::before { background-size:120% 120%; animation:hero-light-shift 20s ease-in-out infinite alternate; }
@keyframes hero-light-shift { to { background-position:100% 70%; } }
#hero .art-orbit { animation:orbit-turn 40s linear infinite; }
#method .method-stage { background:#fffdf6; border:1px solid #8b713c; box-shadow:0 15px 45px #0005; }
#method .method-stage-head { background:#f1e6cb; border-bottom:1px solid #d5c299; }
#method .method-stage-head>.mono { color:#70521d; font-weight:600; }
#method .method-scenes { background:#fffdf6; }
#method .outcome-visual>span { background:#fff; color:#20201d; border:1px solid #c2ab79; box-shadow:0 4px 10px #96722d0a; }
#method .outcome-visual>strong { color:#70521d; font-family:'DM Sans',sans-serif; font-size:17px; font-weight:500; }
#method .method-stage-footer { background:#f7f1e3; }
#method .method-stage figcaption { color:#574a33; }
.application-list article { transition:transform 260ms,box-shadow 260ms,border-color 260ms; }
.application-list article:hover,.application-list article:focus-within { transform:translateY(-5px); border-color:#b99858; box-shadow:0 12px 25px #96722d12; }
.application-list article:hover .domain-art { transform:rotate(-4deg); }
.domain-art { transition:transform 350ms; }
#demo .hero-demo { overflow-anchor:none; }
#demo h2#demo-title { font-size:clamp(24px,2.4vw,30px); letter-spacing:-.8px; line-height:1.15; }
#demo #reason-form { margin-top:18px; }
#demo #reason-form textarea { min-height:100px; }
#contact .contact-grid { grid-template-columns:.9fr 1.1fr; align-items:start; gap:40px 65px; }
#contact .contact-details { grid-column:1; grid-row:2; margin-top:-10px; }
.enquiry-form { grid-column:2; grid-row:1 / span 2; padding:28px; border:1px solid #61533a; border-radius:12px; background:#2a2924; color:#fff; }
#contact .enquiry-form h3 { font-size:26px; color:#fff; margin-bottom:22px; font-weight:450; }
.enquiry-form label { display:block; font-size:12px; color:#eee5d2; }
.enquiry-fields { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:17px; }
.enquiry-fields label>span { color:#bbb3a1; font-size:10px; }
.enquiry-form input:not([type=checkbox]),.enquiry-form textarea,.enquiry-form select { display:block; width:100%; margin-top:8px; background:#fffdf8; border:1px solid #d4c6a6; border-radius:5px; padding:12px; color:#20201d; font:14px 'DM Sans',sans-serif; }
.enquiry-form textarea { resize:vertical; min-height:92px; }
.enquiry-form input:focus-visible,.enquiry-form textarea:focus-visible,.enquiry-form select:focus-visible { outline:2px solid #d1b374; outline-offset:3px; }
.enquiry-form .enquiry-consent { display:flex; align-items:center; gap:10px; margin:17px 0; font-size:11px; }
.enquiry-consent input { width:16px; height:16px; accent-color:#b18c46; }
.enquiry-form .enquiry-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.enquiry-form button:disabled { opacity:.65; cursor:wait; }
main#main-content>section#contact #enquiry-status { color:#eee5d2; font-size:12px; line-height:1.6; margin-top:15px; }
#enquiry-status:empty { display:none; }
@media(max-width:860px) { main#main-content>section#hero { min-height:calc(100svh - 78px); } #contact .contact-grid { grid-template-columns:1fr; gap:30px; } #contact .enquiry-form { grid-column:1; grid-row:auto; } #contact .contact-details { grid-column:1; grid-row:auto; margin:0; } }
@media(max-width:600px) { main#main-content>section#hero { padding-top:24px; } #hero h1 { font-size:38px; } #hero .hero-actions { gap:12px; flex-wrap:nowrap; } #hero .hero-actions .button { font-size:11px; padding:12px 14px; gap:16px; } #hero .hero-actions .text-link { font-size:11px; gap:8px; } #hero .oversight-art { height:255px; margin-top:30px; } #hero .art-review { top:90px; } #hero .art-recommendation,#hero .art-review { padding:15px; } #hero .art-document-lines { margin-top:12px; gap:6px; } #hero .art-question { bottom:34px; } #hero .oversight-art figcaption { bottom:10px; } .enquiry-form { padding:22px; } .enquiry-fields { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { main#main-content>section#hero::before,#hero .art-orbit { animation:none; } .application-list article,.domain-art { transition:none; } .application-list article:hover { transform:none; } }
.reduce-motion main#main-content>section#hero::before,.reduce-motion #hero .art-orbit { animation:none; }
.reduce-motion .application-list article,.reduce-motion .domain-art { transition:none; }
#evidence .research-count { grid-template-columns:auto 1fr; gap:24px; }
#evidence .research-count strong { font-size:86px; }
#evidence .research-count .research-percent { font-size:45px; margin-left:3px; }
#evidence .research-count>span { max-width:none; font-size:14px; line-height:1.6; }
@media(max-width:600px) { #evidence .research-count strong { font-size:66px; } #evidence .research-count .research-percent { font-size:35px; } }
#evidence .research-count strong>[data-count] { font-size:inherit; color:inherit; max-width:none; line-height:inherit; }
main#main-content #method .method-stage-head>.mono,main#main-content #method .outcome-visual>strong { color:#70521d; }
main#main-content #method .outcome-visual>span { background:#fff; border-color:#c2ab79; color:#20201d; }
@media(max-width:600px) { .enquiry-form input:not([type=checkbox]),.enquiry-form textarea,.enquiry-form select,#demo #reason-form textarea { font-size:16px; } }
/* Hero: close the hand-off gap and give the illustration room to communicate. */
main#main-content>section#hero { justify-content:flex-start; gap:30px; overflow:hidden; padding-top:clamp(30px,5svh,54px); }
#hero .oversight-art { width:min(1100px,100%); flex:1; min-height:350px; height:auto; margin-top:0; }
#hero .art-recommendation { top:12%; left:7%; width:41%; padding:32px; animation:recommendation-drift 10s ease-in-out infinite; }
#hero .art-review { top:24%; right:7%; width:39%; padding:32px; animation:approval-drift 10s ease-in-out infinite; }
#hero .oversight-art strong { font-size:clamp(24px,2.2vw,31px); }
#hero .oversight-art .mono { font-size:11px; }
#hero .art-question { bottom:56px; }
#hero .art-question strong { font-size:17px; }
#hero .art-orbit { inset:12% 15% 20%; height:auto; animation:none; }
#hero .art-orbit::after { animation:handoff-travel 8s ease-in-out infinite; }
#hero .art-document-lines i { transform-origin:left; animation:evidence-highlight 8s ease-in-out infinite; }
#hero .art-document-lines i:nth-child(2) { animation-delay:.3s; }
#hero .art-document-lines i:last-child { animation-delay:.6s; }
#hero .art-signature { transform-origin:left; animation:signature-write 8s ease-in-out infinite; }
#hero .art-lens { animation:review-ring 8s ease-in-out infinite; }
@keyframes recommendation-drift { 0%,100%{transform:rotate(-2deg) translateY(0)} 50%{transform:rotate(-1deg) translateY(-6px)} }
@keyframes approval-drift { 0%,100%{transform:rotate(2deg) translateY(0)} 50%{transform:rotate(1deg) translateY(6px)} }
@keyframes evidence-highlight { 0%,15%,100%{opacity:.6;transform:scaleX(.9)} 30%,75%{opacity:1;transform:scaleX(1)} }
@keyframes signature-write { 0%,25%{transform:skewY(-5deg) scaleX(.15);opacity:.3} 48%,100%{transform:skewY(-5deg) scaleX(1);opacity:1} }
@keyframes handoff-travel { 0%,15%{translate:-180px 0;opacity:0} 25%{opacity:1} 60%{translate:180px 0;opacity:1} 75%,100%{translate:180px 0;opacity:0} }
@keyframes review-ring { 0%,60%,100%{box-shadow:inset 0 0 0 5px #25241f,inset 0 0 0 6px #a68849,0 0 0 0 #d7b87300} 75%{box-shadow:inset 0 0 0 5px #25241f,inset 0 0 0 6px #a68849,0 0 0 9px #d7b87318} }
/* Feedback communicates the visitor's outcome, with an explicit textual status. */
main#main-content #demo .demo-result { background:#fff8e9; border:1px solid #d7b565; color:#6b4f13; }
main#main-content #demo .demo-result.is-missed { background:#fff1ef; border-color:#d9a09a; color:#782c26; }
main#main-content #demo .demo-result.is-correct { background:#edf7f0; border-color:#98bda2; color:#285938; }
main#main-content #demo .demo-result h3,main#main-content #demo .demo-result .known-answer strong,main#main-content #demo .demo-result .micro-label { color:inherit; }
main#main-content #demo .demo-result>p { color:#51473e; }
main#main-content #demo .demo-result .known-answer { border-color:#d7b565; }
main#main-content #demo .demo-result.is-missed .known-answer { border-color:#e8beb8; }
.result-research { margin-top:18px; padding:16px; border-radius:5px; background:#fffaf8; border-left:3px solid #b6493e; }
.result-research strong { font-size:15px; }
.result-research p { font-size:13px; line-height:1.6; margin:8px 0; color:#51473e; }
.result-research a { font-size:11px; text-decoration:underline; text-underline-offset:3px; color:#782c26; }
.result-research small { display:block; margin-top:9px; font-size:10px; line-height:1.5; color:#65544f; }
@media(max-width:860px){#hero .art-recommendation,#hero .art-review{padding:24px} #hero .oversight-art{min-height:320px}}
@media(max-width:600px){main#main-content>section#hero{gap:22px;padding-top:28px} #hero .oversight-art{min-height:325px;margin-top:0} #hero .art-recommendation{top:20px;width:77%;padding:18px} #hero .art-review{top:127px;width:69%;padding:18px} #hero .oversight-art strong{font-size:22px} #hero .oversight-art .mono{font-size:9px} #hero .art-question{bottom:38px} #hero .art-question strong{font-size:13px} #hero .art-orbit::after{display:none}}
@media(prefers-reduced-motion:reduce){#hero .art-recommendation,#hero .art-review,#hero .art-orbit::after,#hero .art-document-lines i,#hero .art-signature,#hero .art-lens{animation:none}}
.reduce-motion #hero .art-recommendation,.reduce-motion #hero .art-review,.reduce-motion #hero .art-orbit::after,.reduce-motion #hero .art-document-lines i,.reduce-motion #hero .art-signature,.reduce-motion #hero .art-lens{animation:none}
/* A contained, sequential narrative; values are explicitly fictional. */
#hero .hero-autodemo { display:flex; flex-direction:column; padding:24px 30px; justify-content:center; border-radius:16px 16px 0 0; background:#fffdf9; }
.autodemo-toolbar { display:flex; justify-content:space-between; align-items:center; gap:12px; border-bottom:1px solid #e9dec9; padding-bottom:16px; }
#hero .autodemo-toolbar .mono { font-size:10px; }
.autodemo-toolbar>div { display:flex; gap:14px; }
.autodemo-toolbar button { background:none; border:0; font:11px 'DM Sans',sans-serif; color:#65543a; cursor:pointer; padding:6px; }
.autodemo-toolbar button:disabled { opacity:.45; cursor:default; }
.autodemo-toolbar button:focus-visible { outline:2px solid #96722d; outline-offset:3px; }
.autodemo-flow { display:grid; grid-template-columns:1fr 24px 1fr 24px 1fr; align-items:stretch; gap:12px; margin-block:30px; }
.autodemo-step { padding:26px 22px; min-height:235px; border:1px solid #e6dcc7; background:#fff; border-radius:10px; box-shadow:0 8px 20px #96722d08; opacity:.5; transition:opacity 350ms,border-color 350ms,box-shadow 350ms; }
.autodemo-step.is-active,.autodemo-step.is-complete { opacity:1; }
.autodemo-step.is-active { border-color:#b28b42; box-shadow:0 10px 25px #96722d14; }
#hero .autodemo-step .mono { font-size:9px; letter-spacing:.7px; }
#hero .autodemo-step strong { font-size:clamp(21px,2vw,28px); min-height:2.4em; line-height:1.15; margin-top:22px; color:#20201d; }
.autodemo-step p { font-size:13px; line-height:1.6; min-height:4.8em; margin:12px 0 20px; color:#66635b; }
.autodemo-status { display:block; font-size:10px; color:#96722d; padding-top:12px; border-top:1px solid #eee7d9; opacity:0; transition:opacity 350ms; }
.is-complete .autodemo-status { opacity:1; }
.autodemo-arrow { align-self:center; color:#af8e4f; font-size:24px; }
.autodemo-loss.is-active,.autodemo-loss.is-complete { border-color:#d7a39a; background:#fff5f2; }
#hero .autodemo-loss strong,.autodemo-loss .autodemo-status { color:#913b31; }
[data-type].is-typing::after { content:''; display:inline-block; width:.5em; height:1em; background:#181816; margin-left:3px; vertical-align:-.08em; }
#hero .hero-autodemo figcaption { position:static; margin-top:auto; }
#hero .hero-autodemo figcaption strong { font-size:15px; font-weight:500; margin:0; color:#20201d; }
.hero-autodemo figcaption span { display:block; margin-top:9px; font-size:10px; color:#7a7162; }
.autodemo-accessible { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(max-width:860px){#hero .hero-autodemo{padding:20px}.autodemo-flow{gap:8px;grid-template-columns:1fr 14px 1fr 14px 1fr}.autodemo-step{padding:20px 14px}.autodemo-arrow{font-size:18px}}
@media(max-width:600px){#hero .hero-autodemo{padding:16px;min-height:0}.autodemo-flow{grid-template-columns:1fr;gap:10px;margin-block:18px}.autodemo-arrow{display:none}.autodemo-step{min-height:0;padding:16px;display:grid;grid-template-columns:1fr;}.autodemo-step p{min-height:3.2em;margin:8px 0 0;font-size:12px}#hero .autodemo-step strong{font-size:22px;min-height:1.2em;margin-top:10px}.autodemo-status{display:none}#hero .hero-autodemo figcaption strong{font-size:13px}.hero-autodemo figcaption span{line-height:1.5}}
@media(prefers-reduced-motion:reduce){.autodemo-step,.autodemo-status{transition:none}}
.reduce-motion .autodemo-step,.reduce-motion .autodemo-status{transition:none}
@media(max-width:600px){.autodemo-step{padding:12px}#hero .autodemo-step .mono{font-size:8px}#hero .autodemo-step strong{font-size:20px;margin-top:8px}.autodemo-step p{min-height:0;font-size:11px;line-height:1.4;margin-top:6px}.autodemo-flow{margin-block:14px;gap:8px}.autodemo-toolbar{padding-bottom:10px}}
@media(max-width:600px){.autodemo-step p{min-height:4.2em}#hero .hero-autodemo{padding:12px}.autodemo-flow{margin-block:10px;gap:6px}.hero-autodemo figcaption span{margin-top:6px}}
@media(max-width:600px){main#main-content>section#hero{padding-top:22px}}
#applications .application-carousel { min-width:0; }
.application-carousel-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }
.application-carousel-toolbar>.mono { color:#8c733f; font-size:9px; letter-spacing:.7px; }
.application-carousel-toolbar>div { display:flex; align-items:center; gap:10px; }
.application-carousel-toolbar button { display:grid; place-items:center; height:36px; min-width:36px; border:1px solid #dcccab; border-radius:50%; background:#fffdf8; color:#6f5524; font-size:17px; cursor:pointer; transition:background 180ms; }
.application-carousel-toolbar button:hover { background:#f2ead9; }
.application-carousel-toolbar button:first-child { padding:0 14px; border-radius:20px; font:11px 'DM Sans',sans-serif; }
.application-carousel-toolbar button:disabled { opacity:.4; cursor:default; }
#applications .application-list { display:flex; overflow-x:auto; gap:20px; scrollbar-width:none; cursor:grab; touch-action:pan-x pan-y; padding:8px 0 22px; user-select:none; }
#applications .application-list::-webkit-scrollbar { display:none; }
#applications .application-list.is-dragging { cursor:grabbing; }
#applications .application-list article { flex:0 0 calc((100% - 40px)/2.2); min-width:0; min-height:235px; padding:32px 76px 30px 28px; }
#applications .application-list h3 { font-size:27px; }
#applications .application-list p { font-size:14px; }
#applications .application-list .domain-art { right:15px; }
#applications .application-list:focus-visible,.application-carousel-toolbar button:focus-visible { outline:2px solid #96722d; outline-offset:4px; }
.health-art span { border-radius:2px; width:20px; height:20px; background:linear-gradient(90deg,transparent 35%,#b38c42 35% 65%,transparent 65%),linear-gradient(transparent 35%,#b38c42 35% 65%,transparent 65%); border:0; }
.market-art i { height:30px; top:28px; }.market-art i:nth-child(2) { height:43px; top:14px; }.market-art i:nth-child(3) { height:56px; top:0; }
.energy-art span { border-radius:0; transform:rotate(45deg); }.aviation-art i { border-radius:0 25px 0 0; }.security-art i { border-radius:5px 5px 20px 20px; }.supply-art i { height:40px; top:18px; }
#publications .compact-publications>a { padding:0 0 24px; overflow:hidden; }
#publications .publication-thumbnail { display:block; width:100%; height:160px; object-fit:cover; border-bottom:1px solid #e5d9bf; transition:transform 400ms; }
#publications .compact-publications>a:hover .publication-thumbnail { transform:scale(1.035); }
#publications .compact-publications>a>.mono { display:block; margin:22px 24px 0; }
#publications .compact-publications h3 { margin:14px 24px 0; font-size:24px; }
#publications .compact-publications>a>span:last-child { top:auto; bottom:12px; }
@media(max-width:860px){#applications .application-list article{flex-basis:65%;min-height:230px}}
@media(max-width:600px){.application-carousel-toolbar{align-items:start}.application-carousel-toolbar>.mono{max-width:145px;line-height:1.7}#applications .application-list article{flex-basis:88%;padding:26px 64px 24px 22px}#applications .application-list h3{font-size:24px}#applications .application-list p{font-size:13px}#publications .publication-thumbnail{height:165px}}
@media(prefers-reduced-motion:reduce){#publications .publication-thumbnail{transition:none}#publications .compact-publications>a:hover .publication-thumbnail{transform:none}}
.reduce-motion #publications .publication-thumbnail{transition:none}
/* Keep the restored demo inside the opening mobile viewport. */
@media(max-width:600px){main#main-content>section#hero{gap:18px;padding-top:20px}#hero .hero-one-liner{font-size:15px;line-height:1.45;margin-top:18px}#hero .hero-actions{margin-top:20px}.autodemo-step{padding:10px}.autodemo-step p{min-height:3.8em}.hero-autodemo figcaption span{font-size:9px}}
/* Readable small type and explicit feedback; no meaning depends on colour. */
#evidence .evidence-findings>a,#applications .application-list article>.mono,#report .topic-label,#report .report-more>summary,#branches .branch-card .mono,#branches .branch-link,#publications .compact-milestone a { color:#78581f; }
.site-footer .brand-name>span { color:#65563d; }
.team-avatar .avatar-initials { color:#59451e; }
#branches .branches-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
#demo .case-evidence dd { color:#20201d; font-size:14px; font-weight:600; display:block; visibility:visible; opacity:1; }
#demo .case-evidence dt { color:#645c4d; }
main#main-content #contact .enquiry-privacy { font-size:11px; line-height:1.6; margin-bottom:18px; }
.enquiry-privacy a { color:#f0d7a4; text-decoration:underline; text-underline-offset:3px; }
#catch-grid i.miss { background:repeating-linear-gradient(135deg,#514735 0 2px,#f7f0de 2px 4px); }
@media(max-width:600px){#branches .branches-grid{grid-template-columns:1fr}}
/* Full content-width demo; compact branches and a legible, grouped footer. */
#hero .hero-autodemo { width:100%; max-width:none; }
main#main-content>section#branches { padding-block:55px; }
#branches .section-heading { margin-bottom:24px; }
#branches .section-heading h2 { font-size:38px; }
#branches .branches-grid { gap:18px; }
#branches .branch-card { display:block; padding:26px 30px; min-height:0; }
#branches .branch-card>.mono { font-size:9px; color:#78581f; }
#branches .branch-card h3 { font-size:29px; margin:12px 0; }
#branches .branch-card p { font-size:13px; color:#66635b; line-height:1.6; margin:0 0 16px; }
#branches .branch-link { font-size:12px; }
.footer-columns { display:grid; grid-template-columns:1.4fr 1fr 1fr 1.2fr; gap:45px; align-items:start; }
.footer-about>p { font-size:12px; color:#66635b; margin:20px 0; }
.footer-columns nav { display:grid; align-content:start; gap:12px; }
.footer-columns nav h3 { font:600 12px 'DM Sans',sans-serif; color:#20201d; margin:0 0 7px; }
.footer-columns nav a { font-size:12px; color:#655b4b; text-decoration:none; }
.footer-columns nav a:hover { color:#78581f; text-decoration:underline; text-underline-offset:4px; }
.footer-columns a:focus-visible { outline:2px solid #96722d; outline-offset:4px; }
.footer-copyright { border-top:1px solid #e9e1d2; margin-top:32px; padding-top:20px; font-size:10px; color:#66635b; }
@media(max-width:860px){.footer-columns{grid-template-columns:1fr 1fr;gap:30px}main#main-content>section#branches{padding-block:40px}}
@media(max-width:600px){#branches .branch-card{padding:22px}.footer-columns{gap:32px 18px}.footer-about{grid-column:1/-1}.footer-columns nav:last-child{grid-column:1/-1}}
