﻿/* Office Infrastructure Planning — reference design, scoped to this page. */
.tg-office { --oi-ink:#092b40; --oi-muted:#50677c; --oi-teal:#005660; --oi-pale:#e2f4f4; }
.tg-office #main-content { color:var(--oi-ink); background:#fdfcfb; overflow:hidden; }
.oi-container { width:min(1040px,calc(100% - 100px)); margin-inline:auto; }
.tg-office h1,.tg-office h2,.tg-office h3 { font-family:Georgia,'Times New Roman',serif; letter-spacing:-.035em; color:var(--oi-ink); }
.tg-office h2 { font-weight:500; font-size:32px; line-height:1.06; margin:10px 0 13px; }
.tg-office p { font-size:16px; line-height:1.42; color:var(--oi-muted); margin:0; }
.oi-eyebrow { display:block; text-transform:uppercase; letter-spacing:.25em; font-size:11px; font-weight:600; color:#375e72; }
.oi-rule { display:flex; align-items:center; gap:24px; }
.oi-rule:after { content:''; width:48px; height:1px; background:#006274; }
.oi-section { padding:25px 0; }
.oi-heading { margin-bottom:17px; }
.oi-heading h2 { margin-bottom:0; }
.oi-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:12px 21px; background:linear-gradient(100deg,#005a65,#004c54); color:#fff; border:1px solid #046673; border-radius:7px; font-weight:700; font-size:14px; white-space:nowrap; box-shadow:0 2px 4px #ffffff25 inset; transition:background .18s,transform .18s; }
.oi-button svg { width:20px; height:20px; }
.oi-button:hover { background:#08717b; transform:translateY(-2px); }
.oi-button-outline { background:transparent; color:#005665; box-shadow:none; padding-inline:28px; }
.oi-button-outline:hover { background:#e2f4f4; }
.tg-office a:focus-visible { outline:3px solid #258d99; outline-offset:4px; }
.oi-icon { display:inline-grid; place-items:center; width:58px; height:58px; background:#e1f4f4; color:#005965; border-radius:21px; flex:0 0 auto; }
.oi-icon svg { width:34px; height:34px; }
.oi-hero { position:relative; background:linear-gradient(115deg,#fcfaf8,#fff 62%,#f4f0e9); }
.oi-hero:before,.oi-benefits:before { content:''; position:absolute; width:175px; height:270px; left:-125px; bottom:-25px; background:#f0eae1; border-radius:50%; transform:rotate(-20deg); }
.oi-hero-grid { position:relative; display:grid; grid-template-columns:51% 49%; min-height:405px; }
.oi-hero-copy { padding:28px 0 22px; z-index:2; }
.oi-hero h1 { font-size:44px; line-height:1.025; font-weight:600; margin:15px -12px 16px 0; }
.oi-hero-copy>p { max-width:510px; }
.oi-actions { display:flex; gap:16px; margin-top:20px; }
.oi-promises { list-style:none; padding:0; margin:21px 0 0; display:flex; gap:29px; }
.oi-promises li { display:flex; align-items:center; gap:12px; font-size:12px; white-space:nowrap; }
.oi-promises svg { width:26px; height:26px; }
.oi-hero-visual { position:relative; min-width:0; margin-right:10px; }
.oi-hero-visual:before { content:''; position:absolute; inset:3px 10px 0 -28px; background:#e0f3f3; border-radius:25% 40% 24% 30%; transform:rotate(-7deg); }
.oi-hero-visual:after { content:''; position:absolute; z-index:0; width:270px; height:355px; top:40px; right:-135px; border-radius:50%; background:#f1eadebb; }
.oi-hero-visual>img { position:absolute; z-index:1; top:0; bottom:0; left:0; width:94%; height:100%; object-fit:cover; border-radius:27% 16% 18% 20%; }
.oi-float { position:absolute; z-index:2; display:flex; align-items:center; gap:12px; padding:10px 13px; border-radius:17px; background:#fffffff0; box-shadow:0 7px 18px #1d4c5010; }
.oi-float strong { font:600 16px/1.15 Georgia,serif; letter-spacing:-.025em; }
.oi-float .oi-icon { width:46px; height:46px; border-radius:50%; }.oi-float svg { width:29px; height:29px; }
.oi-float-workspace { top:29px; left:0; }.oi-float-technology { right:-8px; top:53px; }.oi-float-network { right:29px; bottom:48px; }
.oi-handwriting { position:absolute; z-index:2; right:-81px; top:190px; font:italic 18px/1.1 'Segoe Print',cursive; color:#79919c; transform:rotate(-12deg); }
.oi-areas { background:#fff; padding-top:21px; padding-bottom:27px; }
.oi-cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; margin-inline:-24px; }
.oi-cards article { display:flex; align-items:flex-start; min-width:0; gap:20px; padding:16px; border:1px solid #efefed; border-radius:13px; background:#ffffffd6; box-shadow:0 6px 21px #49443303; }
.oi-cards h3 { font-size:17px; line-height:1.16; margin:14px 0 13px; font-weight:600; }
.oi-cards p { font-size:13px; line-height:1.5; }
.oi-approach { position:relative; padding-top:5px; padding-bottom:9px; background:linear-gradient(110deg,#fdfcfb,#fbfaf7); }
.oi-approach-grid { display:grid; grid-template-columns:48% 52%; gap:14px; align-items:center; }
.oi-approach-copy { padding:8px 0 15px; }
.oi-approach h2 { margin:12px 0; }
.oi-approach-copy>p { font-size:15px; line-height:1.55; }
.oi-checklist { display:grid; gap:10px; padding:0; margin:23px 0 0; list-style:none; }
.oi-checklist li { display:flex; align-items:center; gap:15px; font-size:15px; color:var(--oi-muted); }
.oi-checklist li>span { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:#005863; color:white; flex:0 0 auto; }.oi-checklist svg { width:20px; height:20px; }
.oi-approach-visual { position:relative; height:390px; margin-right:-2px; }
.oi-approach-visual:before { content:''; position:absolute; width:235px; height:365px; right:-135px; top:20px; border-radius:50%; background:#f1ebe2; }
.oi-approach-visual>img { position:relative; display:block; width:96%; height:100%; object-fit:cover; border-radius:70px 28px 32px 50px; }
.oi-outcomes { position:absolute; top:27px; right:-44px; width:192px; padding:13px 22px 23px; background:linear-gradient(115deg,#e3f5f5,#dff2f1); border-radius:35px 45px 28px 28px; }
.oi-outcomes .oi-icon { border-radius:50%; }
.oi-outcomes h3 { font-size:21px; font-weight:500; line-height:1.03; margin:12px 0 20px; padding-bottom:17px; border-bottom:1px solid #b1d5d6; }
.oi-outcomes ul { list-style:none; margin:0; padding:0; display:grid; gap:18px; }
.oi-outcomes li { display:flex; align-items:center; gap:13px; font-size:13px; white-space:nowrap; color:#285368; }.oi-outcomes li svg { width:23px; height:23px; color:#005763; flex:none; }
.oi-process-section { background:#e1f4f4; padding:20px 0; }
.oi-heading-split { display:grid; grid-template-columns:1.2fr 1fr; align-items:end; gap:50px; }
.oi-heading-split p { font-size:14px; line-height:1.45; }
.oi-process { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:6px; margin-inline:-27px; }
.oi-process article { position:relative; text-align:center; padding:12px 20px 12px 25px; background:#fffffff0; border-radius:9px; clip-path:polygon(0 0,88% 0,100% 50%,88% 100%,0 100%,12% 50%); }
.oi-process article:first-child { clip-path:polygon(0 0,88% 0,100% 50%,88% 100%,0 100%); }.oi-process article:last-child { clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12% 50%); }
.oi-step { position:absolute; top:19px; left:33px; width:39px; height:39px; display:grid; place-items:center; border-radius:50%; background:#f4f0e8; font-size:13px; font-weight:600; }.oi-process article:first-child .oi-step { left:16px; }
.oi-process .oi-icon { width:56px; height:56px; border-radius:50%; margin-left:12px; }
.oi-process h3 { font-size:18px; margin:7px 0 8px; font-weight:600; }.oi-process p { font-size:14px; line-height:1.4; }
.oi-benefits { position:relative; padding-bottom:12px; }.oi-benefits .oi-container { position:relative; }.oi-benefits .oi-heading { margin-bottom:10px; }.oi-benefits .oi-cards { margin-inline:-7px; gap:12px; }.oi-benefits .oi-cards article { gap:20px; padding:14px; }.oi-benefits .oi-cards h3 { margin-top:4px; max-width:160px; }.oi-benefits .oi-icon { width:55px; height:55px; }
.oi-industries { padding-top:16px; padding-bottom:23px; }.oi-industries .oi-heading { margin-bottom:16px; }
.oi-industries-grid { display:grid; grid-template-columns:1.05fr .95fr .8fr .95fr 1.1fr .85fr 1.1fr; gap:10px; margin-inline:-24px; }
.oi-industries-grid article { display:flex; align-items:center; justify-content:center; gap:18px; min-width:0; padding:13px 12px; border-radius:40px; background:#eaf5f5; }
.oi-industries-grid svg { width:30px; height:30px; flex:none; color:#005964; }.oi-industries-grid h3 { margin:0; font:500 13px/1.3 'DM Sans',sans-serif; letter-spacing:0; white-space:nowrap; }
.oi-final { position:relative; background:#004b54; height:155px; overflow:hidden; }
.oi-final-photo { position:absolute; right:0; top:0; bottom:0; width:48%; overflow:hidden; border-radius:100px 0 35px 0; }.oi-final-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 63%; }
.oi-final-panel { position:relative; display:flex; align-items:center; gap:45px; height:100%; width:66%; padding:18px 9% 18px max(30px,calc((100% - 1040px)/2)); background:linear-gradient(100deg,#f4ede1,#eee5d8); border-radius:0 170px 0 100px; }
.oi-final h2 { margin:7px 0 4px; font-size:31px; white-space:nowrap; }.oi-final p { font-size:13px; line-height:1.3; }.oi-final .oi-eyebrow { font-size:10px; }.oi-final .oi-button { flex:none; padding-inline:25px; }
.tg-office .tg-header { height:60px; background:#fff; border-bottom:1px solid #f1efeb; }.tg-office .tg-chrome-container { width:min(1040px,calc(100% - 100px)); }.tg-office .tg-logo { font-size:26px; color:var(--oi-ink); letter-spacing:-.6px; }.tg-office .tg-desktop-nav { margin-left:45px; gap:29px; font-size:12px; }.tg-office .tg-header-cta { background:#00535c; padding:12px 17px; border-radius:7px; font-size:13px; }
.tg-office .company-footer { padding:23px 0 30px; color:white; background:radial-gradient(ellipse at 20% 0,#07525b,#003740 80%); }
.tg-office .company-footer-grid { display:grid; grid-template-columns:1.25fr .7fr 1.12fr 1fr; gap:26px; width:min(1040px,calc(100% - 100px)); margin:auto; }
.tg-office .company-footer .tg-logo { font-size:26px; color:#fff; }.tg-office .company-footer-brand p { max-width:270px; color:#e0edef; margin:11px 0 15px; font-size:15px; line-height:1.3; }
.tg-office .company-footer h2 { font:600 14px/1.3 'DM Sans',sans-serif; margin:0 0 4px; color:white; letter-spacing:0; }.tg-office .company-footer nav { padding-left:25px; border-left:1px solid #ffffff1c; }.tg-office .company-footer nav a { display:block; color:#deecee; font-size:12px; line-height:1.35; }.tg-office .company-footer-contact { border-left:1px solid #ffffff1c; padding-left:26px; }.tg-office .company-footer-contact address,.tg-office .company-footer-contact>a { display:flex; align-items:flex-start; gap:14px; margin:8px 0 0; font-style:normal; font-size:13px; line-height:1.35; }.tg-office .company-footer-contact span { overflow-wrap:anywhere; }.tg-office .company-socials { display:flex; gap:24px; font-size:20px; }.tg-office .company-footer a:hover { color:#9de0e0; }
@media(min-width:761px) and (max-width:1100px) {
    .oi-container,.tg-office .tg-chrome-container,.tg-office .company-footer-grid { width:calc(100% - 100px); }.oi-hero h1 { font-size:36px; }.oi-hero-grid { min-height:350px; }.oi-hero-copy>p { font-size:14px; }.oi-hero-copy { padding-block:26px 20px; }.oi-actions { gap:13px; }.oi-button { font-size:11px; padding:11px 16px; }.oi-button-outline { padding-inline:22px; }.oi-promises { gap:25px; }.oi-promises li { font-size:10px; gap:9px; }.oi-promises svg { width:23px; }.oi-float strong { font-size:14px; }.oi-float { gap:9px; padding:8px 10px; }.oi-float-technology { right:-10px; }.oi-handwriting { right:-60px; font-size:15px; top:180px; }
    .tg-office h2 { font-size:27px; }.oi-cards { margin-inline:-20px; gap:10px; }.oi-cards article { gap:18px; padding:14px; }.oi-icon { width:49px; height:49px; border-radius:18px; }.oi-icon svg { width:31px; height:31px; }.oi-cards h3 { font-size:14px; margin:12px 0; }.oi-cards p { font-size:11px; }
    .oi-approach-grid { gap:10px; }.oi-approach-copy>p { font-size:13px; }.oi-checklist { gap:9px; margin-top:20px; }.oi-checklist li { font-size:12px; gap:13px; }.oi-checklist li>span { width:21px; height:21px; }.oi-approach-visual { height:330px; }.oi-outcomes { width:160px; right:-32px; padding:12px 18px 22px; }.oi-outcomes h3 { font-size:18px; }.oi-outcomes li { font-size:11px; gap:12px; }.oi-outcomes ul { gap:16px; }.oi-outcomes li svg { width:20px; height:20px; }
    .oi-heading-split { gap:30px; }.oi-heading-split p { font-size:12px; }.oi-process article { padding:10px 17px 12px 22px; }.oi-step { width:33px; height:33px; left:28px; font-size:12px; }.oi-process .oi-icon { width:49px; height:49px; }.oi-process h3 { font-size:15px; }.oi-process p { font-size:12px; }.oi-benefits .oi-cards article { gap:16px; padding:12px; }.oi-benefits .oi-icon { width:47px; height:47px; }.oi-industries-grid { gap:9px; }.oi-industries-grid article { gap:13px; padding:12px 8px; }.oi-industries-grid h3 { font-size:11px; }.oi-industries-grid svg { width:25px; height:25px; }
    .oi-final { height:140px; }.oi-final-panel { padding-left:50px; padding-right:10%; gap:30px; }.oi-final h2 { font-size:27px; }.oi-final p { font-size:11px; }.oi-final .oi-eyebrow { font-size:9px; }.oi-final .oi-button { padding-inline:22px; }
    .tg-office .tg-desktop-nav { gap:25px; margin-left:20px; font-size:10px; }.tg-office .tg-header-inner { gap:20px; }.tg-office .tg-logo { font-size:23px; }.tg-office .tg-header-cta { font-size:11px; padding:11px 14px; }.tg-office .company-footer-grid { gap:22px; }.tg-office .company-footer nav,.tg-office .company-footer-contact { padding-left:22px; }.tg-office .company-footer nav a { font-size:10px; }.tg-office .company-footer-contact address,.tg-office .company-footer-contact>a { font-size:11px; }.tg-office .company-footer-brand p { font-size:13px; }.tg-office .company-footer .tg-logo { font-size:23px; }
}
@media(min-width:761px) and (max-width:940px) {
    .tg-office .tg-desktop-nav { display:flex; gap:16px; margin-left:10px; }.tg-office .tg-header-cta { display:flex; font-size:10px; padding:10px; }.tg-office .tg-mobile-menu { display:none; }.tg-office .tg-header-inner { gap:10px; }.tg-office .tg-logo { font-size:21px; }.tg-office .tg-logo-mark { width:25px; }.oi-container { width:calc(100% - 64px); }.oi-hero h1 { font-size:32px; }.oi-promises { gap:14px; }.oi-cards article { gap:10px; padding:11px; }.oi-cards .oi-icon { width:42px; height:42px; }.oi-cards h3 { font-size:13px; }.oi-outcomes { right:-15px; }.oi-step { left:20px; width:28px; height:28px; }.oi-process article:first-child .oi-step { left:10px; }.oi-final-panel { padding-left:32px; gap:20px; }.oi-final h2 { font-size:24px; }.oi-final p { font-size:10px; }.oi-final .oi-button { padding-inline:14px; }
}
@media(max-width:760px) {
    .oi-container,.tg-office .tg-chrome-container,.tg-office .company-footer-grid { width:calc(100% - 40px); }.oi-section { padding:30px 0; }.tg-office h2 { font-size:29px; }.oi-eyebrow { font-size:10px; }.oi-hero-grid { grid-template-columns:1fr; }.oi-hero-copy { padding:30px 0 24px; }.oi-hero h1 { font-size:clamp(31px,6.4vw,44px); margin-right:0; }.oi-hero h1 br { display:none; }.oi-hero-copy>p { font-size:15px; max-width:100%; }.oi-actions { gap:10px; flex-wrap:wrap; }.oi-button { font-size:12px; padding:12px 17px; }.oi-promises { gap:18px; flex-wrap:wrap; margin-top:20px; }.oi-promises li { font-size:10px; gap:7px; }.oi-promises svg { width:22px; height:22px; }.oi-hero-visual { height:350px; margin:0 0 12px; }.oi-hero-visual>img { width:100%; }.oi-handwriting { display:none; }.oi-float { padding:8px 10px; gap:8px; }.oi-float strong { font-size:14px; }.oi-float-workspace { top:15px; left:0; }.oi-float-technology { top:35px; right:-5px; }.oi-float-network { bottom:25px; right:0; }.oi-float .oi-icon { width:40px; height:40px; }
    .oi-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; }.oi-cards article { flex-direction:column; gap:6px; padding:17px; }.oi-cards h3 { font-size:18px; margin:6px 0 10px; overflow-wrap:anywhere; }.oi-cards p { font-size:13px; }
    .oi-approach-grid { grid-template-columns:1fr; gap:20px; }.oi-approach h2 br { display:none; }.oi-approach-copy>p { font-size:15px; }.oi-checklist { gap:13px; }.oi-checklist li { font-size:14px; align-items:flex-start; }.oi-approach-visual { height:370px; margin:0; }.oi-approach-visual>img { width:100%; object-position:30% center; border-radius:45px 20px 25px 25px; }.oi-outcomes { right:-5px; top:42px; width:150px; padding:12px 15px 20px; border-radius:27px; }.oi-outcomes h3 { font-size:18px; }.oi-outcomes ul { gap:16px; }.oi-outcomes li { gap:8px; font-size:10px; }.oi-outcomes li svg { width:20px; height:20px; }
    .oi-heading-split { grid-template-columns:1fr; gap:13px; }.oi-heading-split p { font-size:14px; }.oi-process { grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; gap:12px; }.oi-process article,.oi-process article:first-child,.oi-process article:last-child { clip-path:none; border-radius:12px; padding:17px 13px; }.oi-process article:last-child { grid-column:1/-1; }.oi-step,.oi-process article:first-child .oi-step { left:10px; top:15px; width:29px; height:29px; font-size:11px; }.oi-process .oi-icon { width:51px; height:51px; margin-left:13px; }.oi-process h3 { font-size:18px; }.oi-process p { font-size:13px; }.oi-process article:last-child p { max-width:280px; margin:auto; }
    .oi-benefits .oi-cards { margin:0; }.oi-benefits .oi-cards article { padding:17px; gap:8px; }.oi-benefits .oi-cards h3 { max-width:none; }.oi-industries-grid { grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; gap:10px; }.oi-industries-grid article { justify-content:flex-start; gap:13px; padding:13px 17px; }.oi-industries-grid h3 { font-size:12px; }.oi-industries-grid svg { width:26px; height:26px; }
    .oi-final { height:auto; padding-bottom:190px; }.oi-final-panel { width:100%; min-height:230px; height:auto; padding:26px 20px; flex-direction:column; align-items:flex-start; gap:17px; border-radius:0 55px 0 40px; }.oi-final h2 { font-size:29px; white-space:normal; }.oi-final p { font-size:14px; max-width:450px; }.oi-desktop-break { display:none; }.oi-final-photo { width:100%; height:215px; top:auto; border-radius:0; }.oi-final .oi-button { padding-inline:23px; }
    .tg-office .company-footer { padding:28px 0; }.tg-office .company-footer-grid { grid-template-columns:.8fr 1.2fr; gap:26px; }.tg-office .company-footer-brand,.tg-office .company-footer-contact { grid-column:1/-1; }.tg-office .company-footer nav,.tg-office .company-footer-contact { padding:0; border:0; }.tg-office .company-footer nav a { font-size:12px; padding-block:4px; }.tg-office .company-footer h2 { font-size:15px; margin-bottom:7px; }.tg-office .company-footer-contact address,.tg-office .company-footer-contact>a { font-size:14px; }
}
@media(min-width:1101px) {
    .oi-cards article { display:grid; grid-template-columns:54px minmax(0,1fr); gap:16px; padding:14px; }
    .oi-cards .oi-icon { width:54px; height:54px; }
    .oi-cards h3 { font-size:15.5px; font-weight:500; margin-top:13px; }
    .oi-areas .oi-cards h3 { white-space:nowrap; }
    .oi-benefits .oi-cards article { gap:16px; }
    .oi-benefits .oi-cards h3 { font-size:16px; margin-top:4px; }
}
@media(min-width:761px) and (max-width:1100px) {
    .oi-container { width:calc(100% - 130px); }
    .tg-office .tg-header { height:48px; }
    .oi-hero-grid { min-height:316px; grid-template-columns:52% 48%; }
    .oi-hero-copy { padding:22px 0 18px; }
    .oi-hero h1 { font-size:34px; margin:12px -20px 12px 0; }
    .oi-hero-copy>p { font-size:13px; line-height:1.35; }
    .oi-actions { margin-top:15px; }
    .oi-button { min-height:34px; padding:8px 16px; }
    .oi-promises { margin-top:16px; gap:23px; }
    .oi-handwriting { right:-57px; font-size:13px; top:150px; }
    .oi-float strong { font-size:12px; }
    .oi-float .oi-icon { width:36px; height:36px; }
    .oi-float-workspace { top:23px; }
    .oi-float-technology { top:42px; }
    .oi-float-network { bottom:36px; }
    .oi-areas { padding:18px 0 22px; }
    .oi-cards article { display:grid; grid-template-columns:45px minmax(0,1fr); padding:12px; gap:16px; }
    .oi-cards .oi-icon { width:45px; height:45px; }
    .oi-cards h3 { font-size:12px; font-weight:500; margin:10px 0 11px; }
    .oi-areas .oi-cards h3 { white-space:nowrap; letter-spacing:-.055em; }
    .oi-cards p { font-size:10px; line-height:1.5; }
    .tg-office h2 { font-size:25px; }
    .oi-heading { margin-bottom:14px; }
    .oi-approach-visual { height:305px; }
    .oi-approach-copy>p { font-size:12px; line-height:1.5; }
    .oi-checklist { margin-top:18px; gap:8px; }
    .oi-checklist li { font-size:11px; }
    .oi-outcomes { right:-34px; top:21px; width:153px; padding:10px 18px 21px; }
    .oi-outcomes h3 { margin:10px 0 17px; padding-bottom:13px; }
    .oi-outcomes li { font-size:10px; }
    .oi-process-section { padding:16px 0; }
    .oi-process article { padding:10px 16px 10px 19px; }
    .oi-process p { font-size:11px; }
    .oi-process .oi-icon { width:44px; height:44px; }
    .oi-process h3 { font-size:14px; margin:6px 0; }
    .oi-step { width:29px; height:29px; font-size:11px; left:25px; top:16px; }
    .oi-benefits { padding-top:18px; }
    .oi-benefits .oi-cards article { gap:14px; padding:11px; }
    .oi-benefits .oi-cards h3 { margin-top:3px; }
    .oi-industries { padding-top:13px; padding-bottom:17px; }
    .oi-final { height:124px; }
    .oi-final-panel { width:66%; padding-left:65px; padding-right:9%; gap:20px; }
    .oi-final-panel>div { flex:none; width:320px; }
    .oi-final h2 { font-size:25px; }
    .oi-final p { font-size:10px; }
    .oi-final .oi-button { padding-inline:20px; }
    .tg-office .company-footer { padding-block:19px 25px; }
}
@media(min-width:761px) and (max-width:860px) {
    .oi-container { width:calc(100% - 64px); }
    .oi-hero h1 { font-size:30px; }
    .oi-cards article { gap:10px; grid-template-columns:38px minmax(0,1fr); }
    .oi-cards .oi-icon { width:38px; height:38px; }
    .oi-areas .oi-cards h3 { white-space:normal; }
    .oi-final-panel { padding-left:32px; gap:15px; }
    .oi-final-panel>div { width:280px; }
    .oi-final h2 { font-size:23px; }
    .oi-final .oi-button { padding-inline:13px; }
}
.tg-office #main-content { font-family:'DM Sans',Arial,sans-serif; }
.oi-cards p { font-family:'Roboto Condensed',Arial,sans-serif; }
.oi-hero,.oi-approach { overflow:hidden; }
@media(min-width:861px) and (max-width:1100px) {
    .oi-hero-grid { min-height:316px; }
    .oi-hero-copy>p { font-size:14px; }
    .oi-cards p { font-size:11px; line-height:1.35; }
    .oi-cards h3 { font-weight:600; margin:10px 0 10px; }
    .oi-cards article { min-height:110px; padding-block:11px; }
    .oi-areas { padding-bottom:20px; }
    .oi-approach { padding-block:5px 9px; }
    .oi-approach-copy>p { font-size:13px; line-height:1.45; }
    .oi-checklist { gap:6px; margin-top:18px; }
    .oi-checklist li { font-size:12px; }
    .oi-outcomes h3 { font-size:17px; white-space:nowrap; }
    .oi-outcomes li { font-size:11px; }
    .oi-process p { font-size:12px; line-height:1.3; }
    .oi-process article { padding-block:9px; }
    .oi-heading-split p { font-size:13px; }
    .oi-benefits .oi-cards h3 { max-width:115px; }
    .oi-benefits .oi-cards article { padding-block:10px; }
    .oi-industries { padding-top:10px; padding-bottom:15px; }
    .oi-industries-grid article { padding-block:10px; }
    .tg-office .company-footer { padding-block:17px 20px; }
}
@media(prefers-reduced-motion:reduce) { .oi-button { transition:none; }.oi-button:hover { transform:none; } }
