/* GO NET srl — Base */
html{overflow-x:hidden}

body{
  font-family:var(--f-body);
  font-size:var(--ts-base);
  line-height:1.6;
  color:var(--text);
  background:var(--bg);
  overflow-x:hidden;
  letter-spacing:-.01em;
}

body.menu-open{overflow:hidden}
main{min-height:60vh}
section{position:relative}

img{width:100%;object-fit:cover}
img.site-logo-image,img.logo-watermark{width:auto}

::selection{background:rgba(56,189,248,.2);color:#fff}

a,button,input,textarea,select{
  transition:color var(--t-fast),background-color var(--t-fast),border-color var(--t-fast),box-shadow var(--t-fast);
}

.site-logo,.site-nav a,.btn,.text-link{-webkit-tap-highlight-color:transparent}

p{color:var(--text-2);line-height:1.7;max-width:65ch}
p+p{margin-top:.85rem}
strong{font-weight:600;color:var(--text)}
small{font-size:var(--ts-xs)}

/* Skip */
.skip-link{
  position:absolute;left:1rem;top:-3rem;z-index:9999;
  padding:.75rem 1.25rem;border-radius:var(--r-sm);
  background:var(--g-accent);color:#060910;font-weight:600;font-size:var(--ts-sm);
}
.skip-link:focus{top:1rem}

/* Eyebrow */
.eyebrow{
  display:inline-flex;align-items:center;gap:.5rem;
  margin-bottom:var(--s-sm);
  font-family:var(--f-body);font-size:.7rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--accent);
}
.eyebrow::before{
  content:"";width:20px;height:2px;
  background:var(--g-accent);border-radius:1px;
}
.eyebrow-light{color:rgba(56,189,248,.65)}
.eyebrow-light::before{background:rgba(56,189,248,.35)}

/* Headings */
h1,h2,h3,h4{
  font-family:var(--f-head);color:var(--text);
  letter-spacing:-.025em;text-wrap:balance;font-weight:600;
}
h1{font-size:clamp(1.85rem,4.5vw,3.2rem);line-height:1.06;font-weight:700}
h2{font-size:clamp(1.45rem,3vw,2.2rem);line-height:1.12}
h3{font-size:clamp(1.1rem,1.8vw,1.35rem);line-height:1.2}
h4{font-size:1.05rem;line-height:1.3}

.section-heading{max-width:680px;margin-bottom:var(--s-2x)}
.section-heading h2+p{margin-top:var(--s-xs)}
.section-heading p:last-child{margin-top:var(--s-md)}

/* Sections */
.section{padding:var(--s-4x) 0}
.section-muted{background:var(--bg-2)}
.section-dark{background:var(--g-cta);color:var(--text);overflow:hidden}

/* Watermark */
.logo-watermark{
  position:absolute;pointer-events:none;z-index:0;
  opacity:.018;width:480px;height:auto;max-width:none;
  right:-60px;top:50%;transform:translateY(-50%);
  filter:brightness(4) grayscale(1);
}
@media(max-width:767px){.logo-watermark{width:280px;right:-50px;opacity:.015}}

/* Page Hero */
.page-hero{
  padding-top:calc(var(--hh) + var(--s-2x));
  padding-bottom:var(--s-3x);
  background:var(--bg);
  border-bottom:1px solid var(--border);
  position:relative;overflow:hidden;
}
.page-hero-bg{position:absolute;inset:0;z-index:0}
.page-hero-bg img{width:100%;height:100%;object-fit:cover}
.page-hero-overlay{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(6,9,16,.82),rgba(6,9,16,.55) 40%,rgba(6,9,16,.9));
}
.page-hero .page-intro{max-width:700px;position:relative}
.page-hero .page-intro h1{max-width:16ch;text-shadow:0 2px 16px rgba(0,0,0,.5)}
.page-hero .page-intro p{margin-top:var(--s-md);font-size:var(--ts-md);color:rgba(255,255,255,.8);text-shadow:0 1px 6px rgba(0,0,0,.4)}
.page-hero .breadcrumb{max-width:700px;margin-bottom:var(--s-lg)}
.page-hero .breadcrumb li,.page-hero-simple .breadcrumb li{color:var(--text-2)}
.page-hero .breadcrumb a,.page-hero-simple .breadcrumb a{color:var(--text-2)}

@media(min-width:768px){
  .page-hero,.page-hero-simple{min-height:360px;display:flex;align-items:center}
  .page-hero .page-intro,.page-hero-simple .page-intro{max-width:700px;margin-inline:0}
  .page-hero .page-intro h1,.page-hero-simple .page-intro h1{margin-inline:0}
  .page-hero .page-intro p,.page-hero-simple .page-intro p{max-width:55ch;margin-inline:0}
}

/* Links */
.text-link{
  display:inline-flex;align-items:center;gap:.35rem;
  font-weight:500;font-size:var(--ts-sm);color:var(--accent);
}
.text-link::after{content:"\2192";font-size:.9em;transition:transform var(--t-base)}
.text-link:hover{color:var(--accent-2)}
.text-link:hover::after{transform:translateX(4px)}

.phone-link,.mail-link{font-weight:500;color:var(--accent)}
.phone-link:hover,.mail-link:hover{color:var(--accent-2)}

/* Lists */
.content-flow>*+*{margin-top:var(--s-md)}
.list-clean{display:grid;gap:var(--s-xs)}
.list-clean li{position:relative;padding-left:1.25rem;color:var(--text-2);line-height:1.65}
.list-clean li::before{
  content:"";position:absolute;left:0;top:.6rem;
  width:5px;height:5px;border-radius:50%;background:var(--accent);opacity:.7;
}

/* Image frame */
.image-frame{
  overflow:hidden;border-radius:var(--r-lg);
  background:var(--bg-3);box-shadow:var(--sh-media);border:1px solid var(--border);
}
.image-frame img{min-height:100%;transition:transform .6s var(--ease)}
.image-frame:hover img{transform:scale(1.02)}

/* Stacks */
.stack-lg>*+*{margin-top:var(--s-lg)}
.stack-xl>*+*{margin-top:var(--s-xl)}
