/* =====================================================================
   S. K. Agency, Round 32 layer: type, spacing, quiet motion.
   Loaded AFTER r31.css. r31.css is never edited; everything here overrides it.
   Type: one modular clamp scale (360 to 1200px), tracking tightens with size,
   one 12px caps label voice, numerals set by role. Open Sans 400/600/700 only.
   Spacing: 4px rhythm tokens for sections, heads, grids, cards, prose, footer.
   Motion: opacity plus the individual translate and scale properties only
   (never the transform shorthand, so r31 transform:none!important rules stay
   intact). Reveals exist only under html.r32-js, which r32.js adds after it has
   confirmed IntersectionObserver and no reduced-motion preference, and only on
   elements that were below the fold at load. Scroll-driven image motion sits
   inside @supports and starts at the identity frame (LCP unchanged).
   No immersive patterns (Round 18): no pinning, snapping, count-up or loops.
   ===================================================================== */

:root{
  /* Type scale: linear clamp from 360px to 1200px, whole pixels at both ends */
  --fs-display:clamp(33px,2.26vw + 24.86px,52px);
  --fs-h1:clamp(26px,1.9vw + 19.14px,42px);
  --fs-h2-section:clamp(27px,1.07vw + 23.14px,36px);
  --fs-h2:clamp(23px,.83vw + 20px,30px);
  --fs-h3:clamp(19px,.24vw + 18.14px,21px);
  --fs-stat:clamp(34px,1.67vw + 28px,48px);
  --fs-fig:clamp(19px,.36vw + 17.71px,22px);
  --fs-intro:clamp(19px,.36vw + 17.71px,22px);
  --fs-lead:clamp(18px,.24vw + 17.14px,20px);
  --fs-body:clamp(16px,.12vw + 15.57px,17px);
  --fs-data:15px;--fs-small:14px;--fs-micro:13px;--fs-label:12px;
  --lh-body:1.7;--measure:68ch;
  --tr-display:-.026em;--tr-h1:-.022em;--tr-h2s:-.02em;--tr-h2:-.015em;--tr-h3:-.008em;--tr-label:.09em;
  /* Spacing: 4px base */
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s7:32px;--s8:40px;--s9:48px;--s10:56px;--s11:64px;--s12:80px;--s13:96px;
  --section-y:clamp(56px,4.76vw + 38.86px,96px);
  --band-gap:clamp(40px,2.86vw + 29.71px,64px);
  --head-gap:clamp(28px,2.38vw + 19.43px,48px);
  --grid-gap:clamp(12px,1.43vw + 6.86px,24px);
  --card-pad:clamp(20px,.48vw + 18.29px,24px);
  --h2-above:clamp(40px,1.9vw + 33.14px,56px);
  /* Motion: one easing (same curve as r31 --ease) */
  --ease-out:cubic-bezier(.2,.7,.2,1);
  --d-ui:200ms;--d-reveal:560ms;--d-reveal-lg:640ms;
}
@media (max-width:767.98px){:root{--lh-body:1.65}}

/* ---------- Type: global ---------- */
html{font-synthesis-weight:none}
body{font-kerning:normal}

/* Display and headings */
.r31-hero h1{font:700 var(--fs-display)/1.06 var(--f);letter-spacing:var(--tr-display);margin:0 0 var(--s5)}
.breadcum h1{font:700 var(--fs-h1)/1.1 var(--f);letter-spacing:var(--tr-h1)}
.main .expertise h2.title,.main .expertise h1.title,.sk-agency h2.title,.r31-reviews h2,.affiliation h2.title{
  font:700 var(--fs-h2-section)/1.14 var(--f);letter-spacing:var(--tr-h2s);color:var(--sk-ink)}
.r31-prose > h2,.disclaimer-content h2.f-sm-bold,.privacy-content h2,.overview h2.f-sm-bold,
.services [data-sk="svc"],.container-dimnsn h2,.container-dimnsn .title{
  font-size:var(--fs-h2)!important;line-height:1.2!important;letter-spacing:var(--tr-h2)!important}
.r31-prose h3,.privacy-content h3.sk-h3-policy{font:700 var(--fs-h3)/1.3 var(--f)!important;letter-spacing:var(--tr-h3)}
.services [data-sk="svc-first"]{font:600 var(--fs-h3)/1.4 var(--f)!important;letter-spacing:var(--tr-h3)}
.contact .get-in-touch h2{font:700 var(--fs-h2)/1.2 var(--f);letter-spacing:var(--tr-h2)}
.container-dimnsn .comparisonTable strong{font:700 var(--fs-h3)/1.3 var(--f)!important;letter-spacing:var(--tr-h3)}

/* Lead and reading text */
.r31-hero__lead{font:400 var(--fs-lead)/1.55 var(--f);letter-spacing:-.003em;margin:0 0 var(--s7)}
.sk-agency .sk-intro{font:600 var(--fs-intro)/1.45 var(--f)!important;letter-spacing:-.005em}
.r31-prose p,.r31-prose li,.privacy-content p,.overview p,.sk-agency .info-box p,
.services .card-body p,.services .card-body li{font-weight:400;font-size:var(--fs-body);line-height:var(--lh-body)}
.main .expertise .sub-title,.affiliation .sub-title,.affiliation .sk-subtitle,.r31-reviews__sum{
  font-weight:400!important;font-size:var(--fs-body)!important;line-height:1.6!important;max-width:58ch;text-wrap:balance}
.r31-prose{overflow-wrap:break-word}
.r31-prose blockquote{font:400 var(--fs-body)/1.65 var(--f)}

/* Figures */
.couting .count-box .sk-stat{font:700 var(--fs-stat)/1 var(--f);letter-spacing:-.03em}
.couting .count-box .plus{font-size:calc(var(--fs-stat) * .62)}
.r31-proof b{font:700 var(--fs-fig)/1.2 var(--f);letter-spacing:-.012em}
.r31-proof span,.r31-review figcaption,.r31-lane-n,.r31-talk-hours,.r31-talk-addr{font-size:var(--fs-small);letter-spacing:.003em}
.r31-talk-phone{font-size:clamp(22px,.24vw + 21.14px,24px)}

/* Card and tile titles */
.expertise .wrapp .caption p{font:700 clamp(16px,.24vw + 15.14px,18px)/1.35 var(--f)!important;letter-spacing:-.005em}
.r31-lane-v{font:700 clamp(17px,.12vw + 16.57px,18px)/1.35 var(--f)}
.address .address_top h2{font:700 17px/1.35 var(--f)!important;letter-spacing:-.003em}

/* Numerals by role. Kept after every font shorthand above (and in r31), because
   the shorthand resets font-variant-numeric to normal. */
.couting .count-box .sk-stat,.r31-proof b{font-variant-numeric:lining-nums proportional-nums}
.r31-strip-hours,header .hdr-value,header a.hdr-value,.r31-lane-v,.r31-foot-reg li,.r31-reg dd,.r31-talk-phone{font-variant-numeric:tabular-nums lining-nums}

/* One label voice: 12px, 700, caps, +.09em */
.r31-label,.r31-reg dt,.r31-lane-t,.sk-loc-facts b,.services .right_service h2,.r31-table-wrap th{
  font-size:var(--fs-label)!important;font-weight:700!important;line-height:1.3!important;letter-spacing:var(--tr-label)!important;text-transform:uppercase}
footer .column h2{font:700 var(--fs-label)/1.3 var(--f)!important;letter-spacing:var(--tr-label)}
@media (min-width:768px){.hdr-label{letter-spacing:var(--tr-label)}}

/* Header contact values: legacy bundle sets line-height:.2 on these links, which made them overlap their labels */
.main-header .contact-info ul li .hdr-value{line-height:1.3}

/* Small print */
.r31-foot-reg li,footer .btm-strip p,footer .btm-strip a,body .sk-groupbar p{font-size:var(--fs-micro);letter-spacing:.005em}
/* Running text never below 16px on phones (r31 sets 15px!important on these) */
@media (max-width:767.98px){.team_intro p{font-size:16px!important;line-height:1.65!important}}
@media (max-width:767.98px){footer .footer p,.address .address_body .address_main,.address .address_body .address_main a{font-size:16px!important;line-height:1.6!important}}

/* Links: underline always kept; colour fade only */
.r31-prose a:not(.r31-btn):not(.btn):not(.p):not(.s){text-underline-offset:.18em;text-decoration-skip-ink:auto;
  transition:color var(--d-ui) var(--ease-out),text-decoration-color var(--d-ui) var(--ease-out)}
.sk-agency .info-box p a:not(.btn):not(.r31-btn),.overview p a:not(.btn):not(.r31-btn),.services .card-body p a:not(.btn):not(.r31-btn){
  color:var(--sk-teal);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;text-decoration-skip-ink:auto;
  text-decoration-color:rgba(0,103,104,.4);transition:color var(--d-ui) var(--ease-out),text-decoration-color var(--d-ui) var(--ease-out)}
.sk-agency .info-box p a:not(.btn):not(.r31-btn):hover,.overview p a:not(.btn):not(.r31-btn):hover,.services .card-body p a:not(.btn):not(.r31-btn):hover{
  color:var(--sk-teal-dark);text-decoration-color:currentColor}

/* Review quotes: every quote opens with a curly mark (transform adds &ldquo;), hang it */
.r31-review blockquote{text-indent:-.42em}

/* ---------- Spacing ---------- */
/* Gutters: one 16px value below 768, the same as r31's hero and proof card
   (header excluded so the logo and burger do not move) */
@media (max-width:767.98px){.container:not(header .container){padding-left:16px;padding-right:16px}}

/* Homepage sections */
.expertise,.sk-agency,.r31-reviews,.affiliation{padding-top:var(--section-y);padding-bottom:var(--section-y)}
.main .couting{padding:calc(var(--section-y) * .75) 0}
.main .expertise h2.title,.r31-reviews h2,.affiliation h2.title{margin:0}
.main .expertise .sub-title,.affiliation .sub-title,.affiliation .sk-subtitle{margin:var(--s3) auto var(--head-gap)!important}
.r31-reviews__sum{margin:var(--s3) auto var(--head-gap)}
.sk-agency > h2.title{margin:0 0 var(--head-gap)}
.r31-tiles,.r31-reviews__grid,.r31-lanes{gap:var(--grid-gap)}
@media (min-width:992px){.r31-tiles > :last-child:nth-child(3n+1) .img-box{flex-basis:calc((100% - 2 * var(--grid-gap)) / 3 + 1px)}}
.r31-review{padding:var(--card-pad);gap:var(--s3)}
@media (min-width:992px){.r31-review{padding:var(--s7)}}
.r31-reviews__more{margin-top:var(--s7)}
.r31-proof a{padding:var(--s5) var(--s6)}
@media (max-width:767.98px){.r31-proof a{padding:var(--s4) var(--s3)}.affiliation .container{gap:var(--s3)}}

/* Title band and band-to-content */
.breadcum .breadcum_container{gap:var(--s3);padding-top:var(--s7);padding-bottom:var(--s8)}
@media (max-width:767.98px){.breadcum .breadcum_container{gap:var(--s2);padding-top:var(--s6);padding-bottom:28px}}
.disclaimer-content,.privacy-content{padding:var(--band-gap) 0 var(--section-y)}
.overview{padding:var(--band-gap) 0 var(--s6)}
.services{padding:var(--band-gap) 0 var(--section-y)}
.r31-fastlane{padding-top:var(--band-gap)}

/* Prose rhythm: paragraph gap = .75 of a body line */
.r31-prose p{margin:0 0 calc(var(--fs-body) * var(--lh-body) * .75)}
.r31-prose > h2,.disclaimer-content h2.f-sm-bold{margin:var(--h2-above) 0 var(--s4)}
.r31-prose h3{margin:var(--s7) 0 var(--s2)}
.privacy-content h3.sk-h3-policy{margin:var(--s7) 0 var(--s2)!important}
.r31-prose > h2 + h3{margin-top:var(--s4)}
.r31-prose ul,.r31-prose ol{margin:0 0 var(--s6)}
.r31-prose li{margin-bottom:var(--s2)}
.r31-prose blockquote{margin:var(--s7) 0!important}
.r31-table-wrap{margin-bottom:var(--s7)}
@media (max-width:767.98px){
  .r31-prose > h2,.disclaimer-content h2.f-sm-bold{margin-bottom:var(--s3)}
  .r31-table-wrap{margin-bottom:var(--s6)}
}

/* Rail */
.r31-rail{gap:var(--s5)}
.r31-card{padding:var(--card-pad)}
@media (max-width:991.98px){.r31-rail{margin-top:var(--s9);gap:var(--s3)}}

/* Footer */
footer .footer{padding:var(--s11) 0 var(--s8)}
.r31-foot-reg{margin-top:var(--s6)}
footer .btm-strip,body .sk-groupbar{padding:var(--s4) 0}
@media (max-width:575.98px){footer .footer{padding:var(--s9) 0 var(--s7)}}

/* ---------- Motion ---------- */
/* Reveals: hidden state needs html.r32-js AND motion allowed (CSS alone never hides) */
@media (prefers-reduced-motion:no-preference){
  html.r32-js [data-r32]{transition:opacity var(--d-reveal) var(--ease-out) var(--r32-d,0ms),translate var(--d-reveal) var(--ease-out) var(--r32-d,0ms)}
  html.r32-js [data-r32]:not(.r32-in){opacity:0;translate:0 var(--r32-y,16px)}
  html.r32-js .r31-tiles > [data-r32]{--r32-y:20px;transition-duration:var(--d-reveal-lg)}
  html.r32-js :is(h2,.sub-title,.sk-subtitle,.r31-reviews__sum,.r31-reviews__more)[data-r32],
  html.r32-js .couting [data-r32]{--r32-y:12px}
  html.r32-js .affiliation .image_item[data-r32]{--r32-y:0px}
  html.r32-js [data-r32].r32-now{transition:none}
}
html.r32-done [data-r32]{opacity:1!important;translate:none!important;transition:none!important}

/* Scroll-driven image motion: progressive, static r31 image without support.
   Hero and band start at scale 1 and grow only while leaving (exit range), so the
   first frame and LCP match r31. FTWZ band keeps its r31 scale(1.05) untouched.
   view() binds to the nearest scroll container, and overflow:hidden makes one, so
   the clipping boxes switch to overflow:clip (same clip, not a scroller) and the
   timelines track the page. view(block 0px) ignores html scroll-padding, so the
   range does not shift with --hdr-live and scroll 0 is the identity frame. */
@supports (animation-timeline:view()) and (scale:1){
  .r31-hero,.breadcum,.breadcum .parallax-container,.expertise .wrapp,.expertise .img-box{overflow:clip}
  @media (prefers-reduced-motion:no-preference){
    .r31-hero__img{transform-origin:70% 100%;animation:r32-grow linear both;animation-timeline:view(block 0px);animation-range:exit 0% exit 100%}
    body:not(.r31-page-free-trade-warehousing-zone-ftwz) .breadcum img{transform-origin:50% 100%;
      animation:r32-grow linear both;animation-timeline:view(block 0px);animation-range:exit 0% exit 100%}
    .expertise .wrapp img{animation:r32-settle linear both;animation-timeline:view(block 0px);animation-range:entry 0% cover 40%}
  }
}
@keyframes r32-grow{from{scale:1}to{scale:1.05}}
@keyframes r32-settle{from{scale:1.05}to{scale:1}}

/* Header compaction: legacy .shrink geometry kept; the soft shadow becomes an
   opacity-faded layer. r32.js toggles header.r32-scrolled with hysteresis. */
header::after{content:"";position:absolute;left:0;right:0;top:100%;height:14px;pointer-events:none;
  background:linear-gradient(rgba(2,32,33,.10),rgba(2,32,33,0));opacity:0;transition:opacity var(--d-ui) var(--ease-out)}
header.r32-scrolled::after{opacity:1}
@media (min-width:768px){header.shrink{box-shadow:0 1px 0 var(--sk-line)}}

/* Reading progress: long .r31-prose pages only, a 2px line just under the header,
   clear of the nav row's active and hover underline. Teal on the white page (6.4:1);
   the fill stays at 0 until the title band has scrolled away. */
.r32-progress{position:absolute;left:0;right:0;top:100%;height:2px;z-index:3;pointer-events:none}
.r32-progress[hidden]{display:none}
.r32-progress span{display:block;height:100%;background:var(--sk-teal);transform:scaleX(0);transform-origin:0 50%}

/* Talk card lifts once the register has scrolled past (desktop, sticky case only) */
@media (min-width:992px) and (min-height:761px){
  .r31-rail > .r31-talk::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:var(--sh-float);
    opacity:0;pointer-events:none;transition:opacity 250ms var(--ease-out)}
  .r31-rail > .r31-talk.r32-stuck::after{opacity:1}
}

/* Desktop dropdown entrance: works for .show (display toggle); closing is instant */
@media (min-width:768px) and (prefers-reduced-motion:no-preference){
  header .navbar-nav .dropdown-menu{transition:opacity 180ms var(--ease-out),translate 180ms var(--ease-out)}
  @starting-style{header .navbar-nav .dropdown-menu{opacity:0;translate:0 -6px}}
}

/* Arrow nudge on hover or keyboard focus */
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .r31-more::after,.expertise .wrapp .btn::after{display:inline-block;transition:translate var(--d-ui) var(--ease-out)}
  .r31-more:hover::after,.r31-more:focus-visible::after,
  .expertise a:hover .wrapp .btn::after,.expertise a:focus-visible .wrapp .btn::after{translate:3px 0}
}

/* ---------- Kill switches ---------- */
@media (prefers-reduced-motion:reduce){
  html [data-r32]{opacity:1!important;translate:none!important;transition:none!important}
  .r31-hero__img,.breadcum img,.expertise .wrapp img,header .navbar-nav .dropdown-menu{animation:none!important;scale:none!important}
  .r31-more::after,.expertise .wrapp .btn::after{translate:none!important}
  header::after,.r31-rail > .r31-talk::after{transition:none!important}
}
@media print{
  html [data-r32],html.r32-js [data-r32]{opacity:1!important;translate:none!important;transition:none!important}
  .r32-progress,header::after,.r31-rail > .r31-talk::after{display:none!important}
  .r31-hero__img,.breadcum img,.expertise .wrapp img{animation:none!important;scale:none!important}
}

/* ---------- Careers apply form (career.php), rebuilt 3 Nov 2026 ----------
   Stock image column replaced by a deep-teal panel (markup in career.php);
   same card language as the contact form. Labels and validation JS untouched. */
.apply_form{padding:var(--section-y) 0;background:var(--sk-paper);box-shadow:none!important}
.apply_form > .container > h2.f-sm-bold{font:700 var(--fs-h2-section)/1.14 var(--f)!important;letter-spacing:var(--tr-h2s);color:var(--sk-ink)!important;margin:0 0 var(--head-gap)!important;padding:0!important;text-align:left}
.apply_form .form_div{background:#fff;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg);overflow:hidden;box-shadow:0 1px 2px rgba(2,32,33,.04),0 12px 32px rgba(2,32,33,.06)!important;padding:0!important}
.apply_form > .container{box-shadow:none!important;background:transparent!important}
.apply_form .form_div > .row{margin:0}
.apply_form .form_div > .row > [class*="col-"]{padding:0}
.sk-apply-panel{background:var(--sk-teal-deep);color:var(--sk-on-dark);padding:var(--s8) var(--s7)!important;display:flex;flex-direction:column;gap:var(--s5)}
.sk-apply-panel .r31-label{color:var(--sk-on-dark-accent);margin:0}
.sk-apply-roles{list-style:none;margin:0;padding:0}
.sk-apply-roles li{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s3) 0;border-top:1px solid var(--sk-line-dark);font:600 var(--fs-body)/1.45 var(--f);color:#fff}
.sk-apply-roles li:last-child{border-bottom:1px solid var(--sk-line-dark)}
.sk-apply-roles li::before{content:"";flex:none;width:6px;height:6px;margin-top:.6em;border-radius:50%;background:var(--sk-on-dark-accent)}
.sk-apply-panel .sk-apply-note{margin:auto 0 0;font-size:var(--fs-small);line-height:1.6;color:var(--sk-on-dark)}
.sk-apply-panel .sk-apply-note a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:.18em;text-decoration-color:rgba(255,255,255,.5)}
.sk-apply-panel .sk-apply-note a:hover{text-decoration-color:#fff}
.sk-apply-panel a:focus-visible{outline:3px solid #fff;outline-offset:3px}
.apply_form .form_section{padding:var(--s8) var(--s7)!important}
.apply_form .sk-form-note{font-size:var(--fs-body)!important;line-height:1.6!important;color:var(--sk-body)!important;margin:0 0 var(--s4)!important}
.apply_form .req{color:var(--sk-error)}
.apply_form label.hide_label1:not(.hide_label){position:static;display:block;margin:0 0 var(--s2);font:600 var(--fs-small)/1.3 var(--f);color:var(--sk-ink)}
.apply_form #cf-resume{display:block;width:100%;height:auto!important;padding:var(--s4)!important;background:var(--sk-paper)!important;border:1.5px dashed #9fb0b0!important;border-radius:var(--sk-r-card)!important;box-shadow:none!important;font:400 15px/1.4 var(--f);color:var(--sk-muted);cursor:pointer;transition:border-color var(--d-ui) var(--ease-out),background-color var(--d-ui) var(--ease-out)}
.apply_form #cf-resume:hover{border-color:var(--sk-teal)!important;background:var(--sk-tint)!important}
.apply_form #cf-resume:focus-visible{outline:3px solid var(--sk-teal-bright);outline-offset:2px}
.apply_form #cf-resume::file-selector-button{font:600 15px/1 var(--f);color:var(--sk-teal);background:#fff;border:1.5px solid var(--sk-teal);border-radius:var(--sk-r-ctl);padding:11px 18px;margin-right:var(--s4);cursor:pointer;transition:background-color var(--d-ui) var(--ease-out),color var(--d-ui) var(--ease-out)}
.apply_form #cf-resume:hover::file-selector-button{background:var(--sk-teal);color:#fff}
.apply_form .sk-hint{display:block;margin-top:var(--s2);font-size:var(--fs-small)!important;line-height:1.4;color:var(--sk-muted)!important}
.apply_form .form-group:has(.g-recaptcha){display:flex;flex-wrap:wrap;align-items:center;gap:var(--s4);margin:var(--s6) 0 0;clear:both}
.apply_form .form-group:has(.g-recaptcha) .g-recaptcha,.apply_form .form-group:has(.g-recaptcha) .submit_btn{float:none!important;margin:0!important}
.apply_form .form-group:has(.g-recaptcha) .submit_btn{min-height:52px;padding:0 28px;font-size:16px}
.apply_form .form-group:has(.g-recaptcha) .sk-cap-err{flex-basis:100%;margin:0}
@media (max-width:767.98px){
  .sk-apply-panel{order:2;padding:var(--s7) var(--s5)!important}
  .apply_form .form_section{padding:var(--s7) var(--s5)!important}
  .apply_form .form-group:has(.g-recaptcha) .submit_btn{width:100%;justify-content:center}
}

/* =====================================================================
   Round 33 (3 Nov 2026): legacy components found in the screenshot pass,
   brought into the Round 31/32 card language.
   ===================================================================== */

/* About: credentials + call rail replaces the sticky logo artwork (transform) */
.overview .row > .r33-about-rail{position:static!important;top:auto!important}
@media (min-width:992px){
  .overview .row{display:grid;grid-template-columns:minmax(0,1fr) 280px;column-gap:48px;align-items:stretch;margin:0}
  .overview .row > [class*="col-"]{max-width:none;flex:none;width:auto;padding:0}
  .overview_left > *{max-width:var(--measure)}
  .r33-about-rail .r31-rail{height:100%}
}
@media (min-width:1200px){.overview .row{grid-template-columns:minmax(0,1fr) 320px;column-gap:72px}}
@media (max-width:991.98px){.overview .row > .r33-about-rail{flex:0 0 100%;max-width:100%}}

/* About: certificates as a static logo grid (was an arrow carousel over a photo) */
.r33-certs{padding:var(--section-y) 0;background:var(--sk-paper)}
.r33-certs h2{font:700 var(--fs-h2-section)/1.14 var(--f)!important;letter-spacing:var(--tr-h2s);color:var(--sk-ink)!important;text-align:center;margin:0 0 var(--head-gap)!important}
.r33-cert-grid{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--grid-gap);max-width:960px}
.r33-cert-grid li{display:grid;place-items:center;aspect-ratio:16/10;padding:var(--s5);background:#fff;border:1px solid var(--sk-line);border-radius:var(--sk-r-card)}
.r33-cert-grid img{width:100%;height:auto;max-height:100%;object-fit:contain}
@media (max-width:767.98px){.r33-cert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* About: values as four cards */
.safety_quality{padding:var(--section-y) 0}
.safety_quality h2.f-sm-bold{font:700 var(--fs-h2-section)/1.14 var(--f)!important;letter-spacing:var(--tr-h2s);color:var(--sk-ink)!important;margin:0 0 var(--head-gap)!important;padding:0!important}
.safety_quality h2::before,.safety_quality h2::after,.r33-value h3::before,.r33-value h3::after{content:none!important;display:none!important}
.r33-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--grid-gap)}
.r33-value{padding:var(--card-pad);background:#fff;border:1px solid var(--sk-line);border-top:3px solid var(--sk-teal);border-radius:var(--sk-r-card)}
.r33-value h3.sk-value{font:700 var(--fs-h3)/1.3 var(--f)!important;letter-spacing:var(--tr-h3);color:var(--sk-ink)!important;margin:0 0 var(--s3)!important;padding:0!important}
.r33-value p{font-size:var(--fs-body)!important;line-height:1.6!important;color:var(--sk-body)!important;margin:0!important;padding:0!important}
@media (max-width:991.98px){.r33-values{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:575.98px){.r33-values{grid-template-columns:1fr}}

/* Services: the tab title reads as a heading on desktop (the accordion stays on phones) */
@media (min-width:768px){
  .services .tab-pane > .card{border:0;background:none}
  .services .tab-pane .card-header{background:none!important;border:0!important;padding:0!important;margin:0 0 var(--s5)}
  .services .tab-pane .card-header .btn-link{display:block;width:100%;padding:0;font:700 var(--fs-h2)/1.2 var(--f)!important;letter-spacing:var(--tr-h2);color:var(--sk-ink)!important;text-decoration:none!important;text-align:left;white-space:normal;pointer-events:none;cursor:default;box-shadow:none!important}
  .services .tab-pane .card-header .btn-link i{display:none!important}
}

/* Our Work gallery: hover overlay instead of a stray grey square */
.image_gallery{padding:var(--s6) 0 var(--section-y)!important}
.image_gallery .row > [class*="col-"]{margin-bottom:var(--grid-gap)}
.image_gallery .img-box{position:relative;border-radius:var(--sk-r-card);overflow:hidden}
.image_gallery .img-box a{display:block;position:relative}
.image_gallery .img-box img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.image_gallery .overlay{position:absolute!important;inset:0!important;width:auto!important;height:auto!important;margin:0!important;display:grid!important;place-items:center;background:rgba(12,45,46,.45)!important;border-radius:0!important;opacity:0!important;transition:opacity var(--d-ui) var(--ease-out)}
.image_gallery a:hover .overlay,.image_gallery a:focus-visible .overlay{opacity:1!important}
.image_gallery .overlay span{opacity:1!important;color:#fff!important;font-size:28px;transform:none!important}

/* Team: bios aligned with the names, rounded photos, quieter role line */
.team_member .ig_box img{display:block;border-radius:var(--sk-r-card)}
.team_member p{padding-left:0!important;margin-left:0!important;color:var(--sk-body)}
.team_intro .bottom h3.sk-h3-role{font:600 var(--fs-small)/1.4 var(--f)!important;letter-spacing:.02em;color:var(--sk-teal)!important;margin:var(--s1) 0 var(--s4)!important;padding:0!important}

/* Tracking: carrier links as tappable chips in two cards */
.tracking{padding:var(--s6) 0 var(--section-y)!important}
.tracking .content{padding:var(--s7)!important;margin-bottom:var(--grid-gap);background:#fff;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg)}
.tracking .trk_title{margin:0 0 var(--s5)!important}
.tracking .trk_title h2{font:700 var(--fs-label)/1.3 var(--f)!important;letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--sk-teal)!important;margin:0!important}
.tracking .trk_title_line{display:none!important}
.tracking .trk_list{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--s2);margin:0!important;padding:0!important;columns:auto!important}
.tracking .trk_list li{width:auto!important;float:none!important;margin:0!important;padding:0!important}
.tracking .trk_list li::before,.tracking .trk_list a::before{content:none!important;display:none!important}
.tracking .trk_list a{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);min-height:48px;padding:var(--s3) var(--s4)!important;background:#fff;border:1px solid var(--sk-line);border-radius:var(--sk-r-ctl);font:600 15px/1.3 var(--f)!important;color:var(--sk-ink)!important;text-decoration:none!important;transition:border-color var(--d-ui) var(--ease-out),background-color var(--d-ui) var(--ease-out)}
.tracking .trk_list a::after{content:"\2197";flex:none;color:var(--sk-teal);font-weight:400}
.tracking .trk_list a:hover,.tracking .trk_list a:focus-visible{border-color:var(--sk-teal);background:var(--sk-tint)}

/* Unit converters: real inputs and buttons */
.convertions{padding:var(--s6) 0 var(--section-y)!important}
.convertions input[type="text"],.convertions select{width:100%!important;min-width:72px;height:44px!important;padding:0 10px!important;background:#fff!important;border:1px solid #9fb0b0!important;border-radius:var(--sk-r-ctl)!important;box-shadow:none!important;font:400 16px/1 var(--f)!important;color:var(--sk-ink)!important}
.convertions input[type="text"]:focus,.convertions select:focus{outline:none;border-color:var(--sk-teal)!important;box-shadow:0 0 0 3px rgba(15,132,116,.2)!important}
.convertions .buttn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px!important;margin:var(--s3) var(--s1) var(--s1)!important;background:var(--sk-teal)!important;border:1.5px solid var(--sk-teal)!important;border-radius:var(--sk-r-ctl)!important;font:600 15px/1 var(--f)!important;color:#fff!important;cursor:pointer;transition:background-color var(--d-ui) var(--ease-out),color var(--d-ui) var(--ease-out)}
.convertions input[type="reset"].buttn{background:#fff!important;color:var(--sk-teal)!important}
.convertions .buttn:hover{background:var(--sk-teal-dark)!important;border-color:var(--sk-teal-dark)!important;color:#fff!important}

/* Container dimensions: left-aligned category headings, image and title in one row */
.comparisonTable p.textR{text-align:left!important;margin:var(--s9) 0 var(--s4)!important}
.comparisonTable p.textR strong{font:700 var(--fs-h2)/1.2 var(--f)!important;letter-spacing:var(--tr-h2);text-transform:none!important;color:var(--sk-ink)!important}
.comparisonTable .tableContainer td.tdContainer{width:200px!important;padding:0 var(--s5) var(--s4) 0!important;text-align:left!important;vertical-align:middle}
.comparisonTable .tdContainer img{width:180px;height:auto;border-radius:var(--sk-r-card);background:var(--sk-paper)}
.comparisonTable .tdContainer + td{width:auto!important;text-align:left!important}
.comparisonTable .tdContainer + td b{font:700 var(--fs-h3)/1.3 var(--f)!important;color:var(--sk-ink)}

/* Downloads: three clean cards (markup rebuilt) */
.download_main{padding:var(--s6) 0 var(--section-y)!important}
.r33-dl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap);align-items:start}
.r33-dl-card{padding:var(--card-pad);background:#fff;border:1px solid var(--sk-line);border-radius:var(--sk-r-lg)}
.r33-dl-card h2{display:flex;align-items:center;gap:var(--s3);margin:0 0 var(--s3)!important;padding:0 0 var(--s4)!important;border-bottom:1px solid var(--sk-line);font:700 var(--fs-h3)/1.3 var(--f)!important;color:var(--sk-ink)!important}
.r33-dl-card h2 [class^="icon-"]{position:static!important;flex:none;display:grid;place-items:center;width:40px;height:40px;margin:0!important;background:var(--sk-tint);border-radius:10px;font-size:20px;color:var(--sk-teal)}
.r33-dl-card ul{list-style:none;margin:0;padding:0}
.r33-dl-card li{margin:0;padding:0}
.r33-dl-card li::before{content:none!important}
.r33-dl-card a{display:flex;align-items:center;gap:var(--s3);min-height:48px;padding:var(--s2) var(--s3);margin:0 calc(var(--s3) * -1);border-radius:var(--sk-r-ctl);font:600 15px/1.35 var(--f);color:var(--sk-ink)!important;text-decoration:none!important;transition:background-color var(--d-ui) var(--ease-out)}
.r33-dl-card a:hover,.r33-dl-card a:focus-visible{background:var(--sk-tint)}
.r33-dl-name{flex:1}
.r33-dl-type{flex:none;padding:4px 6px;border:1px solid var(--sk-line);border-radius:4px;font:700 11px/1 var(--f);letter-spacing:.06em;color:var(--sk-muted)}
.r33-dl-card a [class^="icon-"],.r33-dl-go{position:static!important;flex:none;font-size:16px;color:var(--sk-teal)}
@media (max-width:991.98px){.r33-dl-grid{grid-template-columns:1fr 1fr}}
@media (max-width:575.98px){.r33-dl-grid{grid-template-columns:1fr}}

/* Sitemap: four clean columns, no mixed bullets */
.sitemap-content{padding:0 0 var(--section-y)!important}
.sitemap-content .row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s7);margin:0}
.sitemap-content .row > [class*="col-"]{max-width:none;flex:none;width:auto;padding:0}
.sitemap-content ul{list-style:none!important;margin:0!important;padding:0!important}
.sitemap-content li{margin:0!important;padding:0!important;list-style:none!important}
.sitemap-content li::before{content:none!important;display:none!important}
.sitemap-content .row > div > ul > li:has(> ul){margin-bottom:var(--s6)!important;font:700 var(--fs-label)/1.3 var(--f);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--sk-teal)}
.sitemap-content li ul{margin-top:var(--s3)!important}
.sitemap-content a{display:inline-block;padding:5px 0;font:400 15px/1.4 var(--f);letter-spacing:0;text-transform:none;color:var(--sk-ink)!important;text-decoration:none}
.sitemap-content a:hover,.sitemap-content a:focus-visible{color:var(--sk-teal)!important;text-decoration:underline}
@media (max-width:767.98px){.sitemap-content .row{grid-template-columns:1fr 1fr}}

/* 404 (markup rebuilt) */
.r33-404{padding:var(--section-y) 0;text-align:center}
.r33-404-code{margin:0 0 var(--s3)!important;font:700 clamp(72px,8vw,120px)/1 var(--f);letter-spacing:-.04em;color:#cfe3e3}
.r33-404 h2{margin:0 0 var(--s3);font:700 var(--fs-h2-section)/1.14 var(--f);letter-spacing:var(--tr-h2s);color:var(--sk-ink)}
.r33-404 p:not(.r33-404-code){max-width:52ch;margin:0 auto var(--s6);font-size:var(--fs-body);line-height:1.6;color:var(--sk-body)}
.r33-404-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s3)}

/* Round 33 follow-ups: services tab title at heading size; gallery corner square and dark wash removed */
.services .card-body h2[data-sk],.services [data-sk="svc-first"]{font:700 var(--fs-h2)/1.2 var(--f)!important;letter-spacing:var(--tr-h2)!important;color:var(--sk-ink)!important;margin:0 0 var(--s5)!important}
.image_gallery .img-box::after,.image_gallery .light_img::before{content:none!important;display:none!important}
.r33-404 p.r33-404-code{font:700 clamp(72px,8vw,120px)/1 var(--f)!important;letter-spacing:-.04em!important;color:#a9cfcd!important;margin:0 0 var(--s3)!important}

/* Round 33 phone fixes: services accordion in brand teal without a repeated title; converters as label/input pairs */
@media (max-width:767.98px){
  .services .tab-pane > .card{border:0!important;background:none!important;margin-bottom:var(--s2)}
  .services .tab-pane .card-header{padding:0!important;border:0!important;background:none!important}
  .services .tab-pane .card-header .btn-link{display:flex!important;align-items:center;justify-content:space-between;gap:var(--s3);width:100%;min-height:52px;padding:var(--s3) var(--s4)!important;background:var(--sk-teal-deep)!important;border:0!important;border-radius:var(--sk-r-ctl)!important;font:600 16px/1.35 var(--f)!important;color:#fff!important;text-align:left;text-decoration:none!important;white-space:normal;box-shadow:none!important}
  .services .tab-pane .card-header .btn-link i{color:var(--sk-on-dark-accent)}
  .services .card-body h2[data-sk]{display:none!important}
  .services .tab-pane .card-body{padding:var(--s4) 0 var(--s5)!important}
  .convertions .r31-table-wrap{overflow:visible!important}
  .convertions .r31-table-wrap > table{display:block!important;width:100%!important;min-width:0!important}
  .convertions .r31-table-wrap > table > tbody{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:var(--s3);row-gap:var(--s2);align-items:center;padding:var(--s4)}
  .convertions .r31-table-wrap > table > tbody > tr{display:contents}
  .convertions .r31-table-wrap > table > tbody > tr > td{display:block;width:auto!important;padding:0!important;border:0!important;background:none!important;text-align:left!important}
  .convertions .r31-table-wrap > table > tbody > tr:first-child > td{grid-column:1/-1;order:0;padding-bottom:var(--s2)!important}
  .convertions .r31-table-wrap > table > tbody > tr:last-child > td{grid-column:1/-1;order:99}
  .convertions .r31-table-wrap > table > tbody > tr:last-child > td > div{display:flex;justify-content:center;gap:var(--s2)}
  .convertions .r31-table-wrap > table > tbody > tr:nth-child(2) > td:nth-child(1){order:2}.convertions .r31-table-wrap > table > tbody > tr:nth-child(3) > td:nth-child(1){order:3}
  .convertions .r31-table-wrap > table > tbody > tr:nth-child(2) > td:nth-child(2){order:4}.convertions .r31-table-wrap > table > tbody > tr:nth-child(3) > td:nth-child(2){order:5}
  .convertions .r31-table-wrap > table > tbody > tr:nth-child(2) > td:nth-child(3){order:6}.convertions .r31-table-wrap > table > tbody > tr:nth-child(3) > td:nth-child(3){order:7}
  .convertions .r31-table-wrap > table > tbody > tr:nth-child(2) > td:nth-child(4){order:8}.convertions .r31-table-wrap > table > tbody > tr:nth-child(3) > td:nth-child(4){order:9}
  .convertions .r31-table-wrap > table > tbody > tr:nth-child(2) > td:nth-child(5){order:10}.convertions .r31-table-wrap > table > tbody > tr:nth-child(3) > td:nth-child(5){order:11}
  .convertions .r31-table-wrap > table > tbody > tr:nth-child(2) > td:nth-child(6){order:12}.convertions .r31-table-wrap > table > tbody > tr:nth-child(3) > td:nth-child(6){order:13}
  .convertions .r31-table-wrap > table > tbody > tr:nth-child(2) > td:nth-child(7){order:14}.convertions .r31-table-wrap > table > tbody > tr:nth-child(3) > td:nth-child(7){order:15}
  .convertions .r31-table-wrap > table > tbody > tr:nth-child(2) > td:nth-child(8){order:16}.convertions .r31-table-wrap > table > tbody > tr:nth-child(3) > td:nth-child(8){order:17}
}
/* Round 34: phone screenshot pass (3 Nov 2026) */
/* Inline phone links inside sentences stay inline (legacy mobile rule made them padded blocks) */
p a[href^="tel:"]:not([class]),li a[href^="tel:"]:not([class]){display:inline!important;padding:0!important}
/* Tracking and converter sections no longer stack their top spacing onto the intro above */
.disclaimer-content + .tracking,.disclaimer-content + .convertions{margin-top:0!important;padding-top:0!important}
.team_intro p{color:var(--sk-body)!important}
/* Contact office cards: one icon per row, aligned to the text */
.address .address_body{display:grid!important;grid-template-columns:20px minmax(0,1fr);column-gap:var(--s3);row-gap:var(--s4);align-items:start}
.address .address_body > .clear,.address .address_body > .icon1,.address .address_body > img{display:none!important}
.address .address_body > .icon{grid-column:1;float:none!important;position:static!important;margin:3px 0 0!important;padding:0!important;width:auto!important;height:auto!important;font-size:16px;line-height:1}
.address .address_body > .address_main{grid-column:2;float:none!important;width:auto!important;margin:0!important;padding:0!important}
.address .address_body .address_main p{margin:0!important;padding:0!important}
.address .address_body .address_main p + p{margin-top:var(--s2)!important}
.address .address_body .address_main a[href^="tel:"],.address .address_body .address_main a[href^="mailto:"]{display:inline-block;padding:2px 0!important}
.contact .get-in-touch .sk-h3-label{font:700 var(--fs-label)/1.3 var(--f)!important;letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--sk-on-dark-accent)!important;margin:var(--s6) 0 var(--s3)!important}
.contact .get-in-touch .scl-icon{display:inline-flex!important;align-items:center;justify-content:center;width:44px;height:44px;margin:0 var(--s2) 0 0!important;padding:0!important;border:1px solid var(--sk-line-dark);border-radius:50%;color:#fff!important;transition:background-color var(--d-ui) var(--ease-out)}
.contact .get-in-touch .scl-icon:hover{background:rgba(255,255,255,.08)}
/* Footer legal links: spaced links instead of pipe separators */
footer .btm-strip .r34-legal{display:inline-flex;flex-wrap:wrap;gap:var(--s1) var(--s4);margin-left:var(--s2);vertical-align:baseline}
footer .btm-strip .right-div a:has(> i){display:inline-flex!important;align-items:center;justify-content:center;width:40px;height:40px;padding:0!important}
@media (max-width:991.98px){
  .r31-layout .r31-prose > :first-child{margin-top:0!important}
}
@media (max-width:767.98px){
  /* Footer: link lists in two columns, so the footer is about half as tall */
  footer .footer .container{gap:var(--s7)!important}
  footer .footer .column:nth-child(2),footer .footer .column:nth-child(3),footer .footer .column:nth-child(4){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s4);align-items:start}
  footer .footer .column:nth-child(n+2):nth-child(-n+4) > h2{grid-column:1/-1}
  footer .footer .column:nth-child(n+2):nth-child(-n+4) > a{display:block;padding:7px 0!important;margin:0!important;line-height:1.35!important}
  footer .btm-strip .left-div p{text-align:center}
  body:has(#sk-actionbar) footer .btm-strip{padding-bottom:88px!important}
  footer .btm-strip .r34-legal{display:flex;justify-content:center;margin:var(--s2) 0 0;gap:0 var(--s4)}
  footer .btm-strip .r34-legal a{display:inline-block;padding:6px 0!important}
  footer .btm-strip .right-div{display:flex;justify-content:center;gap:var(--s2)}
  footer .btm-strip .right-div a:has(> i){width:44px;height:44px}
  /* Services tab text at body size */
  .services .card-body p,.services .card-body li{font-size:var(--fs-body)!important;line-height:1.65!important}
  /* Location page actions stack full width */
  .sk-loc-cta{display:grid!important;grid-template-columns:1fr;gap:var(--s2)}
  .sk-loc-cta a{display:flex!important;width:100%;justify-content:center;text-align:center;margin:0!important}
  /* Tracking carriers two per row */
  .tracking .trk_list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .tracking .trk_list a{padding:var(--s2) var(--s3)!important;font-size:14px!important}
  .tracking .wrapper .content{padding:var(--s4)!important}
  /* Our Work gallery two per row */
  .image_gallery .row{margin-left:-6px;margin-right:-6px}
  .image_gallery .row > [class*="col-"]{flex:0 0 50%;max-width:50%;padding-left:6px;padding-right:6px;margin-bottom:12px}
  .image_gallery .img-box img{aspect-ratio:1/1}
  /* Contact form card padding and full-width send button */
  .contact .form-div{padding:var(--s6) var(--s5)!important}
  .contact .form-div .submit_btn{width:100%;min-height:52px;justify-content:center}
  /* Incoterms tables become stacked rows: code and name, then when risk passes */
  .r31-page-incoterms .r31-table-wrap{overflow:visible!important}
  .r31-page-incoterms .r31-table-wrap > table{display:block!important;min-width:0!important}
  .r31-page-incoterms .r31-table-wrap thead{display:none!important}
  .r31-page-incoterms .r31-table-wrap tbody{display:block}
  .r31-page-incoterms .r31-table-wrap tbody tr{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--s3);row-gap:var(--s1);padding:var(--s4);border-top:1px solid var(--sk-line)}
  .r31-page-incoterms .r31-table-wrap tbody tr:first-child{border-top:0}
  .r31-page-incoterms .r31-table-wrap tbody td{display:block;position:static!important;padding:0!important;border:0!important;background:none!important;font-size:15px!important;line-height:1.5!important}
  .r31-page-incoterms .r31-table-wrap tbody td:nth-child(1){font-weight:700!important;color:var(--sk-teal-deep)!important}
  .r31-page-incoterms .r31-table-wrap tbody td:nth-child(2){font-weight:600!important;color:var(--sk-ink)!important}
  .r31-page-incoterms .r31-table-wrap tbody td:nth-child(3){grid-column:1/-1;color:var(--sk-body)!important}
  /* Container dimensions: picture beside title, table fits the screen without sideways scroll */
  .container-dimnsn .table-responsive{overflow:visible!important}
  .container-dimnsn .comparisonTable > table,.container-dimnsn .comparisonTable > table > tbody,.container-dimnsn .comparisonTable > table > tbody > tr,.container-dimnsn .comparisonTable > table > tbody > tr > td{display:block!important;width:100%!important;min-width:0!important;padding:0!important}
  .container-dimnsn table.tableContainer,.container-dimnsn table.tableContainer > tbody{display:block!important;width:100%!important;min-width:0!important}
  .container-dimnsn table.tableContainer > tbody > tr:first-child{display:flex!important;align-items:center;gap:var(--s4)}
  .container-dimnsn .comparisonTable .tableContainer td.tdContainer{display:block;flex:none;width:112px!important;padding:0!important}
  .container-dimnsn .comparisonTable .tdContainer img{width:112px}
  .container-dimnsn .comparisonTable .tdContainer + td{display:block;flex:1;padding:0!important}
  .container-dimnsn table.tableContainer > tbody > tr:nth-child(2),.container-dimnsn table.tableContainer > tbody > tr:nth-child(2) > td{display:block!important;width:100%!important;padding:var(--s4) 0 0!important}
  .container-dimnsn .ContainerInstruction .r31-table-wrap{overflow-x:auto!important}
  .container-dimnsn .ContainerInstruction .r31-table-wrap > table{min-width:0!important;width:100%!important}
  .container-dimnsn .ContainerInstruction .r31-table-wrap td,.container-dimnsn .ContainerInstruction .r31-table-wrap th{padding:10px 8px!important;font-size:14px!important;position:static!important}
  .container-dimnsn .ContainerInstruction .r31-table-wrap th{font-size:11px!important;letter-spacing:.05em!important}
  .container-dimnsn .comparisonTable p.textR{margin:var(--s8) 0 var(--s4)!important}
}
@media (max-width:767.98px){.contact .form-div .submit_btn{margin:var(--s2) 0 0!important}}
