/*
Theme Name: StemGuards
Theme URI: https://stemguards.gr/
Author: StemGuards Shipbrokers S.A.
Description: Custom theme for StemGuards Shipbrokers – independent dry bulk shipbrokers, Athens.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: All rights reserved
Text Domain: stemguards
*/

/* StemGuards Shipbrokers — shared site styles */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
.sg{font-family:'IBM Plex Sans',system-ui,sans-serif;color:#141B2D;background:#F5F4F0;-webkit-font-smoothing:antialiased;line-height:1.5}
.sg img{max-width:100%}
.serif{font-family:'Source Serif 4',Georgia,serif}
.mono{font-family:'IBM Plex Sans',system-ui,sans-serif;font-weight:600}
.wrap{max-width:1240px;margin:0 auto;padding:0 40px}
.eyebrow{font-family:'IBM Plex Sans',system-ui,sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:#5A6480;display:flex;align-items:center;gap:14px}
.eyebrow::before{content:"";width:32px;height:1px;background:#C2A06A}
.on-dark .eyebrow,.eyebrow.light{color:#AEB8D0}
.h1{font-family:'Source Serif 4',Georgia,serif;font-weight:500;font-size:64px;line-height:1.04;letter-spacing:-.015em;margin:0}
.h2{font-family:'Source Serif 4',Georgia,serif;font-weight:500;font-size:46px;line-height:1.08;letter-spacing:-.01em;margin:0;color:#0E1A3A}
.on-dark .h2,.on-dark .h1{color:#FFFFFF}
.h3{font-family:'Source Serif 4',Georgia,serif;font-weight:500;font-size:26px;line-height:1.2;margin:0;color:#0E1A3A}
.on-dark .h3{color:#FFFFFF}
.lead{font-size:18px;line-height:1.65;color:#3C4662;margin:0}
.on-dark .lead{color:#C9D0E2}
.body{font-size:16px;line-height:1.65;color:#3C4662;margin:0}
.on-dark .body{color:#C9D0E2}
.accent-it{font-style:italic;color:#C2A06A}
.sect{padding:112px 0}
.sect-sm{padding:80px 0}
.navy{background:#0E1A3A;color:#FFFFFF}
.navy2{background:#13245A;color:#FFFFFF}
.paper{background:#F5F4F0}
.white{background:#FFFFFF}
.rule{border:0;border-top:1px solid #D9D6CC;margin:0}

/* header */
.hdr{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid #E3E1DA}
.hdr-row{display:flex;align-items:center;justify-content:space-between;height:80px;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand .em{height:46px;width:auto}
.brand .wm{height:40px;width:auto}
.nav{display:flex;gap:32px}
.nav a{text-decoration:none;color:#1E2A48;font-size:14px;letter-spacing:.02em;padding:12px 0;border-bottom:2px solid transparent}
.nav a:hover{color:#0A1535;border-bottom-color:#C2A06A}
.nav a.cur{color:#0A1535;border-bottom-color:#13245A}
.menu-btn{display:none;background:none;border:1px solid #D6D3CA;width:48px;height:48px;border-radius:2px;align-items:center;justify-content:center;cursor:pointer;color:#13245A}
.mnav{border-top:1px solid #E3E1DA;background:#FFFFFF;padding:8px 20px 20px;display:flex;flex-direction:column}
.mnav a{padding:14px 0;border-bottom:1px solid #EEECE6;text-decoration:none;font-size:17px;color:#13245A}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;font-size:14px;font-weight:500;letter-spacing:.04em;text-decoration:none;border-radius:2px;transition:background .2s,color .2s,border-color .2s;cursor:pointer;font-family:inherit;border:0}
.btn-light{background:#FFFFFF;color:#0E1A3A}.btn-light:hover{background:#E9E6DD;color:#0E1A3A}
.btn-ghost{border:1px solid rgba(255,255,255,.4);color:#FFFFFF;background:transparent}.btn-ghost:hover{border-color:#FFFFFF;color:#FFFFFF}
.btn-navy{background:#13245A;color:#FFFFFF}.btn-navy:hover{background:#0A1535;color:#FFFFFF}
.btn-line{border:1px solid #13245A;color:#13245A;background:transparent}.btn-line:hover{background:#13245A;color:#FFFFFF}
.link-arrow{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:15px;font-weight:500;text-decoration:none;color:#13245A}
.link-arrow:hover{gap:14px}
.on-dark .link-arrow{color:#FFFFFF}

/* grids */
.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}
.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:start}
.head-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:end;margin-bottom:56px}

/* hero */
.hero{position:relative;overflow:hidden;background:#0E1A3A;color:#FFFFFF}
.hero-globe{position:absolute;right:-180px;top:50%;transform:translateY(-50%);width:880px;height:880px;pointer-events:none}
.hero-inner{position:relative;padding:120px 0 104px;max-width:640px;display:flex;flex-direction:column;gap:28px}
.legend{display:flex;flex-wrap:wrap;gap:22px;font-family:'IBM Plex Sans',system-ui,sans-serif;font-weight:500;font-size:13px;letter-spacing:.02em;color:#AEB8D0}
.legend span{display:inline-flex;align-items:center;gap:8px}
.dot{width:9px;height:9px;border-radius:50%;display:inline-block}
.page-hero{position:relative;overflow:hidden;background:#0E1A3A;color:#FFFFFF}
.page-hero .bgglobe{position:absolute;right:-260px;top:-140px;width:760px;height:760px;opacity:.55;pointer-events:none}
.page-hero-inner{position:relative;padding:104px 0 88px;max-width:760px;display:flex;flex-direction:column;gap:24px}
.crumb{font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:13.5px;color:#8F9BBB}
.crumb a{color:#AEB8D0;text-decoration:none}

/* proof bar */
.proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.proof>div{padding:40px 28px;border-left:1px solid #E3E1DA}
.proof>div:first-child{border-left:none;padding-left:0}
.num{font-family:'Source Serif 4',Georgia,serif;font-size:50px;line-height:1;color:#13245A}
.num small{font-size:30px}
.num-l{margin-top:12px;font-size:14px;color:#4A546E;line-height:1.5}

/* cards */
.card{background:#FFFFFF;border:1px solid #E3E1DA;padding:32px;display:flex;flex-direction:column;gap:16px}
.card-dark{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);padding:32px;display:flex;flex-direction:column;gap:16px}
.idx{font-family:'IBM Plex Sans',system-ui,sans-serif;font-weight:600;font-size:13px;color:#8A7550;letter-spacing:.1em;text-transform:uppercase}
.on-dark .idx,.card-dark .idx{color:#C2A06A}
.ico{width:44px;height:44px;border:1px solid #CFCBBF;display:flex;align-items:center;justify-content:center;color:#13245A;border-radius:2px}
.on-dark .ico,.card-dark .ico{border-color:rgba(255,255,255,.25);color:#E8D3A8}
.persona{position:relative;padding:44px;display:flex;flex-direction:column;gap:18px;min-height:360px;text-decoration:none;transition:transform .25s}
.persona:hover{transform:translateY(-3px)}
.ticks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.ticks li{display:flex;gap:12px;font-size:15.5px;line-height:1.55;color:#3C4662}
.ticks li::before{content:"";flex:0 0 14px;height:1px;background:#C2A06A;margin-top:12px}
.on-dark .ticks li,.card-dark .ticks li{color:#C9D0E2}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tag{font-size:12.5px;padding:7px 12px;border:1px solid #CFCBBF;border-radius:2px;color:#2A3554;background:#FFFFFF}
.on-dark .tag{background:transparent;border-color:rgba(255,255,255,.22);color:#DDE2EE}

/* rows */
.row{display:grid;grid-template-columns:88px minmax(0,1fr) minmax(0,1.15fr);gap:40px;padding:44px 0;border-top:1px solid #D9D6CC}
.row:last-child{border-bottom:1px solid #D9D6CC}
.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-top:1px solid rgba(255,255,255,.18)}
.step{padding:28px 24px 8px 0;display:flex;flex-direction:column;gap:12px;position:relative}
.step::before{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;background:#C2A06A;border-radius:50%}
.sector{display:flex;flex-direction:column;gap:10px;padding:28px 0;border-top:1px solid #D9D6CC}
.region{display:grid;grid-template-columns:200px minmax(0,1fr) minmax(0,1fr);gap:32px;padding:28px 0;border-top:1px solid rgba(255,255,255,.14);align-items:baseline}
.seg{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.6fr) 140px;gap:24px;padding:24px 0;border-top:1px solid #D9D6CC;align-items:baseline}
.badge{font-family:'IBM Plex Sans',system-ui,sans-serif;font-weight:500;font-size:12px;letter-spacing:.02em;padding:6px 10px;border-radius:2px;justify-self:start}
.badge-core{background:#13245A;color:#FFFFFF}
.badge-std{border:1px solid #CFCBBF;color:#4A546E}

/* team */
.person{background:#FFFFFF;border:1px solid #E3E1DA;display:flex;flex-direction:column}
.portrait{aspect-ratio:4/5;background:#E9E7E0;display:flex;align-items:center;justify-content:center;font-family:'Source Serif 4',serif;font-size:56px;color:#13245A;position:relative}
.portrait span{position:absolute;bottom:12px;left:12px;font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:12px;color:#8A8F9C}
.person-b{padding:24px;display:flex;flex-direction:column;gap:14px}
.person-b a{text-decoration:none;font-size:14px;color:#13245A}
.person-b a:hover{text-decoration:underline}

/* forms */
.field{display:flex;flex-direction:column;gap:8px}
.field label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#4A546E;font-weight:500}
.field input,.field textarea,.field select{font:inherit;font-size:15px;color:#141B2D;background:#FFFFFF;border:1px solid #CFCBBF;border-radius:2px;padding:12px 14px;min-height:48px;width:100%}
.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid #13245A;outline-offset:1px}
.field textarea{min-height:120px;resize:vertical}
.on-dark .field label{color:#B9C1D6}
.on-dark .field input,.on-dark .field textarea,.on-dark .field select{color:#FFFFFF;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.25)}
.fg2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.seg-tabs{display:flex;border:1px solid #CFCBBF;border-radius:2px;background:#FFFFFF;padding:4px;gap:4px}
.seg-tabs button{flex:1;min-height:44px;border:0;background:transparent;font:inherit;font-size:14px;font-weight:500;color:#4A546E;cursor:pointer;border-radius:2px}
.seg-tabs button.on{background:#13245A;color:#FFFFFF}
.subscribe{display:flex;gap:10px;flex-wrap:wrap}
.subscribe input{flex:1 1 240px;font:inherit;font-size:15px;min-height:48px;padding:0 14px;border-radius:2px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.06);color:#FFFFFF}

/* CTA band + footer */
.cta-band{background:#E9E7E0;color:#0E1A3A;border-top:1px solid #D9D6CC}
.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:32px 48px;flex-wrap:wrap;padding:72px 0}
.cta-text{max-width:620px;display:flex;flex-direction:column;gap:12px}
.cta-text .h2{font-size:40px}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap}
.foot{border-top:1px solid rgba(194,160,106,.35);background:#0A1330;color:#AEB8D0;padding:64px 0 32px;font-size:14.5px}
.foot a{color:#AEB8D0;text-decoration:none}.foot a:hover{color:#FFFFFF}
.foot-grid{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:48px}
.foot h4{margin:0 0 16px;font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:14px;letter-spacing:0;text-transform:none;color:#FFFFFF;font-weight:600}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;line-height:1.5}
.foot-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.foot-base{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid rgba(255,255,255,.12);padding-top:24px;margin-top:56px;font-size:13px;color:#8F9BBB}
.foot-base .motto{font-family:'Source Serif 4',Georgia,serif;font-style:italic;font-size:15px;color:#C9D0E2}

@media (max-width:1100px){
 .hero-globe{right:-360px;opacity:.7}
 .g4{grid-template-columns:repeat(2,minmax(0,1fr))}
 .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
 .row{grid-template-columns:64px minmax(0,1fr);gap:20px 24px}
 .row .row-b{grid-column:2}
 .seg{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
 .wrap{padding:0 20px}
 .nav,.hdr-cta{display:none !important}
 .menu-btn{display:inline-flex}
 .brand .wm{height:34px}.brand .em{height:40px}
 .h1{font-size:44px}
 .h2{font-size:34px}
 .sect{padding:72px 0}
 .sect-sm{padding:56px 0}
 .g2,.g3,.split,.head-row{grid-template-columns:minmax(0,1fr);gap:32px}
 .head-row{margin-bottom:36px}
 .hero-globe{position:relative;right:auto;top:auto;transform:none;width:118%;height:auto;margin:-40px -9% -30px;display:block;opacity:1}
 .hero-inner{padding:64px 0 24px}
 .page-hero .bgglobe{right:-340px;top:-60px;opacity:.35}
 .page-hero-inner{padding:72px 0 64px}
 .proof{grid-template-columns:repeat(2,minmax(0,1fr))}
 .proof>div{padding:28px 16px 28px 0;border-left:none;border-top:1px solid #E3E1DA}
 .persona{padding:32px 24px;min-height:0}
 .region{grid-template-columns:minmax(0,1fr);gap:8px}
 .fg2{grid-template-columns:minmax(0,1fr)}
 .card,.card-dark{padding:24px}
 .cta-inner{padding:56px 0}
 .cta-text .h2{font-size:30px}
}
@media (max-width:560px){
 .h1{font-size:38px}
 .g4,.steps{grid-template-columns:minmax(0,1fr)}
 .row{grid-template-columns:minmax(0,1fr)}
 .row .row-b{grid-column:1}
 .seg{grid-template-columns:minmax(0,1fr);gap:8px}
 .foot-grid{grid-template-columns:minmax(0,1fr)}
 .brand .wm{height:30px}
}

/* ---- page styles ---- */
@media (min-width:1101px){.hero-globe{right:-330px}}
.facts{display:flex;flex-direction:column}
.fact{display:grid;grid-template-columns:120px minmax(0,1fr);gap:24px;padding:22px 0;border-top:1px solid rgba(255,255,255,.14)}
.fact:last-child{border-bottom:1px solid rgba(255,255,255,.14)}
.fact dt{font-family:'IBM Plex Sans',system-ui,sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:#C2A06A;padding-top:3px}
.fact dd{margin:0;font-family:'Source Serif 4',Georgia,serif;font-size:20px;line-height:1.5;color:#FFFFFF}
.fact dd i{font-style:normal;color:#6F7DA3;padding:0 3px}
@media (max-width:560px){.fact{grid-template-columns:minmax(0,1fr);gap:8px}.fact dd{font-size:18px}}
.core{font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:12px;font-weight:500;color:#13245A;background:#EFEAE0;border:1px solid #D9CBB0;padding:3px 9px;border-radius:2px;margin-left:12px;vertical-align:middle;white-space:nowrap}
.regions .region{border-top-color:#D9D6CC;grid-template-columns:260px minmax(0,1fr) minmax(0,1fr)}
.regions .region h3{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.regions .region .core{margin-left:0}
@media (max-width:860px){.regions .region{grid-template-columns:minmax(0,1fr)}}
.regions .region:last-child{border-bottom:1px solid #D9D6CC}
.on-dark .seg{border-top-color:rgba(255,255,255,.16)}
.on-dark .seg:last-child{border-bottom:1px solid rgba(255,255,255,.16)}
.sizes-row{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1.8fr)}
@media (max-width:860px){.sizes-row{grid-template-columns:minmax(0,1fr);gap:6px}}
.reg-head{font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:13px;font-weight:600;color:#5A6480}
.paper .steps{border-top-color:#CFCBBF}

/* ---- WordPress integration ---- */
html{margin-top:0}
body{margin:0;background:#F5F4F0}
a{color:#13245A}a:hover{color:#0A1535}
.hdr{top:0}
.admin-bar .hdr{top:32px}
@media (max-width:782px){.admin-bar .hdr{top:46px}}
.sg-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-note{margin:0;font-size:15px;color:#13245A;background:#EFEAE0;border:1px solid #D9CBB0;padding:12px 14px;border-radius:2px}
a:focus-visible,button:focus-visible{outline:2px solid #C2A06A;outline-offset:2px}
[hidden]{display:none!important}
.wp-block-html{margin:0}
.sg-page>*:first-child{margin-top:0}
