@font-face{font-family:"Plus Jakarta Sans";src:url("/assets/plus-jakarta-sans.woff") format("woff");font-weight:200 800;font-display:swap}
:root{font-family:"Plus Jakarta Sans",Arial,sans-serif;--red:#8b2c30;--red-dark:#692125;--paper:#f6f3ee;--surface:#fffdfa;--text:#3e3835;--line:#d8ccc4;--body:1rem;--label:.875rem;--h1:clamp(2rem,3.5vw,3rem);--h2:clamp(1.5rem,2.3vw,2rem);--h3:1.125rem;color:var(--text);background:var(--paper);color-scheme:light;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;font-size:var(--body);line-height:1.75}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}figure,p{margin:0}h1,h2,h3{margin:0;font-weight:600;line-height:1.3;letter-spacing:-.025em}h1{font-size:var(--h1)}h2{font-size:var(--h2);color:var(--red)}h3{font-size:var(--h3);color:var(--red)}p,li{font-size:var(--body);font-weight:400}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:5px}::selection{background:var(--red);color:var(--paper)}
.container{width:min(1200px,calc(100% - 80px));margin-inline:auto;min-width:0}.section{padding-block:64px}.eyebrow{font-size:var(--label);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--red);margin-bottom:12px}.section-intro{margin-bottom:28px}.skip-link{position:fixed;left:20px;top:-100px;padding:12px;background:var(--paper);z-index:200}.skip-link:focus{top:12px}
.header,.hero,.project,.footer,.vision-panel{background:var(--red);color:var(--surface)}.header{position:sticky;top:0;z-index:100;box-shadow:0 1px 0 #ffffff20}.header-inner{position:relative;min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid #ffffff30}.logo{width:230px;flex-shrink:0;display:block}.logo img{width:100%;height:auto}.menu-toggle{display:none}nav{display:flex;gap:22px;align-items:center;font-size:var(--label);font-weight:500}nav a{padding:10px 0;white-space:nowrap}nav a:hover{text-decoration:underline;text-underline-offset:6px}nav .nav-contact{padding:10px 14px;border:1px solid #ffffff70;border-radius:3px;display:flex;gap:16px;align-items:center}nav .nav-contact:hover{background:#ffffff12;text-decoration:none}
.hero-grid{display:grid;grid-template-columns:1.03fr 1fr;gap:48px;align-items:center;padding-block:48px}.hero h1{margin-bottom:22px}.hero .eyebrow,.project .eyebrow{color:inherit}.hero-copy>p:not(.eyebrow){max-width:510px}.hero-image{height:380px;overflow:hidden;border-radius:3px}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:65% center}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:13px 18px;border:1px solid transparent;border-radius:3px;font:inherit;font-size:var(--label);font-weight:600;line-height:1.5;transition:background .2s,color .2s}.button-light{background:var(--surface);color:var(--red)}.button-light:hover{background:#eee3db}.button-outline{border-color:#ffffff70;color:inherit}.button-outline:hover{background:#ffffff12}.button-red{background:var(--red);color:var(--surface)}.button-red:hover{background:var(--red-dark)}
.corporate-summary{display:grid;grid-template-columns:.9fr 1fr 1.15fr;gap:0;padding-block:24px;border-top:1px solid #ffffff30}.corporate-summary>div{padding-inline:24px;border-left:1px solid #ffffff30;min-width:0}.corporate-summary>div:first-child{padding-left:0;border:0}.corporate-summary>div:last-child{padding-right:0}.corporate-summary strong,.corporate-summary strong span{font-size:var(--h3);font-weight:600;line-height:1.5}.corporate-summary p{font-size:var(--label);line-height:1.7;margin-top:6px}
.about{display:grid;grid-template-columns:1fr 1.2fr;gap:40px 64px;align-items:start}.about-body p+p{margin-top:16px}.purpose-block{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.2fr;border:1px solid var(--line);border-radius:3px;overflow:hidden}.vision-panel,.mission-panel{padding:28px}.purpose-block h3{font-size:var(--h3);margin-bottom:16px}.vision-panel h3{color:inherit}.mission-panel{background:var(--surface)}.mission-panel ul{margin:0;padding-left:18px}.mission-panel li+li{margin-top:12px}.mission-panel li::marker{color:var(--red)}
.services{background:#eee8e2;border-block:1px solid var(--line)}.services-heading{display:flex;justify-content:space-between;align-items:end;gap:40px}.services-heading>p{max-width:400px}.service-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-tile{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:var(--surface);cursor:default;transition:background .25s,border-color .25s,color .25s}.service-visual{position:relative;aspect-ratio:3/2;overflow:hidden;background:#ddd3c9}.service-visual img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-visual:after{content:"";position:absolute;inset:0;background:#7b1729;mix-blend-mode:multiply;opacity:0;pointer-events:none;transition:opacity .25s}.service-tile-copy{padding:22px;flex:1;border-top:3px solid var(--red)}.service-title-row{margin-bottom:10px}.service-tile-copy h3{font-size:var(--h3)}
@media(hover:hover){.service-tile:hover{background:var(--red);border-color:var(--red);color:var(--surface)}.service-tile:hover h3{color:inherit}.service-tile:hover .service-visual:after{opacity:.4}.service-tile:hover img{transform:scale(1.035)}}
.coverage.container{width:min(1440px,calc(100% - 80px))}.coverage{display:grid;grid-template-columns:360px minmax(0,1fr);gap:36px;align-items:center}.coverage-copy{min-width:0}.coverage-copy h2{margin:0 0 18px}.coverage-copy>p:not(.eyebrow){max-width:370px}.coverage-map{min-width:0;width:100%;padding:8px 0;background:var(--paper)}.map-canvas{position:relative;width:100%}.map-canvas>img{width:100%;height:auto}.map-label{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);font-size:clamp(.625rem,1.25vw,.875rem);font-weight:600;letter-spacing:.07em;text-transform:uppercase;line-height:1.5;color:var(--red);white-space:nowrap;background:none;padding:0}

.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;padding-block:28px}.project figure{width:100%}.project figure img{width:100%;height:auto;max-height:280px;aspect-ratio:1672/941;object-fit:contain;border-radius:3px}.project h2{font-size:var(--h2);color:inherit;margin-bottom:16px}.project-copy>p:last-child{max-width:490px}
.workflow{border-bottom:1px solid var(--line)}.workflow-heading{margin-bottom:32px}.workflow-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;list-style:none;margin:0;padding:0}.process-flow li{position:relative;min-width:0;text-align:center}.flow-icon{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 18px;border:1px solid #cda7a1;border-radius:50%;background:#f0e2dc;color:var(--red)}.flow-icon svg{width:28px;height:28px}.flow-copy h3{font-size:var(--h3);margin-bottom:8px}.flow-copy p{max-width:250px;margin-inline:auto}.flow-connector{position:absolute;top:23px;left:calc(50% + 36px);width:calc(100% - 40px);height:10px;color:#aa756d;pointer-events:none}.flow-connector svg{width:100%;height:10px;display:block;overflow:visible}
.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:64px}.contact h2{margin-bottom:18px}.contact>div>p:not(.eyebrow){max-width:410px}.inquiry-form{min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.field label{font-size:var(--label);font-weight:600}.field input,.field textarea{width:100%;min-width:0;padding:12px 14px;border:1px solid #b9a89c;border-radius:3px;background:var(--surface);color:var(--text);font:inherit;line-height:1.5}.field textarea{resize:vertical;min-height:120px}.field input:focus,.field textarea:focus{outline:2px solid var(--red);outline-offset:2px}.field textarea::placeholder{color:#71665e}.inquiry-form>.button{cursor:pointer}.inquiry-form>.button:disabled{opacity:.65;cursor:wait}.form-status{margin-top:14px;color:var(--red);overflow-wrap:anywhere}.form-status:empty{display:none}.direct-email,.form-note{font-size:var(--label);margin-top:16px}.direct-email a{color:var(--red);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.footer-inner{padding-block:18px;text-align:center}.footer p{font-size:var(--label)}
@media(max-width:1050px){.container{width:calc(100% - 56px)}.header-inner{gap:24px}.logo{width:205px}nav{gap:16px}.hero-grid{gap:32px}.about,.contact{column-gap:40px}.coverage.container{width:calc(100% - 56px)}.coverage{gap:24px;grid-template-columns:280px minmax(0,1fr)}.service-gallery{gap:16px}}
@media(max-width:900px){.header-inner{min-height:76px;flex-wrap:wrap;padding-block:14px;gap:0}.logo{width:195px}nav{width:100%;flex-wrap:wrap;gap:10px 18px;padding-block:16px}.navigation-ready .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;align-items:center;width:44px;height:44px;padding:10px;border:1px solid #ffffff55;border-radius:4px;background:transparent;color:inherit;cursor:pointer}.menu-toggle span{display:block;width:20px;height:1.5px;background:currentColor;transition:transform .2s}.menu-open .menu-toggle span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.navigation-ready nav{display:none;position:absolute;top:100%;left:-28px;width:calc(100% + 56px);padding:12px 28px 24px;background:var(--red);border-top:1px solid #ffffff25;box-shadow:0 12px 18px #42131525;max-height:calc(100dvh - 76px);overflow-y:auto}.navigation-ready .menu-open nav{display:flex;flex-direction:column;align-items:stretch;gap:0}nav a{padding:12px 0;min-height:46px}nav .nav-contact{margin-top:8px;justify-content:space-between}.header-inner{border-bottom:0}.workflow-steps{grid-template-columns:1fr;gap:0}.process-flow li{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:20px;text-align:left;padding-bottom:28px}.process-flow li:last-child{padding-bottom:0}.flow-icon{margin:0;grid-column:1;grid-row:1}.flow-copy{grid-column:2;grid-row:1;padding-top:3px}.flow-copy h3{margin-bottom:4px}.flow-copy p{max-width:560px;margin:0}.flow-connector{top:64px;bottom:8px;left:27px;width:1px;height:auto;background:#aa756d}.flow-connector:after{content:"";position:absolute;bottom:0;left:-3px;width:7px;height:7px;border-right:1px solid #aa756d;border-bottom:1px solid #aa756d;transform:rotate(45deg)}.flow-connector svg{display:none}}
@media(max-width:800px){.coverage{grid-template-columns:1fr;gap:24px}.coverage-copy>p:not(.eyebrow){max-width:560px}.coverage-map{max-width:none;margin-inline:auto}.section{padding-block:48px}.hero-grid{grid-template-columns:1fr;padding-block:36px;gap:28px}.hero-image{height:300px}.hero-copy>p:not(.eyebrow){max-width:600px}.corporate-summary{grid-template-columns:1fr;gap:16px}.corporate-summary>div{border:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}.corporate-summary p{margin:0}.about{grid-template-columns:1fr;gap:24px}.purpose-block{grid-template-columns:1fr 1fr}.vision-panel,.mission-panel{padding:24px}.services-heading{display:block}.services-heading>p{margin-top:14px;max-width:600px}.project-grid{grid-template-columns:1fr;gap:22px}.project figure,.project-copy{max-width:560px;margin-inline:auto;width:100%}.project figure img{max-height:260px}.contact{grid-template-columns:1fr;gap:28px}.contact>div>p:not(.eyebrow){max-width:600px}}
@media(max-width:650px){.coverage-copy>p:not(.eyebrow){max-width:none}.coverage-map{padding:0}.map-label{font-size:clamp(.6875rem,2.5vw,.875rem);letter-spacing:.035em}.service-gallery,.purpose-block{grid-template-columns:1fr}.service-gallery{gap:20px}.service-tile-copy{padding:22px}.service-visual{aspect-ratio:3/2}.hero-image{height:260px}}
@media(max-width:480px){.coverage.container{width:calc(100% - 32px)}.navigation-ready nav{left:-20px;width:calc(100% + 40px);padding-inline:20px}.logo{width:185px}.header-inner{min-height:72px}.container{width:calc(100% - 40px)}.hero-image{height:230px}.corporate-summary>div{grid-template-columns:1fr;gap:4px}.corporate-summary>div+div{border-top:1px solid #ffffff25;padding-top:16px}.vision-panel,.mission-panel{padding:22px}.form-row{grid-template-columns:1fr;gap:0}.project figure img{max-height:220px}.actions{gap:10px}.button{padding:12px 16px;gap:14px}nav .nav-contact{padding:12px 14px}}
/* Phone layouts: compact navigation, editorial service rows and touch-sized forms. */
@media(max-width:650px){
  :root{--h1:clamp(1.75rem,7.6vw,2.5rem);--h2:clamp(1.5rem,6.3vw,1.875rem);--h3:1.0625rem;--label:.8125rem}
  body{line-height:1.65}
  .container,.coverage.container{width:calc(100% - 40px)}
  .section{padding-block:44px}
  .eyebrow{letter-spacing:.09em;margin-bottom:10px}
  .header-inner{min-height:72px;padding-block:12px}
  .logo{width:185px;max-width:calc(100% - 64px)}
  .navigation-ready .menu-toggle{border-color:#ffffff40;border-radius:6px}
  .navigation-ready nav{left:-20px;width:calc(100% + 40px);padding:8px 20px 20px}
  nav a{font-size:16px;min-height:52px;border-bottom:1px solid #ffffff20}
  nav .nav-contact{margin-top:12px;padding:12px 16px;min-height:52px;background:var(--surface);color:var(--red);border:0}
  .hero-grid{padding-block:26px 24px;gap:24px}
  .hero-copy>.eyebrow{display:none}
  .hero h1{line-height:1.18;letter-spacing:-.035em;margin-bottom:18px}
  .hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.65}
  .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}
  .actions .button{padding:12px 8px;min-height:50px;gap:8px;font-size:13px;white-space:nowrap;border-radius:6px}
  .hero-image{height:auto;aspect-ratio:16/9;border-radius:8px}
  .hero-image img{object-position:center}
  .corporate-summary{grid-template-columns:1fr 1fr;gap:0;padding-block:0 24px}
  .corporate-summary>div{display:block;border:0;padding:18px 14px 0 0}
  .corporate-summary>div+div{border-top:0}
  .corporate-summary>div:first-child{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid #ffffff25}
  .corporate-summary>div:last-child{padding-left:16px;padding-right:0;border-left:1px solid #ffffff25;margin-top:18px;padding-top:0}
  .corporate-summary strong,.corporate-summary strong span{font-size:14px;line-height:1.45;display:block}
  .corporate-summary>div:first-child strong{font-size:30px;white-space:nowrap;letter-spacing:-.04em}
  .corporate-summary>div:first-child strong span{display:inline;font-size:16px;letter-spacing:0}
  .corporate-summary p{font-size:12px;line-height:1.6;margin-top:6px}
  .corporate-summary>div:first-child p{margin:0;max-width:170px;font-size:13px}
  .about{gap:22px}.about-body p+p{margin-top:12px}
  .purpose-block{border-radius:8px}.vision-panel,.mission-panel{padding:22px}
  .purpose-block h3{margin-bottom:10px}.mission-panel li+li{margin-top:10px}
  .section-intro{margin-bottom:24px}.services-heading>p{margin-top:12px}
  .service-gallery{gap:12px}
  .service-tile{display:grid;grid-template-columns:40% minmax(0,1fr);border-radius:8px}
  .service-visual{aspect-ratio:auto;min-height:158px;height:100%}
  .service-tile-copy{padding:18px 16px;border-top:0;display:flex;flex-direction:column;justify-content:center}
  .service-title-row{margin-bottom:8px}.service-tile-copy h3{font-size:17px}
  .service-tile-copy p{font-size:14px;line-height:1.6}
  .service-tile-international img{object-position:48% center}
  .service-tile-domestic img{object-position:45% center}
  .coverage{gap:28px}.coverage-copy h2{margin-bottom:14px}
  .coverage-map{width:calc(100% + 16px);margin-left:-8px;padding:8px 0 12px}
  .map-label{font-size:clamp(9px,2.65vw,13px);letter-spacing:0;line-height:1.2}
  .project-grid{padding-block:24px 30px;gap:24px}
  .project figure img{max-height:none;border-radius:8px}
  .project h2{margin-bottom:12px}
  .workflow-heading{margin-bottom:26px}
  .process-flow li{grid-template-columns:44px minmax(0,1fr);column-gap:16px;padding-bottom:24px}
  .flow-icon{width:44px;height:44px}.flow-icon svg{width:23px;height:23px}
  .flow-copy{padding-top:0}.flow-copy p{font-size:15px}
  .flow-connector{top:52px;left:21px;bottom:8px}
  .contact{gap:24px}.contact h2{margin-bottom:14px}
  .inquiry-form{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:10px}
  .form-row{grid-template-columns:1fr;gap:0}
  .field{gap:7px;margin-bottom:18px}.field label{font-size:14px}
  .field input,.field textarea{font-size:16px;min-height:52px;border-radius:5px;background:var(--paper)}
  .field textarea{min-height:136px}
  .inquiry-form>.button{width:100%;min-height:52px;border-radius:5px;font-size:15px;justify-content:space-between}
  .direct-email{font-size:13px;line-height:1.7;text-align:center}.direct-email a{display:block;padding:6px 0;min-height:36px}
  .footer-inner{padding-block:20px max(20px,env(safe-area-inset-bottom))}.footer p{font-size:12px}
}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.service-tile:hover img{transform:none}}

/* Lightweight route motion; a static map remains available without JavaScript. */
.coverage-map{position:relative}.network-motion{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;display:none}.coverage-map[data-motion-ready] .network-motion{display:block}.network-clear{stroke:var(--paper);stroke-width:4.5}.network-dots{stroke:var(--red);stroke-width:2.5;stroke-dasharray:1 6;animation:network-flow 2.8s linear infinite}.network-traveller{stroke:var(--red-dark);stroke-width:6;stroke-dasharray:.1 99.9;animation:network-travel var(--duration) linear var(--delay) infinite}.coverage-map[data-motion="paused"] .network-dots,.coverage-map[data-motion="paused"] .network-traveller{animation-play-state:paused}@keyframes network-flow{to{stroke-dashoffset:-14}}@keyframes network-travel{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.network-dots,.network-traveller{animation:none!important}.network-travellers{display:none}}
