@import 'tailwindcss';

:root { --ink:#0b211b; --green:#075f47; --lime:#b7d545; --cream:#f4f1e8; --line:rgba(11,33,27,.14); }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif} a{color:inherit;text-decoration:none} button,input{font:inherit}
:focus-visible{outline:3px solid #e9aa3e;outline-offset:4px}
.gallery-shell{min-height:100vh;padding:0 clamp(22px,4vw,68px) 28px;background:radial-gradient(circle at 90% 0%,rgba(183,213,69,.22),transparent 27%),var(--cream)}
.gallery-header{height:92px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.gallery-logo{width:min(300px,45vw);height:auto}.gallery-header p{font-size:12px;letter-spacing:.12em;text-transform:uppercase}.gallery-header p span{color:var(--green);margin:0 8px}
.gallery-intro{padding:clamp(48px,7vw,96px) 0 clamp(38px,5vw,64px);display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);column-gap:8vw;align-items:end}.eyebrow{grid-column:1/-1;color:var(--green);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:0 0 24px}.gallery-intro h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(48px,7.2vw,110px);line-height:.9;letter-spacing:-.055em;margin:0;max-width:1050px}.gallery-intro h1 em{color:var(--green);font-weight:400}.gallery-lede{font-size:clamp(16px,1.4vw,21px);line-height:1.55;margin:0 0 4px;max-width:520px}
.concept-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.concept-card{position:relative;min-height:clamp(350px,39vw,610px);overflow:hidden;border-radius:4px;color:white;isolation:isolate}.concept-image,.concept-overlay{position:absolute;inset:0}.concept-image{z-index:-2;background-size:cover;background-position:center;transition:transform .65s cubic-bezier(.2,.7,.2,1)}.concept-overlay{z-index:-1;background:linear-gradient(180deg,rgba(1,20,15,.05),rgba(1,20,15,.86))}.concept-card:hover .concept-image{transform:scale(1.035)}.concept-top{display:flex;justify-content:space-between;padding:26px 28px;font-size:13px;font-weight:700}.concept-top svg{width:22px}.concept-copy{position:absolute;left:28px;right:28px;bottom:27px}.concept-copy p{font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;color:rgba(255,255,255,.78)}.concept-copy h2{font-family:Georgia,serif;font-size:clamp(35px,4vw,66px);line-height:.98;letter-spacing:-.035em;font-weight:400;margin:0 0 24px}.explore{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.35);padding-top:15px;font-weight:700;font-size:14px}.explore svg{width:19px}.industrial .concept-overlay{background:linear-gradient(180deg,rgba(0,8,28,.08),rgba(1,9,32,.93))}.gateway{border-radius:38px}.gateway .concept-overlay{background:linear-gradient(180deg,rgba(3,37,31,.05),rgba(3,58,45,.86))}.trade .concept-image{background-size:70%;background-repeat:no-repeat;background-color:#123f72}.trade .concept-overlay{background:linear-gradient(135deg,rgba(9,42,91,.24),rgba(6,36,77,.92))}.civic{color:#17392f}.civic .concept-image{background-size:52%;background-repeat:no-repeat;background-position:78% 30%;background-color:#dfece5}.civic .concept-overlay{background:linear-gradient(90deg,rgba(238,246,241,.96) 0%,rgba(238,246,241,.74) 58%,rgba(238,246,241,.1))}.civic .concept-copy p{color:#3e665b}.civic .explore{border-color:rgba(23,57,47,.25)}
.gallery-footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:54px;padding:24px 0 0;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
@media(max-width:800px){.gallery-header p{display:none}.gallery-intro{grid-template-columns:1fr;gap:26px}.gallery-intro h1{font-size:clamp(52px,14vw,80px)}.concept-grid{grid-template-columns:1fr}.concept-card{min-height:470px}.gallery-footer{gap:14px;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.concept-image{transition:none}}

/* Shared concept framework */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.concept-page{--page:#fff;--text:#10251f;--accent:#087554;--soft:#eef4ef;background:var(--page);color:var(--text);min-height:100vh;overflow:hidden}.concept-bar{height:38px;padding:0 clamp(20px,4vw,68px);display:flex;align-items:center;justify-content:space-between;background:#092a21;color:#fff;font-size:11px;letter-spacing:.07em;text-transform:uppercase}.back-link{display:flex;align-items:center;gap:7px}.back-link svg{width:14px}.concept-pills{display:flex;gap:4px}.concept-pills a{padding:6px 12px;border-radius:20px;color:rgba(255,255,255,.65)}.concept-pills a[aria-current=page]{background:white;color:#092a21}.site-header{height:88px;display:flex;align-items:center;gap:38px;padding:0 clamp(20px,4vw,68px);border-bottom:1px solid rgba(10,35,27,.13);background:rgba(255,255,255,.97);position:relative;z-index:20}.brand img{width:clamp(205px,21vw,290px);display:block}.desktop-nav{display:flex;align-items:center;gap:clamp(15px,2vw,30px);margin-left:auto;font-size:13px;font-weight:650}.desktop-nav a:hover{color:var(--accent)}.header-tools{display:flex;align-items:center;gap:12px}.header-tools button{border:0;background:transparent;display:grid;place-items:center;cursor:pointer}.header-tools svg{width:18px}.header-cta{background:var(--accent);color:white;padding:12px 16px;font-size:12px;font-weight:750}.menu-trigger{display:none!important}.mobile-sheet{background:#f4f3ec!important;color:#10251f!important;padding:18px!important}.mobile-sheet nav{display:flex;flex-direction:column;margin-top:25px}.mobile-sheet nav a{display:flex;justify-content:space-between;padding:18px 2px;border-bottom:1px solid rgba(0,0,0,.12);font-size:19px}.mobile-sheet nav svg{width:18px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-head p{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--accent);margin:0 0 12px}.section-head h2{font-family:Georgia,serif;font-size:clamp(36px,4vw,62px);font-weight:400;line-height:1;letter-spacing:-.035em;margin:0}.section-head>a{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:750;border-bottom:1px solid;padding:0 0 7px}.section-head>a svg{width:16px}.primary-btn,.career-callout>a,.civic-copy>a{display:inline-flex;align-items:center;gap:16px;padding:16px 20px;background:var(--accent);color:white;font-size:13px;font-weight:750}.primary-btn svg,.career-callout svg,.civic-copy>a svg{width:17px}.tender-explorer{container-type:inline-size}.filter-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:16px}.filter-row label{height:48px;display:flex;align-items:center;gap:10px;border:1px solid rgba(0,0,0,.16);padding:0 16px;background:white;min-width:min(390px,100%)}.filter-row label svg{width:17px}.filter-row input{border:0;outline:0;width:100%;background:transparent}.filter-row>div{display:flex;gap:7px}.filter-row button{border:1px solid rgba(0,0,0,.15);background:transparent;padding:10px 14px;cursor:pointer}.filter-row button[aria-pressed=true]{background:var(--text);color:white}.tender-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.tender-card{background:white;border:1px solid rgba(0,0,0,.11);padding:12px;min-width:0}.tender-card img{width:100%;height:120px;object-fit:cover;display:block;margin-bottom:16px}.tender-card>span{font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:var(--accent);font-weight:800}.tender-card h3{font-size:20px;margin:8px 0}.tender-card p{font-size:13px;line-height:1.45;color:#52605b;min-height:56px}.tender-card b{font-size:12px;display:flex;align-items:center;justify-content:space-between;margin-top:18px}.tender-card svg{width:15px}.empty-state{padding:40px;text-align:center;background:var(--soft)}.reports-carousel{margin:0 40px}.report-slide{basis:50%!important}.report-card{height:220px;background:white;border:1px solid rgba(0,0,0,.12);padding:28px;display:grid;grid-template-columns:auto 1fr auto;gap:20px}.report-card>svg{width:26px}.report-card span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}.report-card h3{font-size:25px;margin:13px 0 8px}.report-card p{color:#63706b;font-size:13px;line-height:1.5}.career-callout{margin:0 clamp(20px,4vw,68px) 70px;min-height:260px;background:#0c6b4c;color:white;padding:clamp(34px,5vw,70px);display:flex;align-items:end;justify-content:space-between;gap:30px}.career-callout p{font-size:11px;text-transform:uppercase;letter-spacing:.15em}.career-callout h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(38px,5vw,72px);max-width:800px;line-height:1;margin:10px 0 0}.career-callout>a{background:#d9f06f;color:#092a21;white-space:nowrap}.site-footer{background:#092a21;color:#dbe7e2;padding:60px clamp(20px,4vw,68px) 20px;display:grid;grid-template-columns:1.7fr repeat(3,1fr);gap:45px}.footer-brand img{width:min(310px,100%);filter:brightness(0) invert(1);margin-bottom:24px}.site-footer h3{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#91b1a5;margin:0 0 18px}.site-footer>div:not(.footer-brand):not(.footer-bottom){display:flex;flex-direction:column;align-items:start;gap:12px;font-size:13px}.site-footer p{font-size:13px;line-height:1.6;color:#acc0b9;margin:0;display:flex;gap:8px}.site-footer p svg{width:14px;flex:none}.footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:20px;margin-top:20px;display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#87a39a}

/* Industrial concept */
.industrial-page{--text:#070d2b;--accent:#25c6b6}.industrial-page .site-header.inverted{position:absolute;top:38px;width:100%;background:#060c2d;border:0}.industrial-page .site-header.inverted .brand img{filter:brightness(0) invert(1)}.industrial-page .site-header.inverted .desktop-nav,.industrial-page .site-header.inverted .header-tools button{color:white}.industrial-page .header-cta{background:#51d2c6;color:#071128}.industrial-hero{height:min(820px,86vh);min-height:650px;background-size:cover;background-position:center;display:flex;align-items:end;position:relative;color:white;padding:0 clamp(20px,9vw,150px) clamp(70px,9vw,120px);transition:background-image .35s}.hero-copy{max-width:800px}.hero-copy>p:first-child{font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:#67ded3}.hero-copy h1{font-size:clamp(55px,7vw,106px);letter-spacing:-.06em;line-height:.88;margin:20px 0;font-weight:650}.hero-lede{font-size:clamp(16px,1.35vw,21px);line-height:1.5;max-width:650px;margin-bottom:30px}.industrial-hero .primary-btn{background:#52d2c6;color:#071128}.hero-controls{position:absolute;right:clamp(20px,5vw,80px);bottom:48px;display:flex;align-items:center;gap:7px}.hero-controls span{font-size:11px;margin-right:12px}.hero-controls button{height:45px;width:45px;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.22);color:white;display:grid;place-items:center;cursor:pointer}.hero-controls svg{width:18px}.ticker{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;padding:18px clamp(20px,9vw,150px);background:#e9eee9}.ticker>span{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;background:#071128;color:white;padding:7px 9px}.ticker p{font-size:13px;margin:0}.ticker a{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700}.ticker svg{width:15px}.dark-section{background:#070d2b;color:white;padding:clamp(70px,8vw,130px) clamp(20px,7vw,110px)}.dark-section .section-head{max-width:850px}.dark-section .section-head h2{font-family:Arial,sans-serif;font-weight:650;font-size:clamp(42px,5.2vw,78px)}.industrial-activities{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.22)}.industrial-activities>a{padding:28px 24px;min-height:300px;border-right:1px solid rgba(255,255,255,.18);position:relative}.industrial-activities span{font-size:11px;color:#61dbd0}.industrial-activities>a>svg:not(:last-child){display:block;width:40px;height:40px;margin:50px 0 25px}.industrial-activities h3{font-size:26px;margin:0 0 14px}.industrial-activities p{font-size:13px;line-height:1.5;color:#aeb4c5}.industrial-activities>a>svg:last-child{position:absolute;right:24px;bottom:24px;width:18px}.light-section{padding:clamp(70px,8vw,120px) clamp(20px,7vw,110px);background:#f4f6f3}.story-split{display:grid;grid-template-columns:1fr 1fr;background:#51d2c6}.story-split img{width:100%;height:100%;max-height:600px;object-fit:cover}.story-split>div{padding:clamp(50px,7vw,110px)}.story-split>div>p:first-child{font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.story-split h2{font-family:Georgia,serif;font-size:clamp(40px,5vw,72px);line-height:.98;font-weight:400;margin:20px 0}.story-split p{font-size:16px;line-height:1.6}.story-split a{display:flex;align-items:center;gap:10px;margin-top:34px;font-weight:750}.story-split svg{width:18px}.news-section{padding:clamp(70px,8vw,120px) clamp(20px,7vw,110px);background:white}.news-list{border-top:1px solid #bec5c2}.news-list>a{display:grid;grid-template-columns:200px 1fr auto;gap:30px;padding:28px 0;border-bottom:1px solid #bec5c2;align-items:center}.news-list span{font-size:12px}.news-list span b{display:block;color:#087d70;margin-top:7px}.news-list h3{font-size:clamp(20px,2vw,30px);margin:0}.news-list svg{width:20px}

/* Gateway concept */
.gateway-page{--accent:#176b67;--text:#173b36;background:#fbfbf8}.gateway-page .site-header{margin:0 clamp(12px,3vw,50px);padding:0;}.gateway-hero{margin:28px clamp(20px,6vw,110px) 0;border-radius:44px;min-height:720px;position:relative;overflow:hidden;color:white;display:flex;align-items:center;justify-content:center;text-align:center}.gateway-photo{position:absolute;inset:0;background:linear-gradient(rgba(6,36,31,.35),rgba(5,45,36,.7)),url('/images/hero-port-modern.png') center/cover;z-index:0}.gateway-copy{position:relative;z-index:1;width:min(850px,90%)}.gateway-copy>p:first-child{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800}.gateway-copy h1{font-family:Georgia,serif;font-size:clamp(58px,7vw,108px);font-weight:400;letter-spacing:-.045em;line-height:.94;margin:20px 0}.gateway-copy>p{font-size:18px;line-height:1.5}.gateway-search{margin:48px auto 0;width:min(670px,100%);background:rgba(22,39,35,.62);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.35);padding:18px;border-radius:25px;text-align:left}.gateway-search>span{font-size:11px;margin-left:12px}.gateway-search>div{height:62px;background:white;border-radius:40px;display:flex;align-items:center;padding:0 8px 0 20px;margin-top:8px;color:#23463f}.gateway-search svg{width:20px}.gateway-search input{flex:1;border:0;outline:0;padding:0 13px;min-width:0}.gateway-search button{border:0;border-radius:30px;background:#1c6b66;color:white;padding:14px 20px;cursor:pointer}.audience,.gateway-tenders,.gateway-updates{padding:clamp(75px,9vw,140px) clamp(20px,6vw,110px)}.audience .section-head select{padding:13px 35px 13px 16px;border:1px solid #adc0ba;background:white}.audience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.audience-grid>a{background:white;border:1px solid #d7dfdb;padding:28px;min-height:250px;border-radius:22px;position:relative}.audience-grid span{color:#4d776e;font-size:11px}.audience-grid h3{font-family:Georgia,serif;font-weight:400;font-size:27px;margin:45px 0 12px}.audience-grid p{font-size:13px;line-height:1.55;color:#61736e}.audience-grid svg{position:absolute;right:25px;bottom:22px;width:18px}.gateway-services{padding:clamp(75px,9vw,140px) clamp(20px,6vw,110px);background:#e9f2ed}.gateway-services>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gateway-services>div>a{background:#f8fbf9;border-radius:18px;padding:28px;display:grid;grid-template-columns:auto 1fr auto;column-gap:22px;align-items:center}.gateway-services>div>a>span{grid-row:1/3;background:#d5ebe0;color:#1f715a;border-radius:50%;height:52px;width:52px;display:grid;place-items:center}.gateway-services>div>a svg{width:22px}.gateway-services h3{margin:0;font-size:22px}.gateway-services p{margin:6px 0 0;font-size:13px;color:#64756f}.gateway-tenders{background:#fff}.gateway-tenders .tender-card{border-radius:18px}.gateway-tenders .tender-card img{border-radius:12px}.gateway-about{padding:clamp(60px,8vw,120px) clamp(20px,6vw,110px);display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;background:#153f37;color:white}.gateway-about>div:first-child{padding-right:8vw}.gateway-about>div>p:first-child{text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:#aad8c7}.gateway-about h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(38px,4vw,62px);line-height:1;margin:18px 0 30px}.gateway-about a{display:flex;gap:9px;align-items:center;font-weight:700}.gateway-about svg{width:17px}.stat-card{background:#f1d980;color:#193e37;border-radius:25px;padding:30px;display:flex;flex-direction:column;justify-content:end}.stat-card:nth-child(3){background:#d3e8df}.stat-card strong{font-family:Georgia,serif;font-size:60px;font-weight:400}.stat-card span{font-size:13px}.gateway-updates{background:#f6f5f0}.notice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:80px}.notice-grid a{padding:27px;border:1px solid #ced5d1;background:white;border-radius:18px;min-height:220px;position:relative}.notice-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#167366;font-weight:800}.notice-grid h3{font-family:Georgia,serif;font-size:25px;line-height:1.2;font-weight:400}.notice-grid p{font-size:12px;color:#71807b;position:absolute;bottom:20px}.notice-grid svg{position:absolute;right:22px;bottom:18px;width:18px}

/* Trade portal concept */
.trade-page{--accent:#0b826a;--text:#102b47;background:#f5f7f8}.trade-page .concept-bar{background:#173f72}.trade-page .site-header{border-top:5px solid #173f72;height:96px}.trade-page .header-cta{background:#d3982f}.trade-hero{background:#163f72;color:white;padding:70px clamp(20px,5vw,85px);display:grid;grid-template-columns:1.05fr .95fr;gap:7vw;align-items:center;min-height:620px}.trade-hero-copy>p:first-child{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#f3c36f;font-weight:800}.trade-hero-copy h1{font-size:clamp(48px,5.4vw,82px);line-height:.96;letter-spacing:-.045em;margin:20px 0}.trade-hero-copy>p{font-size:17px;line-height:1.55;max-width:600px}.trade-hero-copy>div{display:flex;align-items:center;gap:24px;margin-top:32px}.trade-page .primary-btn{background:#e4a844}.text-btn{border-bottom:1px solid;padding-bottom:5px;font-weight:700;font-size:13px}.trade-hero-art{position:relative}.trade-hero-art img{width:100%;height:420px;object-fit:cover}.trade-hero-art>div{position:absolute;left:-30px;bottom:-30px;background:#0b816b;padding:20px 28px;display:flex;flex-direction:column}.trade-hero-art span{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.trade-hero-art strong{font-size:18px;margin-top:6px}.trade-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);margin:-20px clamp(20px,5vw,85px) 0;position:relative;z-index:3;background:white;box-shadow:0 15px 45px rgba(18,45,65,.13)}.trade-shortcuts a{height:105px;padding:14px;border-right:1px solid #dce1e4;display:flex;align-items:center;gap:14px;font-weight:750}.trade-shortcuts img{height:70px;width:85px;object-fit:cover}.trade-shortcuts a>svg:first-child{width:34px;margin-left:10px;color:#0b826a}.trade-shortcuts a>svg:last-child{width:16px;margin-left:auto}.trade-core{padding:110px clamp(20px,5vw,85px);display:grid;grid-template-columns:.65fr 1.35fr;gap:6vw}.trade-core>div:first-child h2{font-size:42px;line-height:1;margin:15px 0}.trade-core>div:first-child>p:last-child{font-size:14px;color:#687884;line-height:1.55}.trade-core>div:last-child{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #becbd1}.trade-core>div:last-child a{padding:30px;border-bottom:1px solid #becbd1;position:relative}.trade-core>div:last-child a:nth-child(odd){border-right:1px solid #becbd1}.trade-core span{font-size:11px;color:#0b826a}.trade-core h3{font-size:25px;margin:35px 0 10px}.trade-core p{font-size:13px;line-height:1.5;color:#687884}.trade-core svg{position:absolute;right:24px;top:24px;width:17px}.trade-dashboard{background:#e9eef1;padding:90px clamp(20px,5vw,85px)}.trade-stats{margin-top:65px;display:grid;grid-template-columns:repeat(4,1fr);background:#173f72;color:white}.trade-stats div{padding:28px;border-right:1px solid rgba(255,255,255,.17);display:flex;flex-direction:column}.trade-stats strong{font-size:34px;color:#f0bd62}.trade-stats span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-top:5px}.trade-info{padding:100px clamp(20px,5vw,85px);display:grid;grid-template-columns:1.4fr .6fr;gap:30px}.trade-info [data-slot=tabs-list]{background:#e3e8ea;margin-bottom:25px;height:auto;padding:5px}.trade-info [data-slot=tabs-trigger]{padding:12px 20px}.info-list{border-top:1px solid #bcc8ce}.info-list a{display:grid;grid-template-columns:120px 1fr 110px auto;align-items:center;gap:15px;padding:24px 0;border-bottom:1px solid #bcc8ce;font-style:normal}.info-list span,.info-list em{font-size:11px;color:#647984;font-style:normal}.info-list b{font-size:15px}.info-list svg{width:16px}.trade-info aside{background:#173f72;color:white;padding:25px}.trade-info aside img{width:100%;height:170px;object-fit:cover}.trade-info aside h3{font-size:26px;margin:24px 0 10px}.trade-info aside p{font-size:13px;line-height:1.5;color:#c0d0dc}.trade-info aside a{display:flex;align-items:center;gap:8px;margin-top:25px;color:#f0bd62;font-weight:700;font-size:13px}.trade-info aside svg{width:16px}.trade-page .career-callout{background:#d99d35;color:#102b47}.trade-page .career-callout>a{background:#173f72;color:white}

/* Civic concept */
.civic-page{--accent:#167b5b;--text:#284137;background:#f8faf6}.civic-page .concept-bar{background:#3b6f5d}.civic-page .site-header{height:100px;background:rgba(251,252,248,.96)}.civic-page .header-cta{border-radius:8px}.civic-hero{min-height:690px;padding:80px clamp(20px,7vw,120px);background:radial-gradient(circle at 80% 52%,rgba(72,172,125,.18),transparent 28%),linear-gradient(105deg,#fbfcf8,#e7f1e9);display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden}.civic-copy{max-width:650px}.civic-copy>p:first-child{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#9b7144}.civic-copy h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(53px,6vw,90px);line-height:.95;letter-spacing:-.04em;margin:18px 0}.civic-copy>p{font-size:17px;line-height:1.6}.civic-copy>a{margin-top:25px;border-radius:8px}.hero-dots{display:flex;gap:8px;margin-top:75px}.hero-dots span{width:22px;height:4px;background:#b7c8bd}.hero-dots span:first-child{width:60px;background:#98724c}.civic-orbit{position:relative;width:min(480px,40vw);aspect-ratio:1;margin:auto}.orbit-main{position:absolute;inset:13%;border-radius:50%;background:linear-gradient(145deg,#49b989,#1b6a50);color:white;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 30px 80px rgba(18,83,61,.2)}.orbit-main svg{width:65px;height:65px;margin-bottom:20px}.orbit-main span{text-align:center;font-family:Georgia,serif;font-size:35px;line-height:1}.orbit{position:absolute;border:8px solid #eaf2eb;background:white;color:#31795f;width:88px;height:88px;border-radius:50%;display:grid;place-items:center;box-shadow:0 8px 35px rgba(20,70,50,.13)}.orbit svg{width:28px}.o1{top:0;left:20%}.o2{right:0;top:50%}.o3{left:0;bottom:5%}.civic-services,.civic-updates{padding:clamp(75px,8vw,125px) clamp(20px,7vw,120px)}.civic-services>div:last-child{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.civic-services>div>a{padding:28px 25px;border:1px solid #d8e2db;background:white;border-radius:12px;position:relative;min-height:265px}.civic-services>div>a>span{width:52px;height:52px;background:#e2f1e8;color:#24785a;border-radius:50%;display:grid;place-items:center}.civic-services>div>a>span svg{width:22px}.civic-services h3{font-family:Georgia,serif;font-size:26px;font-weight:400;margin:35px 0 12px}.civic-services p{font-size:13px;color:#64766f;line-height:1.5}.civic-services a>svg{position:absolute;right:20px;bottom:20px;width:17px}.civic-most{padding:70px clamp(20px,7vw,120px);background:#315f50;color:white;display:grid;grid-template-columns:.6fr 1.4fr;gap:7vw}.civic-most>div:first-child p{text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:#b8d4c8}.civic-most>div:first-child h2{font-family:Georgia,serif;font-weight:400;font-size:43px;line-height:1.05}.civic-most>div:last-child{display:grid;grid-template-columns:1fr 1fr}.civic-most>div:last-child a{border-bottom:1px solid rgba(255,255,255,.24);padding:19px 4px;display:flex;justify-content:space-between;margin-right:20px;font-size:14px}.civic-most svg{width:16px}.civic-updates{background:#f1f5ef}.civic-updates [data-slot=tabs-list]{background:transparent;border-bottom:1px solid #bdccc3;border-radius:0;margin-bottom:35px;height:auto}.civic-updates [data-slot=tabs-trigger]{padding:12px 25px}.civic-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.civic-cards a{background:white;border:1px solid #d7e0da;border-radius:12px;min-height:250px;padding:28px;position:relative}.civic-cards span{font-size:11px;color:#7b8b83}.civic-cards h3{font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.2}.civic-cards p{font-size:11px;text-transform:uppercase;color:#1a7759;letter-spacing:.1em}.civic-cards svg{position:absolute;right:24px;bottom:22px;width:18px}.civic-roadmap{padding:100px clamp(20px,7vw,120px);display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.civic-roadmap>div p{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#9b7144}.civic-roadmap h2{font-family:Georgia,serif;font-weight:400;font-size:50px;line-height:1.05}.civic-roadmap ol{list-style:none;margin:0;padding:0;border-left:1px solid #9db7a8}.civic-roadmap li{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:10px 0 42px 35px;position:relative}.civic-roadmap li:before{content:"";position:absolute;left:-6px;top:13px;width:11px;height:11px;border-radius:50%;background:#2e8768}.civic-roadmap b{font-family:Georgia,serif;font-size:24px}.civic-roadmap span{font-size:14px;line-height:1.5;color:#63776d}.civic-contact{margin:0 clamp(20px,7vw,120px) 80px;background:#e3d4bb;padding:55px;display:flex;justify-content:space-between;align-items:end;gap:30px;border-radius:15px}.civic-contact h2{font-family:Georgia,serif;font-size:42px;font-weight:400;margin:0 0 12px}.civic-contact p{margin:0;color:#52665d}.civic-contact a{display:flex;gap:10px;align-items:center;border-bottom:1px solid;padding-bottom:6px;font-weight:750}.civic-contact svg{width:17px}

.not-found{min-height:100vh;display:grid;place-content:center;text-align:center}.not-found h1{font-family:Georgia,serif;font-size:60px}.not-found a{text-decoration:underline}
@media(max-width:1080px){.desktop-nav{display:none}.menu-trigger{display:grid!important}.site-header{justify-content:space-between}.header-tools{margin-left:auto}.tender-grid{grid-template-columns:repeat(3,1fr)}.industrial-activities,.audience-grid,.civic-services>div:last-child{grid-template-columns:repeat(2,1fr)}.trade-hero{grid-template-columns:1fr}.trade-hero-art{max-width:720px}.trade-core{grid-template-columns:1fr}.gateway-about{grid-template-columns:1.5fr 1fr 1fr}.site-footer{grid-template-columns:1.5fr 1fr 1fr}.site-footer>div:nth-child(4){grid-column:2/4}.footer-brand{grid-row:1/3}.civic-hero{grid-template-columns:1.15fr .85fr}}
@media(max-width:760px){.concept-bar{height:auto;min-height:44px}.concept-pills{overflow:auto;max-width:65vw}.concept-pills a{padding:7px 9px}.site-header{height:76px}.brand img{width:190px}.header-cta,.header-tools>button:not(.menu-trigger){display:none}.industrial-page .site-header.inverted{top:44px}.industrial-hero{height:720px;padding-bottom:90px}.hero-copy h1{font-size:56px}.hero-controls{left:20px;right:auto;bottom:28px}.ticker{grid-template-columns:auto 1fr}.ticker>a{display:none}.industrial-activities,.audience-grid,.gateway-services>div:last-child,.civic-services>div:last-child{grid-template-columns:1fr}.industrial-activities>a{min-height:240px}.tender-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.tender-card{min-width:78vw;scroll-snap-align:start}.filter-row{align-items:stretch;flex-direction:column}.filter-row>div{overflow:auto}.story-split{grid-template-columns:1fr}.story-split img{height:350px}.news-list>a{grid-template-columns:100px 1fr}.news-list>a>svg{display:none}.report-slide{basis:100%!important}.reports-carousel{margin:0}.reports-carousel button{display:none}.career-callout{align-items:start;flex-direction:column}.site-footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1;grid-row:auto}.site-footer>div:nth-child(4){grid-column:1/-1}.footer-bottom{gap:12px;flex-direction:column}.gateway-hero{min-height:650px;margin:16px;border-radius:25px}.gateway-copy h1{font-size:58px}.gateway-search button{display:none}.gateway-services>div>a{grid-template-columns:auto 1fr}.gateway-services>div>a>svg:last-child{display:none}.gateway-about{grid-template-columns:1fr 1fr}.gateway-about>div:first-child{grid-column:1/-1}.notice-grid,.civic-cards{grid-template-columns:1fr}.trade-hero{padding:60px 20px}.trade-hero-copy h1{font-size:52px}.trade-hero-art img{height:300px}.trade-shortcuts{grid-template-columns:1fr 1fr;margin:-10px 14px 0}.trade-shortcuts a{height:88px}.trade-shortcuts img{height:58px;width:65px}.trade-core>div:last-child{grid-template-columns:1fr}.trade-core>div:last-child a:nth-child(odd){border-right:0}.trade-stats{grid-template-columns:1fr 1fr}.trade-info{grid-template-columns:1fr}.info-list a{grid-template-columns:85px 1fr auto}.info-list em{display:none}.civic-hero{grid-template-columns:1fr;padding:65px 20px;min-height:740px}.civic-copy h1{font-size:57px}.civic-orbit{width:320px;max-width:90vw;margin-top:50px}.orbit{width:66px;height:66px}.orbit-main span{font-size:26px}.orbit-main svg{width:45px}.civic-most,.civic-roadmap{grid-template-columns:1fr}.civic-most>div:last-child{grid-template-columns:1fr}.civic-contact{padding:35px;align-items:start;flex-direction:column}.civic-contact h2{font-size:35px}}
@media(max-width:430px){.gallery-logo{width:240px}.brand img{width:174px}.concept-pills a{font-size:9px}.back-link{font-size:9px}.section-head{align-items:start;flex-direction:column}.section-head>a{align-self:flex-start}.report-card{height:260px;padding:20px}.gateway-about{grid-template-columns:1fr}.trade-shortcuts{grid-template-columns:1fr}.trade-shortcuts a{height:78px}.civic-copy h1,.gateway-copy h1,.hero-copy h1{font-size:50px}.civic-most>div:first-child h2{font-size:37px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Preserve the official TCP logo artwork exactly as supplied. */
.industrial-page .site-header.inverted .brand img{filter:none;background:transparent;padding:0}
.site-footer{background:#e7efe9;color:#173c31;border-top:1px solid rgba(9,42,33,.12)}
.footer-brand img{filter:none;background:transparent;padding:0;opacity:1}
.site-footer h3{color:#52766a}
.site-footer p{color:#526b62}
.footer-bottom{border-top-color:rgba(9,42,33,.16);color:#5a766c}
.industrial-page .site-header.inverted{background:#f8f8f4;border-bottom:1px solid rgba(7,17,40,.14)}
.industrial-page .site-header.inverted .desktop-nav,
.industrial-page .site-header.inverted .header-tools button{color:#071128}

/* Keep Gateway service-card content on one line at desktop widths. */
@media(min-width:761px){
  .gateway-services>div>a{grid-template-columns:auto minmax(150px,.45fr) minmax(0,1fr) auto;row-gap:0}
  .gateway-services>div>a>span{grid-row:auto}
  .gateway-services p{margin:0}
  .gateway-services>div>a>svg:last-child{justify-self:end}
}
@media(max-width:760px){
  .gateway-services>div>a>span{grid-row:1/3}
  .gateway-services p{grid-column:2}
}

/* Gateway procurement controls and card interactions. */
.gateway-tenders .section-head>a{
  border:1px solid rgba(23,59,54,.18);border-radius:999px;padding:11px 16px;
  background:#fff;box-shadow:0 8px 24px rgba(23,59,54,.07);
  transition:transform .25s ease,background-color .25s ease,color .25s ease,box-shadow .25s ease
}
.gateway-tenders .section-head>a:hover{
  transform:translateY(-2px);background:#173f37;color:#fff;box-shadow:0 12px 28px rgba(23,59,54,.18)
}
.gateway-tenders .filter-row label{
  border-color:rgba(23,59,54,.12);border-radius:999px;background:#f8fbf9;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7),0 8px 24px rgba(23,59,54,.05)
}
.gateway-tenders .filter-row label:focus-within{
  border-color:#4b9583;box-shadow:0 0 0 4px rgba(75,149,131,.13)
}
.gateway-tenders .filter-row>div{
  gap:3px;padding:5px;border:1px solid rgba(23,59,54,.1);border-radius:999px;background:#edf3f0
}
.gateway-tenders .filter-row button{
  border:0;border-radius:999px;padding:11px 19px;color:#31564d;background:transparent;white-space:nowrap;
  transition:background-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease
}
.gateway-tenders .filter-row button:hover{background:rgba(255,255,255,.78);color:#123c31}
.gateway-tenders .filter-row button[aria-pressed=true]{
  background:#173f37;color:#fff;box-shadow:0 6px 16px rgba(23,63,55,.2)
}
.gateway-tenders .filter-row button:active{transform:scale(.97)}
.gateway-tenders .tender-card{
  position:relative;overflow:hidden;border-color:rgba(23,59,54,.12);
  box-shadow:0 8px 25px rgba(23,59,54,.045);
  transition:transform .32s cubic-bezier(.2,.75,.2,1),box-shadow .32s ease,border-color .32s ease
}
.gateway-tenders .tender-card:before{
  content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#176b67,#91cbb7);
  transform:scaleX(0);transform-origin:left;transition:transform .32s ease;z-index:2
}
.gateway-tenders .tender-card img{transition:transform .5s cubic-bezier(.2,.75,.2,1)}
.gateway-tenders .tender-card b svg{transition:transform .25s ease}
.gateway-tenders .tender-card:hover{
  transform:translateY(-8px);border-color:rgba(23,107,103,.34);box-shadow:0 22px 50px rgba(23,59,54,.14)
}
.gateway-tenders .tender-card:hover:before{transform:scaleX(1)}
.gateway-tenders .tender-card:hover img{transform:scale(1.045)}
.gateway-tenders .tender-card:hover b svg{transform:translate(3px,-3px)}
@media(max-width:760px){
  .gateway-tenders .filter-row>div{width:max-content;max-width:100%}
}

/* Keep the Civic section action compact; card sizing belongs only to service cards. */
.civic-services{padding-top:clamp(64px,6vw,96px)}
.civic-services>.section-head>a{
  min-height:0;padding:0 0 7px;background:transparent;border:0;border-bottom:1px solid currentColor;
  border-radius:0;position:static
}
.civic-services>.section-head>a svg{position:static;right:auto;bottom:auto;width:16px}
.civic-services>.section-head p{font-size:11px;line-height:normal;color:var(--accent)}

/* A compact, modern report grid replaces the oversized single-slide treatment. */
.reports-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.reports-grid .report-card{
  height:auto;min-height:230px;border:1px solid rgba(9,42,33,.12);border-radius:16px;
  background:linear-gradient(145deg,#fff,#f5f8f6);padding:28px;position:relative;overflow:hidden;
  box-shadow:0 8px 28px rgba(10,43,34,.045);
  transition:transform .3s cubic-bezier(.2,.75,.2,1),box-shadow .3s ease,border-color .3s ease
}
.reports-grid .report-card:before{
  content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--accent),#a6d8c7);
  transform:scaleX(0);transform-origin:left;transition:transform .3s ease
}
.reports-grid .report-card>svg:first-child{
  width:42px;height:42px;padding:10px;border-radius:12px;background:rgba(23,107,103,.1);color:var(--accent)
}
.reports-grid .report-card>svg:last-child{transition:transform .25s ease;color:var(--accent)}
.reports-grid .report-card:hover{
  transform:translateY(-7px);border-color:color-mix(in srgb,var(--accent) 38%,transparent);
  box-shadow:0 22px 48px rgba(10,43,34,.13)
}
.reports-grid .report-card:hover:before{transform:scaleX(1)}
.reports-grid .report-card:hover>svg:last-child{transform:translate(3px,-3px)}
.reports-grid .report-card-2{background:linear-gradient(145deg,#eef7f3,#fff)}
.reports-grid .report-card-3{background:linear-gradient(145deg,#f7f6ee,#fff)}

/* Industrial activity tiles gain depth without disturbing the editorial grid. */
.industrial-activities>a{
  overflow:hidden;transition:background-color .28s ease,box-shadow .28s ease,transform .28s ease
}
.industrial-activities>a:before{
  content:"";position:absolute;inset:0 0 auto;height:3px;background:#51d2c6;
  transform:scaleX(0);transform-origin:left;transition:transform .3s ease
}
.industrial-activities>a>svg:not(:last-child),.industrial-activities h3,.industrial-activities>a>svg:last-child{
  transition:transform .28s ease,color .28s ease
}
.industrial-activities>a:hover{
  background:linear-gradient(145deg,rgba(81,210,198,.13),rgba(81,210,198,.035));
  box-shadow:inset 0 0 0 1px rgba(81,210,198,.22);transform:translateY(-5px)
}
.industrial-activities>a:hover:before{transform:scaleX(1)}
.industrial-activities>a:hover>svg:not(:last-child){transform:translateY(-5px) scale(1.08);color:#51d2c6}
.industrial-activities>a:hover h3{color:#65e0d5}
.industrial-activities>a:hover>svg:last-child{transform:translate(4px,-4px);color:#51d2c6}

@media(max-width:900px){.reports-grid{grid-template-columns:1fr}}

/* Industrial news is presented as an editorial story wall. */
.industrial-page .news-list{
  border:0;display:grid;grid-template-columns:minmax(0,1.22fr) minmax(320px,.78fr);
  grid-template-rows:repeat(2,minmax(178px,1fr));gap:14px
}
.industrial-page .news-list>a{
  position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;
  gap:0;min-height:190px;padding:28px;border:1px solid rgba(7,13,43,.11);border-radius:17px;
  background:linear-gradient(145deg,#f2f7f5,#fff);color:#070d2b;
  box-shadow:0 8px 30px rgba(7,13,43,.045);
  transition:transform .32s cubic-bezier(.2,.75,.2,1),box-shadow .32s ease,border-color .32s ease
}
.industrial-page .news-list>a:first-child{
  grid-row:1/3;min-height:385px;padding:36px;color:#fff;border-color:rgba(81,210,198,.18);
  background:
    radial-gradient(circle at 90% 10%,rgba(81,210,198,.18),transparent 35%),
    linear-gradient(145deg,#111b48,#070d2b 68%)
}
.industrial-page .news-list>a:before{
  content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#25c6b6,#8ce6dc);
  transform:scaleX(0);transform-origin:left;transition:transform .32s ease
}
.industrial-page .news-list span{
  display:flex;align-items:center;gap:9px;font-size:11px;font-weight:700;letter-spacing:.055em;
  text-transform:uppercase;color:#596c67
}
.industrial-page .news-list span b{
  display:inline-flex;margin:0;padding:7px 10px;border-radius:999px;background:#dff4ee;
  color:#087d70;font-size:10px;letter-spacing:.09em
}
.industrial-page .news-list>a:first-child span{color:rgba(255,255,255,.65)}
.industrial-page .news-list>a:first-child span b{background:rgba(81,210,198,.14);color:#68dfd4}
.industrial-page .news-list h3{
  max-width:860px;margin:auto 58px 0 0;font-size:clamp(23px,2.15vw,34px);line-height:1.12;
  letter-spacing:-.025em;font-weight:650
}
.industrial-page .news-list>a:first-child h3{font-size:clamp(38px,4.1vw,64px);line-height:1.02;letter-spacing:-.045em}
.industrial-page .news-list>a>svg{
  display:block;position:absolute;right:25px;bottom:24px;width:42px;height:42px;padding:12px;
  border-radius:50%;background:#fff;color:#070d2b;box-shadow:0 7px 18px rgba(7,13,43,.1);
  transition:transform .26s ease,background-color .26s ease,color .26s ease
}
.industrial-page .news-list>a:first-child>svg{background:#51d2c6;color:#071128;box-shadow:none}
.industrial-page .news-list>a:hover{
  transform:translateY(-7px);border-color:rgba(37,198,182,.38);box-shadow:0 22px 48px rgba(7,13,43,.14)
}
.industrial-page .news-list>a:hover:before{transform:scaleX(1)}
.industrial-page .news-list>a:hover>svg{transform:translate(4px,-4px);background:#070d2b;color:#fff}
.industrial-page .news-list>a:first-child:hover>svg{background:#76e4da;color:#071128}
@media(max-width:900px){
  .industrial-page .news-list{grid-template-columns:1fr;grid-template-rows:auto}
  .industrial-page .news-list>a:first-child{grid-row:auto;min-height:310px}
  .industrial-page .news-list>a{min-height:205px}
}
@media(max-width:520px){
  .industrial-page .news-list>a,.industrial-page .news-list>a:first-child{padding:24px;min-height:230px}
  .industrial-page .news-list>a:first-child{min-height:285px}
  .industrial-page .news-list h3{margin-right:46px;font-size:24px}
  .industrial-page .news-list>a:first-child h3{font-size:34px}
  .industrial-page .news-list>a>svg{right:21px;bottom:20px;width:38px;height:38px;padding:11px}
}
