/* Warm stone by day, layered charcoal by night. */
:root{color-scheme:light;--ink:#24282B;--muted:#5c6269;--accent:#C8050F;--accent-dark:#B8050F;--soft:#ece3df;--line:#d5d3cf;--paper:#eeeae5;--bg:#e5e2dc;--dark:#24282B;--nav-surface:#eeeae5f5;--field:#f3f0eb;--chip:#e2ded8;--shadow:0 8px 28px #24282B06}
:root[data-theme="dark"]{color-scheme:dark;--ink:#eeece8;--muted:#b3b9c3;--accent:#FF5C64;--accent-dark:#FF7A80;--soft:#32282c;--line:#414750;--paper:#24282B;--bg:#181d24;--dark:#12161c;--nav-surface:#24282Bf5;--field:#1c222b;--chip:#333b47;--shadow:0 8px 28px #0002}
body{background:var(--bg);overflow-wrap:break-word}
.masthead,.card,.step,.enquiry-panel,.faq details,.footer{background:var(--paper)}
.nav{background:var(--nav-surface)}
.skip,.menu-toggle,.button.secondary{background:var(--paper);color:var(--ink)}
.button.secondary{color:var(--accent)}
.card,.step,.enquiry-panel,.faq details{box-shadow:var(--shadow)}
.button{background:var(--brand-red);color:#fff;min-height:46px}
.button:hover{background:#B8050F;color:#fff}
.button.light{background:#eeeae5;border-color:#eeeae5;color:#24282B}
.button.light:hover{background:#ded9d2;color:#24282B}
.button.secondary:hover{background:var(--soft);color:var(--accent)}
.button.outline:hover{background:#ffffff12;color:#fff}
.service-list li{border-color:var(--line)}
.coverage-panel,.country-list span{border-color:var(--line)}
.country-list span{background:var(--paper)}
.project-tags span{background:var(--chip);color:var(--ink)}
.pill{color:var(--accent)}
.field input,.field select,.field textarea{background:var(--field);border-color:var(--line);color:var(--ink);font-size:16px}
.field input::placeholder,.field textarea::placeholder{color:var(--muted)}
.enquiry-result{background:var(--field)}
.service-index{color:var(--muted)}
.preview-note{background:var(--soft);border-color:var(--line);color:var(--muted)}
:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.masthead-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brand{min-width:0}.brand>span{min-width:0}.brand img{mix-blend-mode:multiply;flex-shrink:0}
[data-theme="dark"] .brand img{filter:invert(1) hue-rotate(180deg);mix-blend-mode:screen}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;min-width:46px;border:1px solid var(--line);border-radius:8px;padding:10px 13px;background:var(--paper);color:var(--ink);font-size:13px;font-weight:650;white-space:nowrap}
.theme-toggle:hover{background:var(--soft)}
.theme-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.theme-toggle .sun{display:none}
[data-theme="dark"] .theme-toggle .moon{display:none}
[data-theme="dark"] .theme-toggle .sun{display:block}
.nav-links a,.text-link{min-height:46px}
.splash-utility{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px}
.splash .splash-profile,.splash .splash-scroll{position:static;min-height:46px;font-size:13px;padding:10px 14px;line-height:1.5;gap:8px}
.splash .splash-scroll span{width:auto;height:auto;border:none;font-size:17px}
.splash-grid{padding-bottom:36px;min-height:calc((100svh - 146px)*.9)}
.splash .hero-actions{margin-bottom:0}
.splash-art .it-network{max-height:430px}
.photo-frame{margin:0;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
.photo-frame picture,.photo-frame img{display:block;width:100%}
.photo-frame img{height:auto;object-fit:cover}
.photo-frame figcaption{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;color:var(--ink);font-size:13px;font-weight:650}
.image-note{font-size:11px;font-weight:400;color:var(--muted)}
.team-photo{margin-top:28px}
.team-photo img{aspect-ratio:16/9;max-height:560px;object-position:center top}
.fieldwork{display:grid;grid-template-columns:1.15fr 1fr;align-items:stretch;gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--paper);margin-bottom:24px}
.fieldwork .photo-frame{border:0;border-radius:0;border-right:1px solid var(--line)}
.fieldwork .photo-frame picture{height:calc(100% - 49px)}
.fieldwork img{height:100%;min-height:290px;object-fit:cover;object-position:center}
.fieldwork-copy{padding:30px;align-self:center}
.fieldwork-copy h3{font-size:25px;letter-spacing:-.025em}
.fieldwork-copy p{color:var(--muted);font-size:15px}
.fieldwork-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.contact-welcome{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:28px;margin-bottom:24px}
.reception-photo img{aspect-ratio:3/2;object-position:center 35%;max-height:285px}
.contact-welcome h2{font-size:clamp(24px,2.7vw,32px);letter-spacing:-.025em;max-width:520px}
.contact-welcome p{color:var(--muted);max-width:520px}
.contact-welcome .button{margin-top:5px}
.wrap>*{min-width:0}
.form-grid>*,.grid>*,.about-grid>*,.coverage-panel>*{min-width:0}
@media(max-width:1100px){.nav-links{gap:19px}.masthead-actions{gap:8px}.header-consultation{font-size:13px;padding:10px 14px}.fieldwork-copy{padding:24px}}
@media(max-width:900px){.brand-name{font-size:16px}.brand{gap:12px}.brand img{width:72px;height:67px}.header-consultation{display:none}.splash-title{font-size:clamp(48px,6.4vw,58px)}.splash .splash-lead{font-size:18px}}
@media(max-width:780px){
 html{scroll-padding-top:76px}.wrap{padding-left:20px;padding-right:20px}
 .brand-row{padding-top:12px;padding-bottom:12px;gap:10px}.brand img{width:60px;height:56px}.brand-name{font-size:15px;line-height:1.3}.brand-line{font-size:10px;letter-spacing:.025em}.theme-toggle{padding:10px;gap:6px}
 .nav-inner{position:relative;align-items:center;gap:8px}.menu-toggle{min-height:46px;min-width:90px}.nav-end{font-size:11px}.nav-links.open{display:flex;max-height:65svh;overflow:auto;padding-top:4px}.nav-links a{padding:12px 4px}.nav-links a:last-child{border-bottom:0}
 .splash-grid{grid-template-columns:1fr;min-height:0;padding-top:28px;padding-bottom:28px;gap:20px}
 .splash-title{font-size:clamp(40px,8.2vw,58px);line-height:1.08;max-width:580px;margin:16px 0}.splash-title span{display:inline}.splash-title span::after{content:" "}
 .splash .eyebrow{font-size:10px;letter-spacing:.07em}.splash .splash-lead{font-size:18px}.splash .splash-description{font-size:15px;margin-bottom:18px}
 .splash .hero-actions{margin:18px 0 0;gap:10px}.splash .hero-actions .button{font-size:14px;padding:11px 15px;flex:1 1 auto}.splash-utility{gap:10px}.splash .splash-profile,.splash .splash-scroll{flex:1 1 auto;text-align:center;justify-content:center}
 .splash-art{max-width:450px}.splash-art .it-network{max-height:240px}.animation-toolbar{max-width:330px;padding:0;gap:10px}.animation-control{min-height:44px}.animation-caption{font-size:10px}
 .fieldwork{grid-template-columns:1fr}.fieldwork .photo-frame{border-right:0;border-bottom:1px solid var(--line)}.fieldwork .photo-frame picture{height:auto}.fieldwork img{aspect-ratio:3/2;height:auto;min-height:0;max-height:380px}.fieldwork-copy{padding:24px}.fieldwork-copy h3{font-size:23px}
 .contact-welcome{grid-template-columns:1fr;gap:20px}.reception-photo{max-width:560px;width:100%}.reception-photo img{max-height:350px}.team-photo{margin-top:24px}.team-photo img{max-height:none;aspect-ratio:3/2}
 .enquiry-body,.enquiry-heading{padding:22px}.contact-status{overflow-wrap:anywhere}.form-grid{gap:16px}.form-actions .button{flex:1 1 auto}.field select{width:100%;text-overflow:ellipsis}.values{gap:12px}.card{padding:22px}section{margin-bottom:36px}
}
@media(max-width:480px){.wrap{padding-left:18px;padding-right:18px}.theme-toggle-text{display:none}.brand img{width:52px;height:49px}.brand-name{font-size:14px}.brand-line{font-size:10px}.brand{gap:9px}.preview-note{font-size:11px;padding:7px 18px}.splash-title{font-size:clamp(38px,10.3vw,46px)}.splash-title span{display:inline}.splash-title span::after{content:" "}.splash .splash-profile,.splash .splash-scroll{flex-basis:100%;font-size:13px}.splash .hero-actions .button{font-size:13px;padding:11px 12px}.splash-art .it-network{max-height:215px}.splash .eyebrow{max-width:300px}.fieldwork-copy{padding:22px}.fieldwork-actions .button{width:100%}.photo-frame figcaption{padding:10px 13px;font-size:12px}.image-note{font-size:10px}.field input,.field select,.field textarea{padding:12px 10px}.enquiry-body,.enquiry-heading{padding:20px}.enquiry-heading h2{font-size:25px}.footer-grid{flex-direction:column;gap:16px}.country-list{gap:7px}.country-list span{padding:5px 10px}.principles{grid-template-columns:1fr}.contact-welcome h2{font-size:26px}}
@media print{html:root{color-scheme:light;--ink:#24282B;--muted:#5c6269;--accent:#C8050F;--paper:#eeeae5;--bg:#e5e2dc;--line:#d5d3cf;--soft:#ece3df}.theme-toggle,.splash-utility{display:none}.brand img{filter:none!important;mix-blend-mode:multiply!important}.fieldwork,.contact-welcome,.team-photo{break-inside:avoid}.photo-frame img{max-height:240px}.splash-grid{min-height:0}}

/* Welcome visitors immediately after the splash. */
.welcome-entry{margin-bottom:0;padding:32px 0;background:var(--bg)}
.welcome-entry .contact-welcome{margin-bottom:0}
@media(max-width:780px){.welcome-entry{padding:24px 0}}
