:root{--navy:#101f35;--navy2:#192c47;--ink:#12243b;--muted:#576574;--line:#dce2e7;--lime:#c4eb79;--paper:#fff;--soft:#f4f6f8}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;line-height:1.6;background:var(--paper)}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid #85a62c;outline-offset:5px}
.skip{position:absolute;top:-100px;padding:12px;background:white;z-index:3}
.skip:focus{top:0}
.header{max-width:1440px;margin:auto;min-height:108px;padding:24px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:23px;letter-spacing:2px;line-height:1}
.brand-sub{display:block;font-size:12px;letter-spacing:3px;margin-top:7px}
.mark{display:grid;place-items:center;width:43px;height:47px;background:var(--navy);color:var(--lime);font-size:34px;font-weight:900;letter-spacing:-5px;padding-right:5px;border-top:5px solid var(--lime)}
nav{display:flex;gap:30px;font-size:14px;font-weight:600}
.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;padding:17px 23px;background:var(--navy);color:white;font-size:15px;font-weight:700;transition:background .2s,transform .2s}
.button:hover{background:#2d4666;transform:translateY(-2px)}
.button span{font-size:21px}
.button.small{padding:11px 18px;font-size:14px}
.hero{background:var(--navy);color:white;padding:80px max(6%,calc((100vw - 1268px)/2)) 70px;display:grid;grid-template-columns:1.1fr 1fr;gap:8%;overflow:hidden}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;margin:0 0 27px}
.hero .eyebrow{color:var(--lime)}
h1{font-size:clamp(56px,6.8vw,96px);line-height:1.02;letter-spacing:-5px;margin:0 0 28px;font-weight:500}
h1 em{font-style:normal;color:var(--lime)}
.intro{font-size:18px;line-height:1.75;max-width:520px;color:#c2cddd;margin-bottom:32px}
.lime{background:var(--lime);color:var(--navy)}
.lime:hover{background:#d5f7a0}
.text-link{display:inline-block;font-size:14px;margin:18px 0 0 24px;border-bottom:1px solid #607086}
.hero-note{font-size:13px;color:#a7b5c8;margin-top:47px}
.operations{border:1px solid #526177;align-self:center;background:linear-gradient(130deg,#213751,var(--navy));position:relative;box-shadow:20px 20px 0 #15273e}
.panel-head{padding:18px 22px;display:flex;justify-content:space-between;gap:16px;font-size:12px;letter-spacing:1.2px;border-bottom:1px solid #42526a;color:#c5cfdc}
.diagram{padding:36px 24px}
.network-label{text-align:center;letter-spacing:1.5px;font-size:12px;color:#ccd7e6}
.connector{height:33px;width:1px;background:#7f9275;margin:auto}
.core{border:1px solid #7f9275;background:#273e49;padding:24px;display:flex;align-items:center;justify-content:center;gap:20px;font-size:16px;font-weight:bold;letter-spacing:1px}
.core-k{font-size:38px;color:var(--lime);line-height:1}
.core small{display:block;font-size:12px;letter-spacing:0;font-weight:normal;color:#c0d0d8;margin-top:5px}
.bottom-label{font-size:12px;letter-spacing:1px}
.bottom-label span{padding:0 10px;color:var(--lime)}
.panel-foot{display:flex;border-top:1px solid #42526a;border-bottom:1px solid #42526a}
.panel-foot>div{flex:1;padding:17px 23px}
.panel-foot>div+div{border-left:1px solid #42526a}
.panel-foot span{display:block;font-size:12px;letter-spacing:1px;color:#bac8d9}
.panel-foot strong{font-size:17px;font-weight:normal}
.panel-caption{font-size:12px;line-height:1.8;color:#c4cddd;padding:0 23px;margin:20px 0}
.principles{background:var(--lime);padding:22px 6%;display:flex;justify-content:space-around;gap:24px;font-size:14px;font-weight:600}
.principles span+span{border-left:1px solid #94b257;padding-left:6%}
.section{padding:96px max(6%,calc((100vw - 1268px)/2))}
.section-heading{max-width:750px}
.section-heading .eyebrow,.approach .eyebrow{color:#556779}
h2{font-size:clamp(34px,3.5vw,50px);line-height:1.13;letter-spacing:-1.8px;margin:0 0 24px;font-weight:500}
.section-heading>p:last-child{max-width:590px;color:var(--muted)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.service-grid article{padding:30px 30px 32px 0}
.service-grid article+article{border-left:1px solid var(--line);padding-left:30px}
.number{font-family:monospace;font-size:14px;color:#5f7286}
h3{font-size:23px;line-height:1.3;font-weight:500;margin:24px 0 16px;letter-spacing:-.5px}
.service-grid p{font-size:16px;color:var(--muted);line-height:1.8}
.service-tag{font-size:12px;letter-spacing:1.3px;margin-top:34px;font-weight:700}
.approach{background:var(--soft);display:grid;grid-template-columns:1fr 1fr;gap:10%}
.section-intro{max-width:520px;color:var(--muted)}
.coverage{border-left:3px solid #8aa85c;padding-left:23px;margin-top:38px}
.coverage h3{font-size:18px;margin-bottom:12px}
.coverage p{font-size:14px;color:var(--muted)}
.steps{list-style:none;padding:0;margin:0}
.steps li{display:flex;gap:26px;padding:25px 0;border-bottom:1px solid #cdd5de}
.steps li:first-child{padding-top:0}
.steps li>span{font:14px monospace;margin-top:7px;color:#63768a}
.steps h3{margin:0 0 10px;font-size:23px}
.steps p{margin:0;color:var(--muted);font-size:15px}
.people{display:grid;grid-template-columns:1fr 1fr;gap:6%;margin-top:48px}
.people article{border-top:1px solid var(--line);padding-top:32px;display:flex;gap:24px}
.initial{flex-shrink:0;width:65px;height:74px;display:grid;place-items:center;background:var(--soft);font-size:30px}
.people h3{margin:0 0 9px}
.role{font-size:12px;font-weight:bold;letter-spacing:1.3px;color:#596f82}
.people p:last-child{color:var(--muted);font-size:15px;max-width:400px}
.contact{background:var(--navy);color:white;display:grid;grid-template-columns:1.15fr 1fr;gap:12%;padding:75px max(6%,calc((100vw - 1268px)/2))}
.contact .eyebrow{color:var(--lime)}
.contact h2{font-size:clamp(40px,4vw,57px)}
.contact>div>p:last-child{color:#c2cddd;max-width:520px}
.contact aside{padding-top:12px}
.contact h3{font-size:18px;margin:0 0 20px}
.contact ul{padding-left:19px;color:#c2cddd;font-size:15px}
.contact li{margin:10px 0}
.contact-status{font-size:14px;color:var(--lime);border-top:1px solid #526177;padding-top:22px;margin-top:26px}
footer{padding:32px 6%;display:flex;align-items:center;justify-content:space-between;gap:24px}
footer p,footer>span{font-size:12px;color:var(--muted)}
@media(min-width:1600px){.hero{gap:110px}
}
@media(max-width:1000px){.header{gap:18px}
nav{gap:18px}
.hero{gap:5%;padding-top:65px}
h1{letter-spacing:-3px}
.text-link{margin-left:0;display:block;width:max-content}
.panel-head{font-size:12px}
.core{padding:22px 14px;font-size:13px}
.bottom-label{font-size:12px}
.section{padding-top:70px;padding-bottom:70px}
.approach{gap:6%}
.contact{gap:6%}
.brand{font-size:20px}
}
@media(max-width:720px){.header{min-height:89px;padding:20px 5%;flex-wrap:wrap}
nav{order:3;width:100%;justify-content:space-between;padding-top:12px;border-top:1px solid var(--line)}
.header .button{font-size:12px;gap:10px;padding:10px}
.brand{font-size:18px}
.mark{width:34px;height:39px;font-size:29px}
.brand-sub{font-size:12px}
.hero{grid-template-columns:1fr;padding:55px 6%;gap:45px}
h1{font-size:65px}
.intro{font-size:17px}
.hero-note{margin-top:30px}
.text-link{display:inline-block;margin-left:18px;font-size:12px}
.operations{max-width:480px;width:100%;box-shadow:9px 9px 0 #253750}
.panel-head{font-size:12px}
.core{font-size:15px}
.bottom-label{font-size:12px}
.principles{padding:18px 6%;flex-direction:column;gap:8px;font-size:13px}
.principles span+span{padding-left:0;border:0}
.section{padding:60px 6%}
.service-grid{grid-template-columns:1fr;margin-top:32px}
.service-grid article,.service-grid article+article{border-left:0;padding:25px 0}
.service-grid article+article{border-top:1px solid var(--line)}
.service-grid h3 br{display:none}
.service-tag{margin-top:20px}
.approach{grid-template-columns:1fr;gap:38px}
.people{grid-template-columns:1fr;gap:30px;margin-top:30px}
.contact{grid-template-columns:1fr;padding:55px 6%;gap:25px}
footer{flex-wrap:wrap;padding:28px 6%}
footer p{display:none}
.eyebrow{font-size:12px;letter-spacing:1.4px}
h2{letter-spacing:-1px}
.service-grid p,.steps p,.people p:last-child{font-size:16px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
.button{transition:none}
}


/* Kulla watchtower identity */
.brand-icon{display:block;width:52px;height:62px;object-fit:contain;flex-shrink:0}

.core-logo{display:grid;place-items:center;flex-shrink:0;background:#fff;border-radius:4px;width:62px;height:72px}

.core-logo img{display:block;object-fit:contain;width:62px;height:72px}

@media(max-width:720px){.brand-icon{width:42px;height:52px}
.brand{gap:6px}
.people h3{font-size:22px}
}

