/* Shared public-site brand system. Private application colours and genuine evidence assets are preserved. */
:root:root{--brand-ink:#243247;--brand-charcoal:#101d2d;--brand-graphite:#1b2a3d;--brand-emerald:#20523f;--brand-champagne:#d9c38f;--brand-ivory:#f6f3eb;--brand-paper:#fffdf8;--brand-border:#d3d9df;--brand-text-gold:#76551d;--ink:var(--brand-ink);--charcoal:var(--brand-charcoal);--charcoal-2:var(--brand-graphite);--teal:var(--brand-text-gold);--teal-dark:#503c1d;--gold:#94702f;--mist:var(--brand-ivory);--paper:var(--brand-paper);--muted:#566375;--line:var(--brand-border);--shadow:0 16px 40px #0e1b2d0d}
body .site-shell{background:var(--brand-paper)}body main :is(h1,h2,h3){text-wrap:pretty}body main :is(p,li,dd){text-wrap:pretty}body main .section{--line:var(--brand-border)}body main .card{border-color:var(--brand-border);border-radius:12px;box-shadow:0 6px 22px #29272005}body main :is(.proof-kind,.text-link,.project-filter-count){color:var(--brand-text-gold)}
body:not([data-page="home"]) :is(.web-professional-intro,.crm-professional-intro,.travel-professional-intro,.enquiry-intro,.new-hero,.travel-service-hero,.crm-campaign-hero){background:linear-gradient(120deg,#202120,#33332d);color:#fff9ee}body:not([data-page="home"]) :is(.web-professional-intro,.crm-professional-intro,.travel-professional-intro,.enquiry-intro,.new-hero,.travel-service-hero,.crm-campaign-hero) .eyebrow{color:var(--brand-champagne)}body :is(.web-lede,.crm-lede,.travel-lede,.enquiry-intro p,.new-hero .hero-lede,.travel-service-hero .hero-lede){color:#ded9cf}body :is(.web-jump,.crm-jump,.travel-jump) a{color:var(--brand-champagne)}
body main :is(.web-next,.crm-next,.travel-next,.enquiry-start,.crm-concept,.web-project-image,.travel-real-work,.project-facts,.crm-dependency-note,.web-dependency-note,.travel-dependency-note,.enquiry-expectation){background:var(--brand-ivory);border-color:var(--brand-border);color:var(--brand-ink)}body main :is(.web-step,.crm-step,.travel-step,.journey-number,.project-facts dt,.project-facts dd,.project-evidence-note,.crm-evidence-note,.web-evidence-note){color:var(--brand-text-gold)}body .enquiry-guidance li:before{background:#eee3ce;color:#5e4420}body .enquiry-guidance li span,body .enquiry-form-intro{color:#566375}
body .button{border-radius:7px;transition:background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease}body:not([data-page="home"]) .button.primary{background:var(--brand-champagne);border-color:#c8af7e;color:#24251f;box-shadow:none}body:not([data-page="home"]) .button.primary:hover{background:#efdfc0;box-shadow:0 5px 16px #28272012}body .button.dark{background:var(--brand-charcoal);border-color:var(--brand-charcoal);color:#f8f1e3;box-shadow:none}body .button.light{background:var(--brand-paper);border-color:var(--brand-border);color:var(--brand-ink)}body:not([data-page="home"]) main .button.secondary{background:transparent;border-color:#bca77f;color:#5d441f}body:not([data-page="home"]) :is(.hero,.new-hero,.web-professional-intro,.crm-professional-intro,.travel-professional-intro,.enquiry-intro,.travel-service-hero) .button.secondary{color:#f5e8ce;border-color:#a8946b;background:#ffffff06}
body main :is(.form-panel,.brief-panel){border-color:var(--brand-border)}body main .field :is(input,select,textarea){border-color:#c5b89f;background:#fffefa;border-radius:7px;color:var(--brand-ink)}body main .field :is(input,select,textarea):focus{border-color:#8c682d;outline:3px solid #b58c4040;outline-offset:1px}body main .field :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select){min-height:48px}body main :is(table thead th,.crm-planning caption){background:#f0e8d9;color:#433d32}body main :is(.form-help,.project-evidence-note){color:#566375}body :is(a,button,summary,input,select,textarea):focus-visible{outline:3px solid #997234;outline-offset:4px}
body .footer.footer-compact{background:var(--brand-charcoal);border-top:1px solid #e4cea130}body .footer-compact :is(p,a,address){color:#d1ccc2}body .footer-compact :is(h3,h4,summary){color:#fff6e6}body .footer-compact .footer-contact-actions a{background:#2b2c29;border-color:#78694e;color:#f7eddb}body .footer-compact .footer-contact-actions a:last-child{background:#2b2c29;border-color:#b59d6f;color:var(--brand-champagne)}body .footer-compact .footer-direction,body .footer-compact .footer-top{color:var(--brand-champagne)}body .footer-compact .footer-brand-note{color:#b8b3a7}body .footer-international span{color:#c5bca9}body .solutions-menu{background:#292a27;border-color:#7c6b4e}body .solutions-menu .nav-menu-label{color:#d4bd91}body .mobile-contact-bar{background:#202120;border-color:#b09a6d}body .mobile-contact-bar .mobile-contact-whatsapp{background:#2d2e2a;border:1px solid #bda77e;color:#f1e5ce}body .mobile-contact-bar .mobile-contact-demo{background:var(--brand-champagne);border-color:var(--brand-champagne);color:#22231f}
/* Project imagery stays factual, uncropped in directory cards, and inspectable in the existing viewer. */
body .project-browser{display:block;overflow:hidden;border:1px solid var(--brand-border);border-radius:9px;background:#f1ebdf;min-width:0}body .project-browser-bar{display:flex;align-items:center;gap:5px;height:28px;padding:0 12px;border-bottom:1px solid var(--brand-border);background:#eee7d9}body .project-browser-bar i{display:block;width:6px;height:6px;border-radius:50%;background:#ab9771}body .project-directory-grid{gap:28px}body .project-directory-grid article{padding:24px;gap:16px;box-shadow:none;border-color:var(--brand-border);background:#fffcf6}body .project-directory-grid .project-browser img{width:100%;height:auto;aspect-ratio:1.9;object-fit:contain;border-radius:0;background:#f4efe5}body .project-directory-grid h3{font-size:clamp(1.25rem,2vw,1.65rem);margin:0}body .project-directory-grid .proof-kind{font-size:.75rem;letter-spacing:.04em}body .project-filters button{border-color:#b5a17b;color:#584321;background:#fffcf6}body .project-filters button[aria-pressed="true"]{background:#282925;color:#f2dfbb;border-color:#282925}body .project-filter-empty{background:var(--brand-ivory);border-color:var(--brand-border);color:#5b5447}
body .home-reference-gallery .home-reference-layout{grid-template-columns:.8fr 1.2fr;gap:42px;align-items:start}body .home-featured-project[data-preview-kind="project"] [data-featured-image-link]{display:block;position:relative;border-block:1px solid #d4c5a8;padding-top:28px;background:#eee7d9}body .home-featured-project[data-preview-kind="project"] [data-featured-image-link]:before{content:"";position:absolute;top:11px;left:14px;width:6px;height:6px;border-radius:50%;background:#a28b60;box-shadow:11px 0 #a28b60,22px 0 #a28b60}body .home-featured-project[data-preview-kind="project"] [data-featured-image]{width:100%;height:auto;aspect-ratio:1.9;object-fit:contain;background:#f4efe5}body .home-project-viewer{border-color:var(--brand-border);background:#fffaf1;color:#2d2e28}body .home-project-viewer::backdrop{background:#191b19d9}body .viewer-image-wrap{background:#eae4d8}body .viewer-footer{background:#faf6ed;border-color:var(--brand-border);color:#625b4e}body .viewer-control{background:#fffaf1;color:#493b23;border-color:#bcaa87}
@media(max-width:900px){body .home-reference-gallery .home-reference-layout{grid-template-columns:1fr;gap:24px}body .home-reference-gallery .home-featured-project{max-width:none;width:100%}}@media(max-width:760px){body .project-directory-grid article{padding:18px;gap:14px}body .project-directory-grid{gap:20px}body .project-directory-grid .project-browser img{aspect-ratio:1.8}body .button{min-height:44px}}
@media(prefers-reduced-motion:reduce){body .button,body .project-browser{transition:none;transform:none}html{scroll-behavior:auto}}

/* Light-surface labels use a darker gold; dark sections retain readable champagne text. */
body main .eyebrow{color:var(--brand-text-gold)}body main :is(.hero,.new-hero,.travel-service-hero,.web-professional-intro,.crm-professional-intro,.travel-professional-intro,.enquiry-intro,.crm-campaign-hero,.crm-planning-hero,.home-professional-hero,.home-international-process) .eyebrow{color:var(--brand-champagne)}body main .dark :is(.text-link,.proof-kind){color:var(--brand-champagne)}body[data-page="home"] #start-project .form-help{color:#d3cbba}body[data-page] main :is(.sandbox-intro,.sample-guide,.sample-column){background:var(--brand-ivory);border-color:var(--brand-border)}body[data-page] main :is(.sample-notice,.sample-update){border-color:var(--brand-border);background:var(--brand-paper)}body[data-page] main .guide-steps [aria-current="step"],body[data-page] main .sample-lead.guide-highlight{border-color:#8c682d}body main :is(.sample-privacy,.sample-empty){color:#566375}

body .button:focus-visible,body .project-filters button:focus-visible,body .viewer-control:focus-visible{outline:3px solid #997234;outline-offset:4px}

body main .button{max-width:100%;min-width:0;white-space:normal;text-align:center;overflow-wrap:anywhere}body main .card{min-width:0}

body main :is(.form-panel,.field,fieldset,.enquiry-guidance){min-width:0;max-width:100%}body main .field :is(input,select,textarea){min-width:0;max-width:100%}body main :is(.outcome-grid,.enquiry-layout,.web-intro-grid,.crm-intro-grid,.travel-intro-grid)>*{min-width:0}

body main :is(p,li,dd,.form-help),body .enquiry-guidance{overflow-wrap:anywhere}

@media(prefers-reduced-motion:reduce){body .button:hover{transform:none}}

/* Compact public navigation, with restrained pointer and keyboard feedback. */
body[data-page] .topbar .nav-wrap{min-height:82px;gap:18px}
body[data-page] .topbar .brand{gap:12px;min-width:230px}
body[data-page] .topbar .brand-mark{width:44px;height:48px;font-size:25px;flex-shrink:0}
body[data-page] .topbar .brand-name{font-size:11px;letter-spacing:.11em}
body[data-page] .topbar .brand-line{font-size:10px}
body[data-page] .topbar .nav-actions{gap:12px}
body[data-page] .topbar .nav-actions>.primary{min-height:46px;padding:12px 16px}
body[data-page] .topbar .primary-nav>.nav-link,body[data-page] .topbar .nav-dropdown>summary{position:relative;text-decoration:none;background:transparent}
body[data-page] .topbar .primary-nav>.nav-link:after,body[data-page] .topbar .nav-dropdown>summary:after{content:"";position:absolute;bottom:5px;left:10px;right:10px;height:1px;background:#e4cea1;transform:scaleX(0);transform-origin:left;transition:transform 180ms ease}
body[data-page] .topbar .primary-nav>.nav-link:is(:hover,:focus-visible,[aria-current=page],.is-active):after,body[data-page] .topbar .nav-dropdown>summary:is(:hover,:focus-visible,.is-active):after,body[data-page] .topbar .nav-dropdown[open]>summary:after{transform:scaleX(1)}
body[data-page] .topbar :is(a,summary,button):focus-visible{outline-color:#e4cea1;outline-offset:3px}
@media(max-width:1180px){body[data-page] .topbar .nav-wrap{min-height:74px;gap:12px}body[data-page] .topbar .brand{min-width:0}body[data-page] .topbar .primary-nav{inset:74px 0 auto}body[data-page] .topbar .brand-mark{width:40px;height:44px;font-size:23px}}
@media(max-width:540px){body[data-page] .topbar .nav-wrap{gap:8px}body[data-page] .topbar .brand{gap:9px}body[data-page] .topbar .brand-mark{width:36px;height:40px;font-size:22px}body[data-page] .topbar .brand-name{font-size:10px;letter-spacing:.065em}body[data-page] .topbar .nav-actions{gap:7px}}
@media(hover:hover) and (pointer:fine){body main .button:hover{transform:translateY(-1px)}}
@media(prefers-reduced-motion:reduce){body[data-page] .topbar .primary-nav>.nav-link:after,body[data-page] .topbar .nav-dropdown>summary:after{transition:none}body main .button:hover{transform:none}}

/* Midnight navy surfaces and champagne actions preserve the established page geometry. */
body[data-page] .topbar{--header-gold:var(--brand-champagne);background:var(--brand-graphite);border-bottom-color:#485c73}
body[data-page] .topbar .solutions-menu{background:#203249;border-color:#536a83}
body[data-page] .topbar .nav-actions>.secondary{color:#e0e6ee}
body:not([data-page="home"]) :is(.web-professional-intro,.crm-professional-intro,.travel-professional-intro,.enquiry-intro,.new-hero,.travel-service-hero,.crm-campaign-hero){background:radial-gradient(ellipse at 85% 35%,#304f7599,transparent 70%),var(--brand-charcoal)}
body .button.dark{background:var(--brand-charcoal);border-color:var(--brand-charcoal);color:#f7f4ec}
body .button.dark:hover{background:#243f5c;border-color:#243f5c}
body .footer.footer-compact{background:var(--brand-charcoal);border-top-color:#485c73}
body .footer-compact .footer-contact-actions a{background:#203249;border-color:#536a83}
body .footer-compact .footer-contact-actions a:last-child{background:var(--brand-emerald);border-color:#688c75;color:#f2e4c8}
body .mobile-contact-bar{background:var(--brand-charcoal);border-color:#536a83}
body .mobile-contact-bar .mobile-contact-whatsapp{background:var(--brand-emerald);border-color:#73917b;color:#f7f4ec}
body main .project-browser,body main .project-browser-bar{background:#edf0f4;border-color:#c7d1dd}
body main .project-directory-grid article{background:#fffdf8;border-color:#d3d9df;box-shadow:0 8px 24px #123b2708}
body main .workflow-visual li{background:#edf1f5;border-color:#c7d3e0}
body main .workflow-visual .workflow-number{color:#2b4b6a}
body main .comparison-scope{border-color:var(--brand-border)}
body main .enquiry-summary{background:#edf1f5;border-color:#aebfd1;color:var(--brand-ink)}
body main .enquiry-summary h3,body main .enquiry-summary .summary-value{color:var(--brand-ink)}
body main .enquiry-summary :is(dt,.summary-currency-rule,.summary-note){color:#4c6078}
body main .enquiry-summary .summary-edit{color:var(--brand-emerald)}
body[data-page="home"] #start-project .form-panel .form-help{color:#4c6078}
body main .walkthrough-note{background:#fffdf8;border-color:#c7d3e0}
body main .walkthrough-number{color:#2b4b6a;border-color:#a7bbd1}
@media(max-width:1180px){body[data-page] .topbar .primary-nav{background:#1b2a3d;border-color:#536a83}}

/* The existing seven Services destinations, now with concise purpose descriptions. */
body[data-page] .topbar .nav-solutions .solutions-menu{width:328px;max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:8px}
body[data-page] .topbar .nav-solutions .nav-service-link{display:grid;grid-template-columns:minmax(0,1fr);gap:3px;align-items:start;min-height:56px;text-decoration:none}
body[data-page] .topbar .nav-service-title{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:650;line-height:1.4}
body[data-page] .topbar .nav-service-description{display:block;color:#c1cbbf;font-size:12px;font-weight:400;line-height:1.5}
body[data-page] .topbar .nav-service-link:is(:hover,:focus-visible,[aria-current="page"]) .nav-service-title{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1180px){body[data-page] .topbar .nav-solutions .solutions-menu{width:100%;max-height:none;overflow:visible;overscroll-behavior:auto}body[data-page] .topbar .nav-service-title{font-size:14px}}
body #crm-enquiry-case-study{scroll-margin-top:110px}

/* Public BGG brand polish. This stylesheet is not loaded by private applications. */
body[data-page]{font-family:Inter,"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;-webkit-font-smoothing:antialiased}
body[data-page] .topbar .brand{gap:13px}
body[data-page] .topbar .brand-mark{width:48px;height:48px;flex:0 0 48px;padding:0;border:0;outline:0;border-radius:13px;background:transparent url('/assets/bgg-monogram.svg?v=20261025-brand-polish') center/contain no-repeat;box-shadow:none;color:transparent;font-size:0;letter-spacing:0}
body[data-page] .topbar .brand-copy{gap:3px}
body[data-page] .topbar .brand-name{font-size:12px;font-weight:700;letter-spacing:.09em;line-height:1.4;color:#f6f3eb}
body[data-page] .topbar .brand-line{font-size:11px;line-height:1.45;margin:0;color:#c5d0de}
body[data-page] .topbar .nav-link{font-weight:550}
body[data-page] main :is(h1,h2,h3){font-weight:650}
body[data-page] main h2{letter-spacing:-.035em;line-height:1.22}
body[data-page] main h3{line-height:1.35}
body[data-page="home"]{--gold:var(--brand-champagne);--cream:var(--brand-ivory)}
body[data-page="home"] .home-professional-hero{background:radial-gradient(ellipse at 78% 42%,#31527c70,transparent 68%),var(--brand-charcoal)}
body[data-page="home"] .home-professional-hero h1{font-weight:650;line-height:1.12;letter-spacing:-.035em}
body[data-page="home"] .home-professional-hero .home-intro-copy{color:#dde4ed;line-height:1.75}
body[data-page="home"] .home-professional-hero h1 span,body[data-page="home"] .home-delivered-proof{color:var(--brand-champagne)}
body[data-page="home"] .intl-showcase{background:linear-gradient(135deg,#283e59,#1b2a3d);border-color:#60748a}
body[data-page="home"] .intl-workspace,body .hero-lead-dialog{background:var(--brand-ivory)}
body[data-page="home"] .intl-sample{color:var(--brand-champagne)}
body[data-page] main .button{min-height:48px;font-size:14px;font-weight:650;line-height:1.4;border-radius:8px;padding:12px 19px}
body[data-page] .topbar .nav-actions>.primary,body:not([data-page="home"]) .button.primary,body[data-page="home"] .home-project-choice .home-primary-actions .primary,body[data-page="home"] .nav-actions .primary{background:var(--brand-champagne);border-color:var(--brand-champagne);color:#101d2d;box-shadow:0 3px 10px #0e1b2d12}
body[data-page] .topbar .nav-actions>.primary:hover,body:not([data-page="home"]) .button.primary:hover,body[data-page="home"] .home-project-choice .home-primary-actions .primary:hover{background:#e9d8b2;border-color:#e9d8b2;color:#101d2d;box-shadow:0 5px 16px #0e1b2d1c}
body[data-page] .button:active{box-shadow:none}
body[data-page] .button:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}
body[data-page] .button:focus-visible{outline:3px solid #806027;outline-offset:4px}
body[data-page] .topbar .button:focus-visible,body[data-page] :is(.home-professional-hero,.new-hero,.crm-professional-intro,.web-professional-intro,.travel-professional-intro,.enquiry-intro) .button:focus-visible{outline-color:#f0dcae}
@media(max-width:1180px){body[data-page] .topbar .brand-mark{width:42px;height:42px;flex-basis:42px;border-radius:11px}}
@media(max-width:540px){body[data-page] .topbar .brand{gap:9px}body[data-page] .topbar .brand-mark{width:40px;height:40px;flex-basis:40px}body[data-page] .topbar .brand-name{font-size:10px;letter-spacing:.065em}body[data-page] .topbar .brand-line{font-size:10px}body[data-page] main .button{padding:12px 16px}body[data-page="home"] .home-professional-hero .home-intro-copy{line-height:1.7}}
@media(prefers-reduced-motion:reduce){body[data-page] .button{transition:none;transform:none}body[data-page] .button:hover{transform:none}}

/* Public palette refresh: warm ivory, midnight navy and champagne. Semantic green/amber chips and genuine media retain their colours. */
body[data-page="home"]{--ink:var(--brand-ink)}
body[data-page="home"] :is(.home-global-coverage,.home-international-process,#start-project){background:var(--brand-charcoal)}
body[data-page="home"] main .section.home-international-process .eyebrow{color:var(--brand-champagne)}
