.nav-links .sub-menu {
  display: none;
}

.nav-links .menu-item-has-children.submenu-open .sub-menu {
  display: block;
}
/*
Theme Name: Geoteknikk Consult
Theme URI: https://geoteknikkconsult.no/
Author: Geoteknikk Consult AS
Description: Moderne, responsivt one-page WordPress-tema basert på innholdet fra Geoteknikk Consult AS.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: geoteknikk-consult
*/

:root{
  --ink:#142231;
  --muted:#5b6875;
  --line:#dbe2e8;
  --paper:#fff;
  --soft:#f3f6f8;
  --accent:#174f72;
  --accent2:#0d3d59;
  --light:#c9daf8;
  --max:1180px;
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:"Instrument Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}
a{color:inherit}
.container{width:min(calc(100% - 40px),var(--max));margin:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.logo{display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-weight:800}
.logo-mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:800;font-size:20px}
.nav-links{display:flex;align-items:center;gap:25px;list-style:none;margin:0;padding:0}
.nav-links a{text-decoration:none;font-weight:600;font-size:15px}
.nav-links a:hover{color:var(--accent)}
.burger{display:none;border:0;background:none;width:42px;height:42px;cursor:pointer}
.burger:before,.burger:after{content:"";display:block;width:22px;height:2px;background:var(--ink);margin:6px auto}
.hero{background:linear-gradient(135deg,#edf4f8 0%,#fff 58%,#e9f0f5 100%);padding:90px 0 80px}
.hero-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}
.hero h1{font-family:"Golos Text",system-ui,sans-serif;font-size:clamp(42px,5.5vw,70px);line-height:1.04;letter-spacing:-.04em;margin:0 0 25px}
.hero p{font-size:18px;color:var(--muted);max-width:760px}
.hero-img{min-height:420px;border-radius:30px;background:
 radial-gradient(circle at 25% 25%,rgba(255,255,255,.9) 0 7%,transparent 8%),
 linear-gradient(150deg,rgba(23,79,114,.95),rgba(13,61,89,.88));
 position:relative;overflow:hidden;box-shadow:0 25px 70px rgba(20,34,49,.15)}
.hero-img:after{content:"";position:absolute;inset:18% -10% -20% 18%;border:2px solid rgba(255,255,255,.25);border-radius:50%;transform:rotate(-18deg)}
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;text-decoration:none;border:0;border-radius:10px;padding:13px 22px;font-weight:700;cursor:pointer}
.btn:hover{background:var(--accent2)}
.btn--sm{padding:10px 18px}
.btn--full{width:100%}
.info-band{background:var(--ink);color:#fff;padding:55px 0}
.info-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}
.info-col h3{font-family:"Golos Text",sans-serif;margin:0 0 12px;font-size:22px}
.info-col p,.info-col li{color:#dbe4ea}
.info-col ul{padding-left:20px}
.section{padding:90px 0}
.section--alt{background:var(--soft)}
.section-title{font-family:"Golos Text",sans-serif;font-size:clamp(32px,4vw,50px);line-height:1.1;letter-spacing:-.03em;margin:0 0 38px}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-card{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;min-height:235px;transition:.2s ease;box-shadow:0 8px 25px rgba(20,34,49,.04)}
.service-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(20,34,49,.10)}
.service-card--wide{grid-column:span 2;display:flex;gap:25px;align-items:flex-start}
.service-icon{font-size:28px;margin-bottom:10px}
.service-card h3{font-family:"Golos Text",sans-serif;font-size:22px;line-height:1.2;margin:0 0 10px}
.service-card p{color:var(--muted);margin:0}
.cta-stripe{background:var(--accent);color:#fff}
.cta-stripe-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.projects-grid,.articles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.project-card,.article-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.project-img{height:190px;background:linear-gradient(145deg,#234f67,#b9c9d3);position:relative}
.pi--2{background:linear-gradient(145deg,#687f8e,#d5e1e8)}
.pi--3{background:linear-gradient(145deg,#315a71,#dfe8ed)}
.project-body,.article-card{padding:25px}
.project-body h3,.article-card h3{font-family:"Golos Text",sans-serif;font-size:22px;line-height:1.2;margin:10px 0}
.tag{display:inline-block;color:var(--accent);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.article-card p{color:var(--muted)}
.article-card a{font-weight:800;color:var(--accent);text-decoration:none}
.about-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:start}
.about-table{border-collapse:collapse;width:100%;border:1px solid var(--line)}
.about-table th,.about-table td{border:1px solid var(--line);padding:10px;text-align:left}
.about-table th{background:#f5f5f5}
.about-badges{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.badge{border:1px solid var(--line);background:#fff;border-radius:14px;padding:28px;text-align:center;font-weight:800}
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
.contact-list{list-style:none;padding:0;margin:30px 0 0}
.contact-list li{padding:15px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column}
.contact-list strong{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.contact-form{background:var(--soft);padding:30px;border-radius:var(--radius)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-group{margin-bottom:18px}
.form-group label{display:block;font-weight:700;margin-bottom:7px}
.form-group input,.form-group select,.form-group textarea{width:100%;border:1px solid #ccd5dc;border-radius:10px;background:#fff;padding:13px 14px;font:inherit}
.form-group textarea{resize:vertical}
.form-msg{margin:14px 0 0;font-weight:700}
.footer{background:#0f1c26;color:#dbe4ea;padding:60px 0 0}
.footer-inner{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}
.footer .logo{color:#fff}
.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}
.footer h4{color:#fff;margin:0 0 14px}
.footer ul{list-style:none;padding:0;margin:0}
.footer li{margin:8px 0}
.footer a{text-decoration:none}
.footer a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:50px;padding:20px 0}
@media(max-width:900px){
  .nav-links{display:none;position:absolute;left:20px;right:20px;top:76px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;flex-direction:column;align-items:flex-start;box-shadow:0 20px 50px rgba(0,0,0,.12)}
  .nav-links.is-open{display:flex}.burger{display:block}
  .hero-inner,.about-layout,.contact-layout{grid-template-columns:1fr}
  .hero-img{min-height:300px}
  .info-cols,.services-grid,.projects-grid,.articles-grid{grid-template-columns:1fr}
  .service-card--wide{grid-column:auto}
  .footer-inner{grid-template-columns:1fr}
}
@media(max-width:600px){
  .container{width:min(calc(100% - 28px),var(--max))}
  .hero{padding:60px 0}.section{padding:65px 0}
  .form-row,.footer-cols{grid-template-columns:1fr}
  .cta-stripe-inner{padding:25px 0;flex-direction:column;align-items:flex-start}
}
.nav-links > li {
  position: relative;
}

.nav-links > li.menu-item-has-children > .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  margin: 0;
  padding: 10px 0;
  min-width: 240px;
  background: #fff;
  z-index: 200;
}
.nav-links > li > a {
  display: flex;
  align-items: center;
  min-height: 76px;
}
.nav-links {
  align-items: flex-start;
}

.nav-links > li {
  align-self: flex-start;
}