/* geotehnica.ro – Carbon Skin Design System (tokens as on the design canvas) */

/* Figtree, self-hosted (no Google Fonts requests) */
@font-face{font-family:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/figtree-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/figtree-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Figtree;font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/figtree-latin-ext-400-italic.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Figtree;font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/figtree-latin-400-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/figtree-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/figtree-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/figtree-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/figtree-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:#ffffff;color:#151515;font-family:Figtree, Arial, sans-serif;-webkit-text-size-adjust:100%}
img{max-width:100%}
a{color:#183fe0}a:hover{color:#1233b8}
:focus-visible{outline:2px solid #183fe0;outline-offset:2px}
.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:#183fe0;color:#ffffff;padding:10px 16px;border-radius:4px;font-weight:600;text-decoration:none}
.skip-link:focus{top:12px;color:#ffffff}

.nav-link{color:#151515;text-decoration:none;font-weight:700;font-size:15px;padding:10px 4px}
.nav-link:hover,.nav-link[aria-current]{color:#183fe0}
.card-link{color:#183fe0;font-weight:600;text-decoration:none;font-size:15px}
.card-link:hover{color:#1233b8;text-decoration:underline}
.foot-link{color:#ffffff;text-decoration:none;font-size:15px}
.foot-link:hover{color:#6f8bf0}
.chip-link{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid #d8d8d8;border-radius:4px;color:#151515;text-decoration:none;font-weight:600;font-size:15px;background:#ffffff;font-family:inherit;cursor:pointer}
.chip-link:hover{border-color:#183fe0;color:#183fe0}
.chip-link[aria-current],.chip-link[aria-pressed=true]{border-color:#151515}
.tel-link{color:inherit;text-decoration:none}
.tel-link:hover{text-decoration:underline}
.adm-link{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:#8a8a8a;border-radius:4px}.adm-link:hover{color:#ffffff}

.mnav{display:none;margin-left:auto}
.mnav>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #d8d8d8;border-radius:4px;color:#151515}
.mnav>summary::-webkit-details-marker{display:none}
.mnav[open]>summary{border-color:#183fe0;color:#183fe0}
.mnav-panel{position:absolute;left:0;right:0;top:100%;background:#ffffff;border-bottom:1px solid #d8d8d8;box-shadow:0 8px 16px rgba(21,21,21,0.08);padding:8px 20px 16px;display:flex;flex-direction:column}
.mnav-link{display:flex;align-items:center;min-height:48px;color:#151515;text-decoration:none;font-weight:700;font-size:16px;border-bottom:1px solid #ececec}
.mnav-link[aria-current=page]{color:#183fe0}

/* hero and photo bands */
.hero-bg{background-size:cover;background-position:center right}
.hero-home{background-image:linear-gradient(90deg, rgba(21,21,21,0.86) 0%, rgba(21,21,21,0.72) 45%, rgba(21,21,21,0.30) 100%), url(../img/hero-1-1920.webp)}
.hero-a{background-image:linear-gradient(90deg, rgba(21,21,21,0.88) 0%, rgba(21,21,21,0.74) 50%, rgba(21,21,21,0.35) 100%), url(../img/hero-2-1920.webp)}
.hero-b{background-image:linear-gradient(90deg, rgba(21,21,21,0.88) 0%, rgba(21,21,21,0.74) 50%, rgba(21,21,21,0.35) 100%), url(../img/hero-1-1920.webp)}
.ring-photo{background-size:cover;background-position:center}
.ring-a{background-image:url(../img/hero-2-1920.webp)}
.ring-b{background-image:url(../img/hero-1-1920.webp)}
.ring-turbine{background-image:url(../img/hero-1-1920.webp);background-size:auto 130%;background-position:0% 30%}
details summary{cursor:pointer;list-style:none}
details summary::-webkit-details-marker{display:none}

/* forms (contact) */
.fld{display:flex;flex-direction:column;gap:6px;min-width:0}
.fld label{font-size:15px;font-weight:600}
.fld input,.fld select,.fld textarea{font:inherit;font-size:16px;color:#151515;background:#ffffff;border:1px solid #767676;border-radius:4px;padding:0 14px;min-height:48px;width:100%}
.fld textarea{padding:12px 14px;min-height:160px;resize:vertical;line-height:1.5}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:2px solid #183fe0;outline-offset:1px;border-color:#183fe0}
.fld [aria-invalid=true]{border-color:#a3220f}
.fld-err{font-size:14px;color:#a3220f;font-weight:600}
.hint{font-size:14px;color:#5c5c5c;line-height:1.45}
.req{color:#a14a0b}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.alert{border-radius:8px;padding:20px 24px;font-size:1rem;line-height:1.55}
.alert-err{background:#fbeae7;border:1px solid #e3b3aa}
.alert-ok{background:#e2eafd;border:1px solid #b9c8f7}

/* article body */
.prose{font-size:1.125rem;line-height:1.7;color:#151515}
.prose h2{font-size:1.625rem;line-height:1.25;font-weight:700;margin:48px 0 16px}
.prose h3{font-size:1.25rem;line-height:1.3;font-weight:700;margin:32px 0 12px}
.prose p{margin:0 0 20px}
.prose ul,.prose ol{margin:0 0 24px;padding-left:24px}
.prose li{margin:0 0 10px}
.prose figure{margin:40px 0}
.prose figure img{display:block;width:100%;height:auto;border-radius:4px}
.prose figure.wide{margin-left:-80px;margin-right:-80px}
.prose figcaption{font-size:15px;line-height:1.5;color:#5c5c5c;padding-top:10px}
.prose .table-wrap{overflow-x:auto;margin:0 0 24px}
.prose table{width:100%;border-collapse:collapse;font-size:1rem;line-height:1.5;min-width:560px}
.prose th{text-align:left;padding:12px 16px 12px 0;border-bottom:2px solid #151515}
.prose td{padding:12px 16px 12px 0;border-bottom:1px solid #d8d8d8;vertical-align:top}
.prose .gal{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.prose .gal a{display:block}
.prose .gal img{aspect-ratio:4/3;object-fit:cover}
.lightbox{border:0;padding:0;background:transparent;max-width:96vw;max-height:94vh}
.lightbox::backdrop{background:rgba(21,21,21,0.88)}
.lightbox img{display:block;max-width:96vw;max-height:86vh;width:auto;height:auto}
.lightbox p{color:#ffffff;margin:8px 0 0;font-size:15px}
.lightbox button{position:fixed;top:12px;right:12px;width:44px;height:44px;border:0;border-radius:4px;background:#ffffff;color:#151515;font:inherit;font-size:22px;cursor:pointer}

.js-only{display:none}
.js .js-only{display:flex}
[hidden]{display:none!important}

@media (max-width: 760px){
  .nav-links{display:none !important}
  .mnav{display:block}
  .hdr-cta{display:none !important}
  .hdr-in{padding:12px 20px !important}
  .sec-pad{padding:64px 20px !important}
  .hero-pad{padding:96px 20px 80px !important}
  .wordmark{font-size:3rem !important}
  .row-proj{grid-template-columns:1fr !important;gap:4px !important}
  .ring-hide{display:none !important}
  .form-grid,.c-grid{grid-template-columns:1fr !important}
  .c-grid>nav{position:static !important}
  .art-wide,.prose figure.wide{margin-left:0 !important;margin-right:0 !important}
  .prose .gal,.gal{grid-template-columns:1fr 1fr !important}
  .hero-home,.hero-b{background-image:linear-gradient(90deg, rgba(21,21,21,0.86) 0%, rgba(21,21,21,0.80) 100%), url(../img/hero-1-960.webp)}
  .hero-a{background-image:linear-gradient(90deg, rgba(21,21,21,0.88) 0%, rgba(21,21,21,0.80) 100%), url(../img/hero-2-960.webp)}
  .ring-a{background-image:url(../img/hero-2-960.webp)}
  .ring-b{background-image:url(../img/hero-1-960.webp)}
}
@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Servicii dropdown (desktop); the link itself goes to the services list on the home page */
.nav-dd{position:relative;display:flex}
.nav-dd-btn{display:inline-flex;align-items:center;gap:6px}
.nav-dd-btn svg{transition:transform 200ms ease}
.nav-dd-panel{position:absolute;left:-16px;top:100%;min-width:320px;background:#ffffff;border:1px solid #d8d8d8;border-radius:8px;box-shadow:0 8px 24px rgba(21,21,21,0.12);padding:8px;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity 200ms ease,visibility 200ms ease,transform 200ms ease;z-index:20}
.nav-dd-panel::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.nav-dd:hover .nav-dd-panel,.nav-dd:focus-within .nav-dd-panel{opacity:1;visibility:visible;transform:none}
.nav-dd:hover .nav-dd-btn svg,.nav-dd:focus-within .nav-dd-btn svg{transform:rotate(180deg)}
.nav-dd-link{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:4px;color:#151515;text-decoration:none}
.nav-dd-link strong{font-size:15px;font-weight:700}
.nav-dd-link span{font-size:14px;color:#5c5c5c;line-height:1.4}
.nav-dd-link:hover,.nav-dd-link:focus-visible{background:#e2eafd}
.nav-dd-link:hover strong,.nav-dd-link[aria-current] strong{color:#183fe0}
