:root{--navy:#081a2f;--navy2:#102b49;--blue:#0a66a8;--accent:#2b6ea6;--accent2:#3d84c6;--white:#fff;--ink:#172333;--muted:#647184;--light:#f4f7fa;--line:#dce4eb;--shadow:0 20px 55px rgba(8,26,47,.13);--radius:18px;--container:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Georgia,"Times New Roman",serif;color:var(--ink);background:#fff;line-height:1.65}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.container{width:min(var(--container),calc(100% - 40px));margin:auto}.skip-link{position:fixed;left:12px;top:-80px;background:#fff;padding:12px 18px;z-index:9999}.skip-link:focus{top:12px}.site-header{position:fixed;inset:0 0 auto;z-index:1000;padding:16px 0;transition:.3s}.site-header.scrolled{background:rgba(8,26,47,.96);box-shadow:0 10px 30px rgba(0,0,0,.15);padding:10px 0;backdrop-filter:blur(14px)}.header-inner{display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;color:#fff;min-width:max-content}.brand img{width:58px;height:58px;object-fit:contain;border-radius:50%}.brand span{display:flex;flex-direction:column;line-height:1.15}.main-nav{display:flex;align-items:center;gap:25px;margin-left:auto}.main-nav a{color:#fff;font-weight:600;font-size:.91rem;position:relative}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--accent);transition:.25s}.main-nav a:hover:after{right:0}.header-actions{display:flex;align-items:center;gap:14px}.language-switcher{display:flex;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:3px}.language-switcher button{border:0;background:transparent;color:#fff;padding:6px 9px;border-radius:999px;cursor:pointer;font-size:.75rem;font-weight:700}.language-switcher button.active{background:#fff;color:var(--navy)}.button{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--blue),var(--accent2));color:#fff;font-weight:800;border:0;border-radius:999px;padding:14px 23px;cursor:pointer;transition:.25s;box-shadow:0 10px 25px rgba(10,102,168,.28)}.button:hover{transform:translateY(-2px);filter:brightness(1.06)}.button-small{padding:10px 16px;font-size:.83rem}.button-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55);box-shadow:none}.button-ghost:hover{background:#fff;color:var(--navy)}.menu-toggle{display:none;margin-left:auto;width:44px;height:44px;border:1px solid rgba(255,255,255,.25);background:transparent;border-radius:10px;padding:10px;cursor:pointer}.menu-toggle span{display:block;height:2px;background:#fff;margin:5px 0}.hero{min-height:760px;height:100vh;max-height:920px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url("../images/HeraklionCranes.jpg") center/cover no-repeat;transform:scale(1.02)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,19,36,.94) 0%,rgba(4,19,36,.74) 48%,rgba(4,19,36,.27) 100%)}.hero-content{position:relative;z-index:2;padding-top:70px}.eyebrow,.kicker{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:800;color:var(--accent)}.eyebrow span:first-child{width:42px;height:2px;background:var(--accent)}.hero p{max-width:720px;font-size:clamp(1rem,1.5vw,1.25rem);color:rgba(255,255,255,.84)}.hero-buttons{display:flex;gap:14px;margin-top:34px}.hero-trust{display:flex;gap:50px;margin-top:62px;padding-top:25px;border-top:1px solid rgba(255,255,255,.2);max-width:820px}.hero-trust div{display:flex;flex-direction:column}.hero-trust strong{font:700 1.5rem Montserrat;color:#fff}.hero-trust span{font-size:.8rem;color:rgba(255,255,255,.68)}.scroll-hint{position:absolute;z-index:2;bottom:22px;left:50%;color:#fff;font-size:1.5rem;animation:bounce 1.8s infinite}@keyframes bounce{50%{transform:translateY(8px)}}.section{padding:105px 0}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end;margin-bottom:45px}.section h2{font:700 clamp(2rem,4vw,3.45rem)/1.12 Georgia,"Times New Roman",serif;margin:12px 0 0;color:var(--navy)}.section-heading p{color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{padding:34px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);transition:.28s;min-height:260px}.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow);border-color:transparent}.service-card .icon{width:52px;height:52px;border-radius:14px;background:var(--light);color:var(--blue);display:grid;place-items:center;font-size:1.7rem;font-weight:700}.service-card h3{font:700 1.12rem Montserrat;color:var(--navy);margin:24px 0 12px}.service-card p{font-size:.93rem;color:var(--muted);margin:0}.expertise{background:var(--navy);color:#fff;overflow:hidden}.expertise-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.expertise h2{color:#fff}.expertise-copy>p{color:rgba(255,255,255,.72);font-size:1.03rem}.check-list{list-style:none;padding:0;margin:28px 0}.check-list li{position:relative;padding:10px 0 10px 30px;border-bottom:1px solid rgba(255,255,255,.1)}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:800}.text-link{color:var(--accent);font-weight:700}.certification-card{background:#fff;color:var(--ink);border-radius:26px;padding:42px;box-shadow:0 30px 80px rgba(0,0,0,.25);display:grid;grid-template-columns:150px 1fr;gap:30px;align-items:center}.certification-card img{width:150px}.certification-card h3{font:700 1.45rem Montserrat;color:var(--navy);margin:8px 0}.certification-card p{color:var(--muted);margin:0}.process{background:var(--light)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}.process-step{padding:35px 30px;border-right:1px solid var(--line)}.process-step:last-child{border-right:0}.process-step>span{font:800 2.2rem Montserrat;color:rgba(10,102,168,.2)}.process-step h3{font:700 1.1rem Montserrat;color:var(--navy);margin:15px 0 8px}.process-step p{color:var(--muted);font-size:.9rem}.logo-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.logo-grid img{width:100%;height:118px;object-fit:contain;padding:18px;border:1px solid var(--line);border-radius:14px;filter:grayscale(1);opacity:.75;transition:.25s}.logo-grid img:hover{filter:none;opacity:1;transform:translateY(-4px)}.contact{padding-bottom:0;background:#fff}.contact-copy>p{color:var(--muted)}.contact-details{display:grid;gap:14px;margin-top:28px}.contact-details>a,.contact-details>div{display:flex;align-items:flex-start;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}.contact-details>*>span{width:40px;height:40px;border-radius:12px;background:var(--light);display:grid;place-items:center;color:var(--blue)}.contact-details div div,.contact-details a div{display:flex;flex-direction:column}.contact-details small{color:var(--muted)}.contact-details strong{font-size:.92rem;color:var(--navy)}.contact-form{background:var(--light);padding:34px;border-radius:22px}.contact-form label{display:flex;flex-direction:column;gap:7px;font-size:.82rem;font-weight:700;color:var(--navy);margin-bottom:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:13px;outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(10,102,168,.1)}.form-note{font-size:.75rem;color:var(--muted)}.map-wrap{height:390px}.map-wrap iframe{width:100%;height:100%;border:0}.site-footer{background:#061423;color:rgba(255,255,255,.72);padding:65px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr .6fr .9fr;gap:70px}.brand-footer{margin-bottom:20px}.footer-grid h3{color:#fff;font:700 .9rem Montserrat;text-transform:uppercase;letter-spacing:.1em}.footer-grid>div{display:flex;flex-direction:column;gap:9px}.footer-grid p{max-width:390px}.footer-grid a:hover{color:var(--accent)}.footer-bottom{margin-top:45px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;font-size:.8rem}.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.main-nav,.header-actions .button{display:none}.menu-toggle{display:block}.header-actions{margin-left:auto}.header-inner{gap:14px}.hero{min-height:720px}.service-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.process-step{border-bottom:1px solid var(--line)}.logo-grid{grid-template-columns:repeat(3,1fr)}.certification-card{max-width:680px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:640px){.container{width:min(100% - 28px,var(--container))}.site-header{padding:10px 0}.brand img{width:48px;height:48px}.language-switcher{position:absolute;right:62px}.hero{min-height:760px;height:auto;padding:160px 0 90px}.hero-buttons,.hero-trust{flex-direction:column;align-items:stretch}.hero-trust{gap:18px;margin-top:40px}.button{width:100%}.section{padding:75px 0}.section-heading{gap:20px}.service-grid,.process-grid,.form-row,.footer-grid{grid-template-columns:1fr}.process-step{border-right:0}.certification-card{grid-template-columns:1fr;padding:30px}.certification-card img{width:120px}.logo-grid{grid-template-columns:repeat(2,1fr)}.contact-form{padding:22px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.scroll-hint{animation:none}}



.brand img{border-radius:9px}.brand-footer strong{font-size:1.25rem}.button{background:linear-gradient(135deg,var(--blue),var(--accent2));color:#fff}.button:hover{box-shadow:0 14px 30px rgba(10,102,168,.28)}
.resource-hero{min-height:500px;padding:170px 0 90px;background:linear-gradient(100deg,rgba(4,19,36,.96),rgba(10,102,168,.78)),url("../images/HeraklionTerminal.jpg") center/cover;color:#fff}.resource-hero h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.05;margin:18px 0 22px;max-width:900px}.resource-hero p{max-width:760px;color:rgba(255,255,255,.84);font-size:1.08rem}.resource-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.resource-nav a{border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);padding:9px 14px;border-radius:999px;font-weight:700;font-size:.85rem}.resource-section{padding:82px 0}.resource-section:nth-child(even){background:var(--light)}.resource-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.resource-section-head h2{margin:8px 0 0;font-size:clamp(1.8rem,3vw,2.7rem)}.resource-section-head p{max-width:600px;color:var(--muted);margin:0}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.resource-card{display:flex;flex-direction:column;min-height:240px;padding:27px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 28px rgba(8,26,47,.05);transition:.25s}.resource-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:transparent}.resource-card .resource-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:var(--light);color:var(--blue);font-size:1.35rem;font-weight:700}.resource-card h3{color:var(--navy);font-size:1.14rem;margin:20px 0 8px}.resource-card p{color:var(--muted);font-size:.92rem;margin:0 0 20px}.resource-card a{margin-top:auto;color:var(--blue);font-weight:700}.resource-disclaimer{padding:25px;border-left:4px solid var(--blue);background:#eef5fb;border-radius:0 15px 15px 0;color:#46566a}.resource-disclaimer strong{color:var(--navy)}
@media(max-width:900px){.resource-grid{grid-template-columns:repeat(2,1fr)}.resource-section-head{display:block}.resource-section-head p{margin-top:14px}}
@media(max-width:600px){.resource-grid{grid-template-columns:1fr}.resource-hero{padding-top:145px}.resource-section{padding:62px 0}}



.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:235px;gap:18px}
.photo-card{position:relative;overflow:hidden;margin:0;border-radius:18px;background:var(--navy);box-shadow:0 14px 35px rgba(8,26,47,.12)}
.photo-card-wide{grid-column:span 2}
.photo-card img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .45s ease}
.photo-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(4,19,36,.9));pointer-events:none}
.photo-card figcaption{position:absolute;z-index:2;left:23px;right:20px;bottom:17px;color:#fff;font-weight:700;font-size:1rem;line-height:1.25;text-shadow:0 2px 10px rgba(0,0,0,.55)}
.photo-card:hover img{transform:scale(1.045);filter:saturate(1.06)}

.resource-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:540px;padding:165px 0 95px;background:url("../images/HeraklionCranes.jpg") center 48%/cover no-repeat;color:#fff}
.resource-hero:before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(100deg,rgba(4,19,36,.96) 0%,rgba(8,42,72,.89) 48%,rgba(10,102,168,.64) 100%)}
.resource-hero:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(8,26,47,.12),rgba(8,26,47,.4))}
.resource-hero .container{position:relative}
.resource-hero .container>div,.resource-hero .container{color:#fff}
.resource-hero h1{color:#fff!important;text-shadow:0 3px 22px rgba(0,0,0,.42);max-width:920px}
.resource-hero p{color:rgba(255,255,255,.92);text-shadow:0 2px 12px rgba(0,0,0,.35)}
.resource-hero .kicker{color:#9bc9ef;background:rgba(4,19,36,.38);border:1px solid rgba(255,255,255,.18);padding:7px 12px;border-radius:999px;backdrop-filter:blur(6px)}
.resource-nav a{color:#fff;background:rgba(4,19,36,.46);border-color:rgba(255,255,255,.36);backdrop-filter:blur(7px)}
.resource-nav a:hover{background:rgba(43,110,166,.9);border-color:transparent}
@media(max-width:900px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}.photo-card-wide{grid-column:span 2}}
@media(max-width:600px){.photo-grid{grid-template-columns:1fr;grid-auto-rows:230px}.photo-card-wide{grid-column:span 1}.resource-hero{min-height:520px;padding:145px 0 75px;background-position:60% center}}


/* ASTAMCO 2026.1 — unified logo corners */
.brand img{border-radius:9px}


/* ASTAMCO 2026.1 — mobile header: language selector and menu never overlap */
@media (max-width: 640px){
  .header-inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    align-items:center;
    gap:8px;
  }
  .brand{
    min-width:0;
    overflow:hidden;
  }
  .brand span{
    min-width:0;
  }
  
  .header-actions{
    position:static;
    margin:0;
    display:flex;
  }
  .language-switcher{
    position:static;
    right:auto;
    flex:0 0 auto;
  }
  .language-switcher button{
    padding:5px 7px;
    min-width:30px;
  }
  .menu-toggle{
    position:static;
    margin:0;
    flex:0 0 44px;
  }
  
}
@media (max-width: 390px){
  
  .brand img{width:44px;height:44px}
  .language-switcher button{padding:4px 6px;min-width:27px}
  .menu-toggle{width:42px;height:42px;flex-basis:42px}
}

/* Integrated Useful Links section on the one-page website */
.resource-hero-inline{
  min-height:480px;
  scroll-margin-top:78px;
}

/* ASTAMCO 2026.1 — unified card system and browser-safe navigation arrows */
html{
  scroll-padding-top:74px;
}

main > .page-panel{
  position:relative;
  box-sizing:border-box;
  min-height:auto;
  display:flex;
  align-items:center;
  padding-top:92px;
  padding-bottom:92px;
  scroll-margin-top:74px;
}

main > .hero.page-panel{
  min-height:100svh;
  padding:120px 0 96px;
}

main > .resource-hero.page-panel{
  min-height:auto;
  padding-top:118px;
  padding-bottom:94px;
}

main > .resource-section.page-panel,
main > .contact.page-panel{
  min-height:auto;
  padding-top:88px;
  padding-bottom:90px;
}

main > .page-panel > .container{
  width:min(var(--container),calc(100% - 40px));
}

/* Shared layout language for Clients and Useful Links */
.cards-section .section-heading,
.cards-section .resource-heading{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
  align-items:end;
  gap:48px;
  margin-bottom:38px;
}

.cards-section .section-heading h2,
.cards-section .resource-heading h2{
  margin:0;
}

.cards-section .section-heading p,
.cards-section .resource-heading p{
  margin:0;
  max-width:560px;
  justify-self:end;
}

/* Client cards now use the same visual system as link cards */
.logo-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}

.client-card{
  min-height:250px;
  padding:26px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:0 10px 30px rgba(8,26,47,.06);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}

.client-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow);
  border-color:transparent;
}

.client-logo-wrap{
  width:100%;
  min-height:132px;
  padding:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f5f8fb;
  border-radius:14px;
}

.client-logo-wrap img{
  width:100%;
  max-width:190px;
  height:94px;
  object-fit:contain;
  padding:0;
  border:0;
  border-radius:0;
  box-shadow:none;
  filter:grayscale(1);
  opacity:.82;
  transition:filter .25s ease,opacity .25s ease,transform .25s ease;
}

.client-card:hover .client-logo-wrap img{
  filter:none;
  opacity:1;
  transform:scale(1.035);
}

.client-card-content{
  width:100%;
}

.client-card-content h3{
  margin:0 0 8px;
  font-size:1.18rem;
  line-height:1.25;
  color:var(--navy);
}

.client-card-content p{
  margin:0;
  color:var(--muted);
  line-height:1.55;
}

/* The arrow is fixed inside the section's lower-right corner */
.section-scroll-hint{
  position:absolute;
  z-index:20;
  right:24px;
  bottom:18px;
  left:auto;
  width:42px;
  height:42px;
  transform:none;
  display:grid;
  place-items:center;
  border:1px solid rgba(8,26,47,.24);
  border-radius:50%;
  background:rgba(255,255,255,.96);
  color:var(--navy);
  font-size:1.25rem;
  line-height:1;
  box-shadow:0 8px 22px rgba(8,26,47,.14);
  backdrop-filter:blur(8px);
  animation:sectionArrowBounce 1.8s infinite;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}

.hero .section-scroll-hint,
.expertise .section-scroll-hint,
.resource-hero .section-scroll-hint{
  color:#fff;
  background:rgba(4,19,36,.5);
  border-color:rgba(255,255,255,.5);
}

.section-scroll-hint:hover{
  background:var(--blue);
  color:#fff;
  border-color:var(--blue);
  transform:translateY(-2px);
}

@keyframes sectionArrowBounce{
  50%{transform:translateY(5px)}
}

.main-nav a.active:after{
  right:0;
}

@media(max-width:1000px){
  .cards-section .section-heading,
  .cards-section .resource-heading{
    grid-template-columns:1fr;
    gap:18px;
  }

  .cards-section .section-heading p,
  .cards-section .resource-heading p{
    justify-self:start;
  }

  .logo-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:700px){
  main > .page-panel,
  main > .resource-hero.page-panel,
  main > .resource-section.page-panel,
  main > .contact.page-panel{
    padding-top:80px;
    padding-bottom:84px;
  }

  main > .hero.page-panel{
    min-height:100svh;
    padding:118px 0 92px;
  }

  main > .page-panel > .container{
    width:min(var(--container),calc(100% - 28px));
  }

  .logo-grid{
    grid-template-columns:1fr;
  }

  .client-card{
    min-height:auto;
  }

  .section-scroll-hint{
    right:14px;
    bottom:14px;
    width:40px;
    height:40px;
  }
}

@media(prefers-reduced-motion:reduce){
  .section-scroll-hint{animation:none}
}

/* ASTAMCO 2026.1 — correct Contact structure on desktop and mobile */

/* The Contact section has both a content container and a map.
   It must stack them vertically, not treat them as flex columns. */
main > .contact.page-panel{
  display:block;
  min-height:auto;
  padding-top:92px;
  padding-bottom:0;
  overflow:hidden;
}

/* Desktop: contact information + form in two columns */


.contact-copy,
.contact-form,
.contact-details,
.contact-details > *,
.contact-details > * > div,
.form-row > *{
  min-width:0;
}

.contact-details strong,
.contact-details a,
.contact-details div{
  overflow-wrap:anywhere;
}

/* The map always occupies a separate full-width row below Contact */
.contact > .map-wrap{
  display:block;
  position:relative;
  width:100%;
  max-width:100%;
  height:390px;
  margin:0;
  overflow:hidden;
}

.contact > .map-wrap iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
}

/* Keep the Contact arrow visible within the section */
.contact > .section-scroll-hint{
  right:24px;
  bottom:18px;
}

/* Tablet and mobile: everything becomes one clean column */
@media(max-width:980px){
  

  .contact-copy,
  .contact-form{
    width:100%;
    max-width:none;
  }

  .contact > .map-wrap{
    height:340px;
  }
}

@media(max-width:700px){
  html,
  body{
    max-width:100%;
    overflow-x:hidden;
  }

  main > .contact.page-panel{
    padding-top:80px;
  }

  

  .contact-copy > p{
    font-size:1rem;
    line-height:1.55;
  }

  .contact-details{
    width:100%;
  }

  .contact-details > a,
  .contact-details > div{
    width:100%;
    gap:14px;
    padding:18px 0;
  }

  .contact-details > a > span,
  .contact-details > div > span{
    flex:0 0 40px;
  }

  .contact-details > a > div,
  .contact-details > div > div{
    flex:1 1 auto;
    min-width:0;
  }

  .contact-details strong{
    display:block;
    max-width:100%;
    font-size:1rem;
    line-height:1.5;
  }

  .contact-form{
    width:100%;
    padding:20px;
    border-radius:18px;
    overflow:hidden;
  }

  .form-row{
    grid-template-columns:minmax(0,1fr);
    gap:0;
  }

  .contact-form input,
  .contact-form select,
  .contact-form textarea{
    min-width:0;
    max-width:100%;
  }

  .contact > .map-wrap{
    width:100%;
    max-width:100%;
    height:300px;
    margin:0;
  }

  .contact > .section-scroll-hint{
    right:14px;
    bottom:14px;
  }
}

@media(max-width:390px){
  

  .contact-form{
    padding:16px;
  }
}

/* ASTAMCO 2026.1 — exact section alignment below the fixed header */
html{
  scroll-padding-top:0!important;
}

main > .page-panel,
main > section[id]{
  scroll-margin-top:0!important;
}

/* Prevent a leftover strip from the previous section after navigation */
@media(min-width:701px){
  main > .page-panel{
    min-height:calc(100svh - 74px);
  }

  main > .hero.page-panel{
    min-height:100svh;
  }
}

/* ASTAMCO 2026.1 — correct section order and separate map screen */

/* Contact occupies its own complete viewport below the fixed header. */
main > .contact.page-panel{
  min-height:calc(100svh - 74px);
  padding-top:74px;
  padding-bottom:74px;
  display:flex;
  align-items:center;
  overflow:visible;
}

main > .contact.page-panel > .container{
  width:min(var(--container),calc(100% - 40px));
}

/* Map is now a completely separate section after Contact. */
main > .location-section.page-panel{
  position:relative;
  min-height:calc(100svh - 74px);
  padding:0;
  display:block;
  overflow:hidden;
  background:#e9f2f7;
}

.location-section > .map-wrap{
  width:100%;
  height:calc(100svh - 74px);
  min-height:520px;
  margin:0;
  overflow:hidden;
}

.location-section > .map-wrap iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
}

.location-section > .section-scroll-hint{
  right:24px;
  bottom:18px;
}

/* Ensure the arrow remains inside Contact, not over the map. */
.contact > .section-scroll-hint{
  right:24px;
  bottom:18px;
}

@media(max-width:980px){
  main > .contact.page-panel{
    min-height:auto;
    padding-top:86px;
    padding-bottom:82px;
    align-items:flex-start;
  }

  .location-section > .map-wrap{
    height:70svh;
    min-height:420px;
  }

  main > .location-section.page-panel{
    min-height:70svh;
  }
}

@media(max-width:700px){
  main > .contact.page-panel{
    min-height:auto;
    padding-top:80px;
    padding-bottom:78px;
  }

  main > .contact.page-panel > .container{
    width:calc(100% - 28px);
  }

  main > .location-section.page-panel,
  .location-section > .map-wrap{
    min-height:360px;
    height:62svh;
  }

  .location-section > .section-scroll-hint,
  .contact > .section-scroll-hint{
    right:14px;
    bottom:14px;
  }
}

/* ASTAMCO 2026.1 — exact viewport sections and compact Useful Links */

/* One source of truth for fixed header height */
:root{
  --fixed-header-h:74px;
}

/* Remove all inherited scroll offsets. JavaScript handles exact positioning. */
html{
  scroll-padding-top:0!important;
}

main > section[id],
main > .page-panel{
  scroll-margin-top:0!important;
}

/* Desktop sections fit the visible browser area below the fixed header.
   Extra content may naturally extend, but short sections no longer leave
   a strip from the previous section or hide the arrow behind the taskbar. */
@media(min-width:701px){
  main > .page-panel{
    min-height:calc(100dvh - var(--fixed-header-h));
    box-sizing:border-box;
    padding-top:clamp(64px,7vh,88px);
    padding-bottom:72px;
  }

  main > .hero.page-panel{
    min-height:100dvh;
  }

  .section-scroll-hint{
    bottom:14px!important;
  }
}

/* Browser-safe arrow: always visible inside the section */
.section-scroll-hint{
  right:20px!important;
  bottom:14px!important;
  width:40px;
  height:40px;
  z-index:50;
}

/* Useful Links hero becomes more compact */
main > .resource-hero.page-panel{
  min-height:calc(72dvh - var(--fixed-header-h));
  padding-top:92px;
  padding-bottom:66px;
}

.resource-hero .resource-hero-inner{
  max-width:900px;
}

.resource-hero h1,
.resource-hero h2{
  max-width:820px;
  font-size:clamp(2.8rem,5vw,5.2rem);
  line-height:.98;
  margin-bottom:22px;
}

.resource-hero p{
  max-width:760px;
  margin-bottom:24px;
}

.resource-hero .resource-pills,
.resource-hero .resource-tabs,
.resource-hero .chip-row{
  gap:10px;
  flex-wrap:wrap;
}

/* All official links are now presented in one dense second section */
main > .resource-directory.page-panel{
  min-height:auto;
  padding-top:76px;
  padding-bottom:78px;
}

.resource-directory .resource-heading{
  margin-bottom:28px;
}

.resource-directory .resource-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.resource-directory .resource-card{
  min-height:190px;
  padding:20px;
  border-radius:16px;
}

.resource-directory .resource-card h3{
  font-size:1.02rem;
  margin-bottom:8px;
}

.resource-directory .resource-card p{
  font-size:.9rem;
  line-height:1.45;
  margin-bottom:14px;
}

.resource-directory .resource-card .resource-icon,
.resource-directory .resource-card .icon{
  width:44px;
  height:44px;
  margin-bottom:14px;
}

.resource-directory .resource-card a{
  font-size:.9rem;
}

/* Ensure the cards section does not start under the fixed header */
#resource-directory{
  scroll-margin-top:0!important;
}

@media(max-width:1180px){
  .resource-directory .resource-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:900px){
  :root{
    --fixed-header-h:76px;
  }

  main > .resource-hero.page-panel{
    min-height:auto;
    padding-top:96px;
    padding-bottom:72px;
  }

  .resource-directory .resource-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px){
  .resource-directory .resource-grid{
    grid-template-columns:minmax(0,1fr);
  }

  .resource-directory .resource-card{
    min-height:auto;
  }

  .section-scroll-hint{
    right:12px!important;
    bottom:12px!important;
  }
}


/* ASTAMCO 2026.1 — functional Useful Links category filters */
.resource-filter-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:26px;
}
.resource-filter-tab{
  appearance:none;
  border:1px solid rgba(255,255,255,.48);
  border-radius:999px;
  padding:10px 17px;
  background:rgba(6,25,44,.24);
  color:#fff;
  font:inherit;
  font-weight:700;
  line-height:1;
  cursor:pointer;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
.resource-filter-tab:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.15);
}
.resource-filter-tab.active,
.resource-filter-tab[aria-selected="true"]{
  background:#fff;
  color:var(--navy);
  border-color:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
}
.resource-filter-tab:focus-visible{
  outline:3px solid rgba(61,132,198,.75);
  outline-offset:3px;
}
.resource-filter-status{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:0 0 20px;
  padding:13px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  color:var(--navy);
}
.resource-filter-status strong{font-size:1rem}
.resource-filter-status span{
  color:var(--muted);
  font-size:.9rem;
}
.resource-category-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin:0 0 10px;
  padding:5px 9px;
  border-radius:999px;
  background:#eef5fb;
  color:var(--blue);
  font-size:.72rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.resource-card.resource-filter-hidden{display:none!important}
.resource-card.resource-filter-visible{
  animation:resourceCardIn .28s ease both;
}
@keyframes resourceCardIn{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:none}
}
@media(max-width:640px){
  .resource-filter-tabs{gap:8px}
  .resource-filter-tab{
    padding:9px 13px;
    font-size:.88rem;
  }
  .resource-filter-status{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
}
@media(prefers-reduced-motion:reduce){
  .resource-card.resource-filter-visible{animation:none}
}

.resource-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin-top:22px;
}
.resource-pagination[hidden]{display:none}
.resource-pagination button{
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--blue);
  color:#fff;
  padding:9px 16px;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}
.resource-pagination button:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.resource-pagination span{
  min-width:90px;
  color:var(--navy);
  text-align:center;
  font-weight:700;
}

/* Release 2026.1: the frozen visible type system is Georgia throughout. */
body,
body button,
body input,
body select,
body textarea,
body h1,
body h2,
body h3,
body h4,
body strong,
body small,
body .process-step>span{
  font-family:Georgia,"Times New Roman",serif!important;
}

/* ASTAMCO 2026.1 — five resources per page and always-accessible filters */
.resource-filter-sticky{
  position:sticky;
  top:74px;
  z-index:70;
  margin:0 0 18px;
  padding:10px 0;
  background:rgba(244,248,251,.96);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(12px);
}

.resource-filter-sticky-inner{
  display:flex;
  align-items:center;
  gap:16px;
}

.resource-filter-sticky-label{
  flex:0 0 auto;
  color:var(--navy);
  font-weight:800;
  font-size:.9rem;
}

.resource-filter-tabs-directory{
  flex:1 1 auto;
  margin:0;
  gap:8px;
  overflow-x:auto;
  flex-wrap:nowrap;
  scrollbar-width:thin;
  padding:2px 2px 5px;
}

.resource-filter-tab-directory{
  flex:0 0 auto;
  border-color:var(--line);
  background:#fff;
  color:var(--navy);
  padding:9px 14px;
  box-shadow:none;
}

.resource-filter-tab-directory:hover{
  background:#eef5fb;
}

.resource-filter-tab-directory.active,
.resource-filter-tab-directory[aria-selected="true"]{
  background:var(--blue);
  color:#fff;
  border-color:var(--blue);
  box-shadow:0 7px 18px rgba(22,74,122,.18);
}

/* Exactly five selected links in one desktop row */
.resource-directory .resource-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}

.resource-directory .resource-card{
  min-width:0;
  min-height:250px;
  padding:18px;
}

.resource-directory .resource-card h3{
  font-size:.98rem;
}

.resource-directory .resource-card p{
  font-size:.86rem;
  line-height:1.42;
}

.resource-directory .resource-card a{
  font-size:.84rem;
}

/* With a category selected, the five cards use the visible browser area efficiently */
.resource-directory:has(.resource-card.resource-filter-hidden){
  min-height:calc(100dvh - 74px);
}

@media(max-width:1300px){
  .resource-directory .resource-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:900px){
  .resource-filter-sticky{
    top:76px;
  }

  .resource-filter-sticky-inner{
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
  }

  .resource-filter-tabs-directory{
    width:100%;
  }

  .resource-directory .resource-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px){
  .resource-filter-sticky{
    top:72px;
    margin-left:-14px;
    margin-right:-14px;
    padding:9px 14px;
  }

  .resource-filter-sticky-label{
    display:none;
  }

  .resource-directory .resource-grid{
    grid-template-columns:minmax(0,1fr);
  }
}

/* ASTAMCO 2026.1 — typography and balanced branding */
.brand{align-items:center;gap:14px}
.brand>span,.brand-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0;line-height:1}



.header-inner{column-gap:30px}
.main-nav{margin-left:auto}
.header-actions{margin-left:8px}
body{font-size:15px}

h2,.section-heading h2,.resource-heading h2{font-size:clamp(2.05rem,3.5vw,3.65rem)!important;line-height:1.04!important}
h3,.service-card h3,.client-card h3,.resource-card h3{font-size:clamp(1rem,1.15vw,1.18rem)!important}
.hero-copy>p,.hero p{font-size:clamp(1rem,1.25vw,1.18rem)!important;line-height:1.55!important;max-width:720px}
.section-heading p,.resource-heading p,.service-card p,.client-card p,.resource-card p,.contact-copy p{font-size:.94rem;line-height:1.52}
.eyebrow{font-size:.76rem;letter-spacing:.12em}
.main-nav a{font-size:.94rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px}
.hero-actions .button:first-child{background:var(--blue);color:#fff;border-color:var(--blue)}
.hero-actions .button:nth-child(2){background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
main>.page-panel{padding-top:clamp(62px,6vh,82px);padding-bottom:68px}
.service-card,.client-card,.resource-card{padding:20px}
@media(max-width:900px){
  
  
  
  h2,.section-heading h2,.resource-heading h2{font-size:clamp(1.9rem,6vw,2.8rem)!important}
}
@media(max-width:640px){
  .brand{gap:9px}
  
  
  body{font-size:14px}
  
  h2,.section-heading h2,.resource-heading h2{font-size:clamp(1.7rem,8vw,2.35rem)!important}
}


/* ASTAMCO 2026.1 — unified brand typography */
.brand > span{
  display:grid;
  grid-template-columns:1fr;
  justify-items:start;
  align-content:center;
  gap:4px;
  line-height:1;
}







/* The Greek legal name is longer, so it is scaled only enough
   to remain visually balanced under astamco.com. */


/* Footer branding remains slightly more compact. */
.brand-footer strong{
  font-size:1.35rem!important;
}

.brand-footer small{
  font-size:.78rem!important;
}

html[lang^="el"] .brand-footer small{
  font-size:.68rem!important;
}

@media(max-width:900px){
  

  

  
}

@media(max-width:640px){
  

  

  
}


/* ASTAMCO 2026.1 — final mobile brand fit */
.brand{
  min-width:0;
}

.brand > span{
  min-width:0;
  max-width:100%;
}



/* Greek wording now mirrors the English ampersand treatment. */


@media(max-width:640px){
  .header-inner{
    gap:8px;
  }

  .brand{
    flex:1 1 auto;
    gap:8px;
    min-width:0;
    max-width:calc(100% - 118px);
  }

  .brand img{
    flex:0 0 44px;
    width:44px;
    height:44px;
  }

  .brand > span{
    flex:1 1 auto;
    min-width:0;
  }

  

  

  

  .language-switcher{
    right:60px;
  }
}

@media(max-width:374px){
  .brand{
    gap:6px;
    max-width:calc(100% - 112px);
  }

  .brand img{
    flex-basis:40px;
    width:40px;
    height:40px;
  }

  

  

  
}

/* ASTAMCO 2026.1 — robust Android/iPhone mobile header */
@media (max-width: 640px){
  .site-header .container{
    width:calc(100% - 20px);
  }

  .header-inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) 46px auto;
    align-items:center;
    column-gap:7px;
    width:100%;
  }

  .brand{
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    align-items:center;
    gap:7px;
    width:100%;
    max-width:none;
    min-width:0;
    overflow:visible;
  }

  .brand img{
    width:44px;
    height:44px;
    min-width:44px;
  }

  .brand > span{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
    max-width:100%;
    overflow:visible;
  }

  

  

  

  .menu-toggle{
    display:block;
    grid-column:2;
    width:46px;
    height:46px;
    margin:0;
    padding:10px;
  }

  .header-actions{
    grid-column:3;
    display:flex;
    margin:0;
    min-width:0;
  }

  .language-switcher{
    position:static!important;
    right:auto!important;
    flex:0 0 auto;
    padding:2px;
  }

  .language-switcher button{
    min-width:29px;
    padding:5px 6px;
    font-size:.72rem;
  }

  
}

@media (max-width: 374px){
  .site-header .container{width:calc(100% - 14px)}
  .header-inner{grid-template-columns:minmax(0,1fr) 42px auto;column-gap:5px}
  .brand{grid-template-columns:40px minmax(0,1fr);gap:5px;max-width:none}
  .brand img{width:40px;height:40px;min-width:40px}
  
  
  
  .menu-toggle{width:42px;height:42px;padding:9px}
  .language-switcher button{min-width:26px;padding:4px 5px;font-size:.68rem}
}


/* ASTAMCO 2026.1 — verified text update and Android-safe header */
@media (max-width: 640px){
  .site-header{padding:8px 0}
  .site-header .container{
    width:calc(100% - 16px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .header-inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    align-items:center!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
  }
  .brand{
    display:grid!important;
    grid-template-columns:40px minmax(0,1fr)!important;
    align-items:center!important;
    gap:6px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  .brand img{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
  }
  .brand>span{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  
  
  
  .menu-toggle{
    grid-column:auto!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    padding:8px!important;
    margin:0!important;
  }
  .header-actions{
    grid-column:auto!important;
    margin:0!important;
    min-width:0!important;
  }
  .language-switcher{
    position:static!important;
    padding:2px!important;
  }
  .language-switcher button{
    min-width:25px!important;
    padding:4px 5px!important;
    font-size:.66rem!important;
  }
  
}
@media (max-width: 360px){
  .site-header .container{width:calc(100% - 10px)!important}
  .header-inner{gap:4px!important}
  .brand{grid-template-columns:36px minmax(0,1fr)!important;gap:4px!important}
  .brand img{width:36px!important;height:36px!important;min-width:36px!important}
  
  
  
  .menu-toggle{width:38px!important;height:38px!important;min-width:38px!important;padding:8px!important}
  .language-switcher button{min-width:23px!important;padding:4px!important;font-size:.63rem!important}
}


/* ASTAMCO 2026.1 — Information Center and dynamic domain */
.domain-extension{display:inline-block;min-width:2.55em;text-align:left;will-change:transform,opacity;}
.domain-extension.is-rotating{animation:domainTick .85s ease both;}
@keyframes domainTick{0%{opacity:.25;transform:translateY(-5px)}100%{opacity:1;transform:translateY(0)}}
.quick-access-title{margin:2rem 0 .8rem;font-size:clamp(1rem,1.5vw,1.25rem);}
.quick-access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;width:min(100%,980px);margin:0 auto;}
.quick-access-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.26);border-radius:18px;background:rgba(255,255,255,.12);backdrop-filter:blur(14px);color:inherit;text-decoration:none;transition:transform .2s ease,background .2s ease,border-color .2s ease;}
.quick-access-card:hover{transform:translateY(-3px);background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.5)}
.quick-access-icon{font-size:1.35rem}.quick-access-arrow{opacity:.7}
.recommended-icon{font-size:.78rem;font-weight:700;letter-spacing:.03em;padding:.48rem .62rem;border-radius:10px;background:rgba(20,67,99,.08)}
.resource-card[data-resource-category="usa"] .resource-icon{font-size:.82rem}
@media(max-width:900px){.quick-access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.quick-access-grid{grid-template-columns:1fr}.quick-access-card{padding:1rem}.domain-extension{min-width:2.35em}}
@media(prefers-reduced-motion:reduce){.domain-extension.is-rotating{animation:none}.quick-access-card{transition:none}}

/* Final conversation-aligned overrides; keep last in the cascade. */


.quick-access-aeo-logo{
  width:30px;
  height:30px;
  object-fit:contain;
  border-radius:4px;
}
@media(max-width:640px){
  
  
}

/* Legal name matches the wordmark typography and size in both languages. */

.brand-footer strong,
.brand-footer small,
html[lang^="el"] .brand-footer small{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:1.35rem!important;
  font-weight:700!important;
  line-height:1!important;
}
@media(max-width:900px){
  
}
@media(max-width:640px){
  
}
@media(max-width:360px){
  
}

/* ASTAMCO 2026.1 — one responsive type size for both wordmark lines. */
.site-header .brand{
  --brand-line-size:1.5rem;
}

@media(max-width:900px){
  .site-header .brand{
    --brand-line-size:1.42rem;
  }
}
@media(max-width:640px){
  .site-header .brand{
    --brand-line-size:clamp(.7rem,3.25vw,.95rem);
  }
}
@media(max-width:360px){
  .site-header .brand{
    --brand-line-size:clamp(.64rem,3.05vw,.7rem);
  }
}
@media(min-width:981px){
  .site-header .container{
    width:calc(100% - 40px);
    max-width:1440px;
  }
  .site-header .main-nav{
    gap:clamp(14px,1.45vw,22px);
  }
  .site-header .main-nav a{
    white-space:nowrap;
  }
}
@media(min-width:981px) and (max-width:1215px){
  .site-header .main-nav{display:none}
  .site-header .menu-toggle{display:block;margin-left:auto}
  .site-header .header-actions{margin-left:0}
  
}

/* ASTAMCO 2026.1 — keep dense desktop card panels and their next arrow inside the viewport */
@media(min-width:1000px) and (min-height:700px){
  main > .services.page-panel{
    padding-top:clamp(34px,4vh,48px);
    padding-bottom:58px;
  }

  .services .section-heading{
    margin-bottom:22px;
  }

  .services .section-heading h2{
    font-size:clamp(2.35rem,3vw,3.2rem)!important;
    line-height:1.01!important;
  }

  .services .service-grid{
    gap:16px 20px;
  }

  .services .service-card{
    min-height:200px;
    padding:20px;
  }

  .services .service-card .icon{
    width:48px;
    height:48px;
  }

  .services .service-card h3{
    margin:14px 0 7px;
  }

  .services .service-card p{
    line-height:1.42;
  }

  .services > .section-scroll-hint{
    width:30px;
    height:30px;
    bottom:10px!important;
  }

  main > .sectors.page-panel{
    padding-bottom:68px;
  }

  .sectors .photo-grid{
    grid-auto-rows:210px;
  }

  .sectors > .section-scroll-hint{
    width:30px;
    height:30px;
    bottom:10px!important;
  }

  main > .clients.page-panel{
    padding-bottom:62px;
  }

  main > .resource-hero.page-panel{
    padding-bottom:82px;
  }

  main > .resource-directory.page-panel{
    padding-top:92px;
    padding-bottom:82px;
  }

  html[lang^="el"] .section-heading{
    margin-bottom:22px;
  }

  html[lang^="el"] .section-heading h2{
    font-size:clamp(2.25rem,2.7vw,2.85rem)!important;
    line-height:1.01!important;
  }

  html[lang^="el"] .process .section-heading h2{
    font-size:clamp(2rem,2.3vw,2.4rem)!important;
  }

  html[lang^="el"] .clients .client-card{
    min-height:210px;
    gap:14px;
  }

  html[lang^="el"] .clients .client-logo-wrap{
    min-height:100px;
    padding:12px;
  }

  html[lang^="el"] .clients .client-logo-wrap img{
    height:76px;
  }

  html[lang^="el"] .resource-hero h1{
    font-size:clamp(2.8rem,3.4vw,3.65rem)!important;
    line-height:1!important;
  }

  html[lang^="el"] main > .resource-hero.page-panel{
    padding-top:72px;
    padding-bottom:82px;
  }

  html[lang^="el"] .resource-directory .resource-section-head h2{
    font-size:clamp(2rem,2.5vw,2.65rem)!important;
    line-height:1.02!important;
  }

  html[lang^="el"] .resource-directory .resource-card{
    min-height:230px;
    padding:13px;
  }

  html[lang^="el"] .resource-directory .resource-card .resource-icon{
    width:38px;
    height:38px;
  }

  html[lang^="el"] .resource-directory .resource-card h3{
    margin:10px 0 6px;
    font-size:.9rem!important;
    line-height:1.2;
  }

  html[lang^="el"] .resource-directory .resource-card p{
    margin-bottom:10px;
    font-size:.78rem;
    line-height:1.3;
  }

  html[lang^="el"] .resource-directory .resource-card a{
    font-size:.78rem;
  }

  html[lang^="el"] .contact h2{
    font-size:clamp(2.15rem,2.55vw,2.7rem)!important;
    line-height:1.02!important;
  }

  html[lang^="el"] .contact-details{
    gap:8px;
    margin-top:18px;
  }

  html[lang^="el"] .contact-details > a,
  html[lang^="el"] .contact-details > div{
    padding:10px 0;
  }

  html[lang^="el"] .contact > .section-scroll-hint{
    bottom:26px!important;
  }
}

/* ASTAMCO 2026.1 — direct navigation from Expertise to its two related sections */
.expertise-jump-nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:14px 0 16px;
}

.expertise-jump-nav a{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:7px 14px;
  border:1px solid rgba(255,255,255,.3);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:.84rem;
  font-weight:700;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}

.expertise-jump-nav a:hover,
.expertise-jump-nav a:focus-visible{
  background:var(--blue);
  border-color:var(--accent);
  transform:translateY(-2px);
}

@media(min-width:1000px) and (min-height:700px){
  .expertise .check-list{
    margin:16px 0 10px;
  }

  .expertise .check-list li{
    padding-top:6px;
    padding-bottom:6px;
  }
}

/* ASTAMCO 2026.1 — Official Resources-style navigation below the AEO-C card */
.expertise-side{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:16px;
}

.expertise-jump-nav{
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:14px;
  width:100%;
  margin:0;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#f5f8fb;
  color:var(--navy);
}

.expertise-jump-label{
  flex:0 0 auto;
  font-size:.86rem;
  font-weight:700;
}

.expertise-jump-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  min-width:0;
}

.expertise-jump-nav a{
  min-height:36px;
  padding:6px 13px;
  border:1px solid #d8e1ea;
  background:#fff;
  color:var(--navy);
  font-size:.82rem;
}

.expertise-jump-nav a:hover,
.expertise-jump-nav a:focus-visible{
  background:var(--blue);
  border-color:var(--blue);
  color:#fff;
}

@media(max-width:640px){
  .expertise-jump-nav{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }
}

/* Final Expertise tab treatment: standalone pills, no Category container */
.expertise-side{
  gap:36px;
}

.expertise-jump-nav{
  gap:0;
  padding:0 0 16px;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.18);
  border-radius:0;
  background:transparent;
}

.expertise-jump-nav a{
  transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease;
}

.expertise-jump-nav a.active,
.expertise-jump-nav a[aria-current="true"]{
  background:var(--blue);
  border-color:var(--blue);
  color:#fff;
  box-shadow:0 7px 18px rgba(22,74,122,.28);
}

.expertise-jump-nav a:hover,
.expertise-jump-nav a:focus-visible{
  background:var(--blue);
  border-color:var(--blue);
  color:#fff;
  box-shadow:0 7px 18px rgba(22,74,122,.28);
  transform:translateY(-2px);
}


/* ASTAMCO 2026.1 — authoritative release rules (Step 2) */
:root{--brand-line-size:clamp(1.18rem,1.45vw,1.5rem)}
.site-header .brand strong,
.site-header .brand small,
html[lang^="el"] .site-header .brand small{
  display:block;
  max-width:100%;
  margin:0!important;
  padding:0!important;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:var(--brand-line-size)!important;
  font-style:normal!important;
  font-weight:700!important;
  letter-spacing:.01em!important;
  line-height:.96!important;
  text-align:left;
  text-indent:0!important;
  transform:none!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.site-header .brand small{margin-top:4px!important;opacity:.96!important}
.brand strong>.domain-extension{display:inline-block!important;width:2.55em;min-width:2.55em;vertical-align:baseline}
.hero h1{font-size:clamp(2.15rem,3.55vw,3.85rem)!important;line-height:1.03!important;max-width:860px;margin:20px 0!important}
.contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:56px;align-items:start;margin-bottom:60px}
@media(max-width:980px){
  .main-nav.open{display:flex;position:fixed;inset:78px 14px auto;background:var(--navy);padding:24px;border-radius:18px;flex-direction:column;align-items:flex-start;box-shadow:var(--shadow)}
  .contact-grid{grid-template-columns:minmax(0,1fr);gap:34px;margin-bottom:46px}
}
@media(max-width:700px){
  .contact-grid{width:min(var(--container),calc(100% - 28px));gap:28px;margin-bottom:36px}
}
@media(max-width:640px){
  :root{--brand-line-size:clamp(.78rem,3.8vw,.98rem)}
  .site-header .brand small{margin-top:3px!important}
  .brand strong>.domain-extension{width:2.35em;min-width:2.35em}
  .hero h1{font-size:clamp(1.9rem,8vw,2.5rem)!important;line-height:1.04!important}
  .main-nav.open{inset:64px 8px auto!important}
}
@media(max-width:390px){.contact-grid{width:calc(100% - 22px)}}
@media(max-width:360px){:root{--brand-line-size:clamp(.72rem,3.75vw,.86rem)}}


/* ASTAMCO 2026.1 — Step 4 responsive corrections (authoritative) */
:root{
  --header-anchor-offset: 86px;
  --brand-line-size: clamp(1.18rem,1.45vw,1.5rem);
}
html{
  scroll-padding-top: var(--header-anchor-offset) !important;
}
main > section[id],
section[id],
#site-footer{
  scroll-margin-top: var(--header-anchor-offset) !important;
}

/* Expertise must collapse before the card becomes compressed. */
@media (max-width: 900px){
  .expertise-grid{
    grid-template-columns:minmax(0,1fr) !important;
    gap:32px !important;
    align-items:start !important;
  }
  .expertise-copy,
  .expertise-side,
  .certification-card{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
  }
  .certification-card{
    grid-template-columns:120px minmax(0,1fr) !important;
    gap:24px !important;
    padding:30px !important;
  }
  .certification-card img{
    width:120px !important;
    max-width:100% !important;
    justify-self:center;
  }
}

@media (max-width: 560px){
  .certification-card{
    grid-template-columns:minmax(0,1fr) !important;
    text-align:center;
    gap:18px !important;
    padding:26px 22px !important;
  }
  .certification-card img{
    width:min(132px,48vw) !important;
    margin-inline:auto;
  }
  .expertise-jump-tabs{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
}

/* Preserve wordmark readability before shrinking the type further. */
@media (max-width: 640px){
  :root{
    --header-anchor-offset: 70px;
    --brand-line-size: clamp(.82rem,3.55vw,.98rem);
  }
  .site-header .container{
    width:calc(100% - 16px) !important;
  }
  .header-inner{
    gap:10px !important;
  }
  .site-header .brand{
    gap:8px !important;
    min-width:0 !important;
    flex:1 1 auto;
  }
  .site-header .brand img{
    width:44px !important;
    height:44px !important;
    flex:0 0 44px;
  }
  .site-header .brand > span{
    min-width:0;
  }
  .site-header .brand strong,
  .site-header .brand small,
  html[lang^="el"] .site-header .brand small{
    font-size:var(--brand-line-size) !important;
    line-height:1 !important;
  }
  .brand strong > .domain-extension{
    width:2.25em !important;
    min-width:2.25em !important;
  }
  .header-actions{
    gap:7px !important;
    flex:0 0 auto;
  }
  .language-switcher button{
    padding:5px 7px !important;
  }
  .menu-toggle{
    width:40px !important;
    height:40px !important;
    padding:8px !important;
  }
}

@media (max-width: 360px){
  :root{
    --header-anchor-offset: 66px;
    --brand-line-size: 11px;
  }
  .site-header .brand img{
    width:40px !important;
    height:40px !important;
    flex-basis:40px;
  }
  .site-header .brand{
    gap:6px !important;
  }
  .brand strong > .domain-extension{
    width:2.18em !important;
    min-width:2.18em !important;
  }
  .language-switcher button{
    padding:4px 6px !important;
    font-size:.7rem !important;
  }
  .menu-toggle{
    width:38px !important;
    height:38px !important;
  }
}

/* Horizontal category navigation remains discoverable on touch devices. */
.resource-filter-tabs,
.resource-filter-tabs-directory{
  scroll-snap-type:x proximity;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
}
.resource-filter-tab,
.resource-filter-tab-directory{
  scroll-snap-align:start;
}
.resource-filter-sticky-inner{
  position:relative;
}
@media (max-width: 700px){
  .resource-filter-sticky-inner::after{
    content:"";
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    width:30px;
    pointer-events:none;
    background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.96));
  }
}


/* ASTAMCO 2026.2 — approved feature layer */
.aeoc-trust{background:#f7f9fc;color:var(--ink);position:relative;overflow:hidden}
.aeoc-layout{display:grid;grid-template-columns:minmax(220px,.38fr) minmax(0,1fr);gap:54px;align-items:start}
.aeoc-logo-panel{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 18px 50px rgba(8,26,47,.08);position:sticky;top:110px}
.aeoc-logo-panel img{width:min(100%,230px);display:block;margin:0 auto 24px}
.aeoc-side-points{list-style:none;margin:0;padding:0;display:grid;gap:0}
.aeoc-side-points li{padding:14px 2px;border-top:1px solid var(--line);font-weight:700;color:var(--navy)}
.aeoc-copy h2{margin-bottom:22px}.aeoc-copy>p{color:var(--muted);max-width:920px}.aeoc-benefits-lead{font-weight:800!important;color:var(--navy)!important;margin-top:30px}
.aeoc-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0 22px}
.aeoc-benefit{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;min-height:210px}
.aeoc-benefit>span{width:44px;height:44px;border-radius:999px;background:var(--navy);color:var(--accent);display:grid;place-items:center;font-weight:900;margin-bottom:18px}
.aeoc-benefit h3{font:800 .95rem/1.25 Montserrat;color:var(--navy);text-transform:uppercase;margin:0 0 8px}.aeoc-benefit p{font-size:.9rem;color:var(--muted);margin:0}
.aeoc-trust-statement{background:var(--navy);color:#fff;border-radius:16px;padding:24px 28px;margin-top:16px}.aeoc-trust-statement strong{color:var(--accent)}.aeoc-trust-statement p{margin:6px 0 0;color:rgba(255,255,255,.88)}
.aeoc-tagline{margin-top:20px;padding:14px 0;border-top:1px solid var(--line);font:700 .82rem/1.4 Montserrat;letter-spacing:.16em;color:var(--navy)}.aeoc-tagline strong{color:#b07b12}.aeo-card-link{display:inline-block;margin-top:12px}
.footer-legal-links{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin-top:36px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font-size:.82rem}.footer-legal-links a:hover{color:var(--accent)}
.map-consent-shell{min-height:390px;background:linear-gradient(135deg,#eef4f8,#dce8ef);display:grid;place-items:center;position:relative;overflow:hidden;padding:28px}
.map-static-placeholder{width:min(920px,100%);min-height:260px;border:1px solid rgba(8,26,47,.12);border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(225,235,242,.96));position:relative;display:grid;place-items:center;text-align:center;padding:40px;box-shadow:0 18px 50px rgba(8,26,47,.08)}
.map-static-placeholder:before,.map-static-placeholder:after{content:"";position:absolute;inset:12% 8%;background:repeating-linear-gradient(28deg,transparent 0 28px,rgba(10,102,168,.08) 29px 32px);transform:rotate(-4deg);pointer-events:none}.map-static-placeholder:after{transform:rotate(58deg);opacity:.7}
.map-pin{position:relative;z-index:2;width:48px;height:48px;border-radius:50% 50% 50% 0;background:var(--blue);color:#fff;display:grid;place-items:center;transform:rotate(-45deg);font-size:0;box-shadow:0 8px 20px rgba(10,102,168,.28)}.map-pin:after{content:"";width:14px;height:14px;background:#fff;border-radius:50%}.map-placeholder-copy{position:relative;z-index:2;display:grid;gap:6px;margin-top:22px}.map-placeholder-copy strong{font:800 1.15rem Montserrat;color:var(--navy)}.map-placeholder-copy span{color:var(--muted);font-size:.9rem}
.map-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:18px}.map-actions .button{width:auto}.map-actions .button-ghost{background:#fff;color:var(--navy);border:1px solid var(--line)}.interactive-map-frame{width:100%;height:100%;min-height:390px;border:0}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid #f2b84b;outline-offset:3px}
@media(max-width:900px){.aeoc-layout{grid-template-columns:1fr}.aeoc-logo-panel{position:static;display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:center}.aeoc-logo-panel img{margin:0}.aeoc-benefit-grid{grid-template-columns:1fr}.aeoc-benefit{min-height:0}}
@media(max-width:640px){.aeoc-logo-panel{grid-template-columns:1fr}.aeoc-logo-panel img{width:150px}.aeoc-tagline{letter-spacing:.09em}.map-consent-shell{padding:18px}.map-actions{flex-direction:column}.map-actions .button{width:100%}.footer-legal-links{justify-content:flex-start}}
/* 2026.2 CP2 static map preview */
.map-static-placeholder{padding:0;background:#eef3f6;isolation:isolate}
.map-static-image{display:block;width:100%;height:100%;min-height:260px;object-fit:cover}
.map-static-placeholder:before,.map-static-placeholder:after{display:none}
.map-placeholder-copy{position:absolute;left:22px;bottom:22px;z-index:2;background:rgba(255,255,255,.94);padding:14px 18px;border-radius:14px;box-shadow:0 8px 24px rgba(8,26,47,.12);max-width:min(520px,calc(100% - 44px))}

/* ASTAMCO 2026.2.1 — corporate transparency footer */
.footer-company-legal{margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);font-size:.74rem;line-height:1.55;color:rgba(255,255,255,.62);text-align:center;overflow-wrap:anywhere}
.footer-legal-links{margin-top:10px;display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;font-size:.78rem}
.footer-legal-links a{color:rgba(255,255,255,.78)}
.footer-legal-links a:hover,.footer-legal-links a:focus-visible{color:#fff}
@media(max-width:640px){.footer-bottom{align-items:flex-start;gap:12px;flex-direction:column}.footer-company-legal{text-align:left;font-size:.7rem}.footer-legal-links{justify-content:flex-start}}

/* ASTAMCO 2026.2.2 — mobile text/reflow hardening
   Acceptance finding: Greek service intro could be clipped on the right edge on iPhone.
   Keep all long-form copy inside the viewport and stack asymmetric heading layouts early. */
.section-heading,
.resource-heading,
.resource-section-head,
.expertise-grid,
.contact-grid,
.footer-grid,
.service-grid,
.process-grid,
.logo-grid,
.photo-grid,
.quick-access-grid,
.aeoc-benefits,
.aeoc-grid {
  min-width:0;
}
.section-heading > *,
.resource-heading > *,
.resource-section-head > *,
.expertise-grid > *,
.contact-grid > *,
.footer-grid > *,
.service-grid > *,
.process-grid > *,
.quick-access-grid > *,
.aeoc-benefits > *,
.aeoc-grid > * {
  min-width:0;
  max-width:100%;
}
.section-heading p,
.resource-heading p,
.resource-section-head p,
.expertise-copy p,
.contact-copy p,
.service-card p,
.process-step p,
.resource-card p,
.client-card p,
.aeoc-section p,
.legal-page p,
.legal-page li,
.legal-page td,
.legal-page th {
  max-width:100%;
  overflow-wrap:break-word;
  word-break:normal;
  hyphens:auto;
}

@media (max-width:900px){
  /* Greek and English copy need the same safe reflow; do not retain the desktop 1.2/.8 split. */
  .section-heading,
  .cards-section .section-heading,
  .cards-section .resource-heading,
  .resource-heading,
  .resource-section-head {
    grid-template-columns:minmax(0,1fr)!important;
    gap:18px!important;
    align-items:start!important;
  }
  .section-heading p,
  .cards-section .section-heading p,
  .cards-section .resource-heading p,
  .resource-heading p,
  .resource-section-head p {
    justify-self:start!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }
}

@media (max-width:640px){
  html,body{max-width:100%;overflow-x:hidden}
  main,main>section,.page-panel,.section,.container{min-width:0;max-width:100%}
  .section-heading{width:100%!important}
  .section-heading h1,.section-heading h2,.section-heading h3,
  .resource-heading h1,.resource-heading h2,.resource-heading h3,
  .service-card h3,.process-step h3,.resource-card h3,.client-card h3,
  .legal-page h1,.legal-page h2 {
    max-width:100%;
    overflow-wrap:break-word;
    word-break:normal;
    hyphens:auto;
  }
  /* Avoid right-edge clipping from translated copy or long legal identifiers. */
  [data-i18n],.legal-shell,.legal-shell section,.legal-page-company-footer .container{
    min-width:0;
    max-width:100%;
  }
  .legal-table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}

/* ASTAMCO 2026.3 RC2 — Information Center language parity
   EN and EL use identical typography, card dimensions and spacing.
   Translation length may wrap differently, but desktop CSS metrics do not change by language. */
@media(min-width:1000px) and (min-height:700px){
  html[lang^="el"] .resource-hero h1,
  html[lang^="en"] .resource-hero h1{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(2.8rem,5vw,5.2rem)!important;
    line-height:.98!important;
  }
  html[lang^="el"] main > .resource-hero.page-panel,
  html[lang^="en"] main > .resource-hero.page-panel{
    padding-top:92px;
    padding-bottom:82px;
  }
  html[lang^="el"] .resource-directory .resource-section-head h2,
  html[lang^="en"] .resource-directory .resource-section-head h2{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(2.05rem,3.5vw,3.65rem)!important;
    line-height:1.04!important;
  }
  html[lang^="el"] .resource-directory .resource-card,
  html[lang^="en"] .resource-directory .resource-card{
    min-height:250px;
    padding:18px;
  }
  html[lang^="el"] .resource-directory .resource-card .resource-icon,
  html[lang^="en"] .resource-directory .resource-card .resource-icon{
    width:44px;
    height:44px;
    font-size:1.35rem;
  }
  html[lang^="el"] .resource-directory .resource-card h3,
  html[lang^="en"] .resource-directory .resource-card h3{
    font-family:Georgia,"Times New Roman",serif!important;
    margin:20px 0 8px;
    font-size:clamp(1rem,1.15vw,1.18rem)!important;
    line-height:1.25!important;
  }
  html[lang^="el"] .resource-directory .resource-card p,
  html[lang^="en"] .resource-directory .resource-card p{
    font-family:Georgia,"Times New Roman",serif!important;
    margin:0 0 14px;
    font-size:.86rem!important;
    line-height:1.42!important;
  }
  html[lang^="el"] .resource-directory .resource-card a,
  html[lang^="en"] .resource-directory .resource-card a{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:.84rem!important;
  }
}

/* ASTAMCO 2026.3 FINAL — desktop bilingual viewport parity
   Purpose: keep EN/EL panels on the same viewport footprint without language-specific
   font sizing. Dense sections use one shared compact layout so translated copy does
   not hide content or the next-section arrow on standard desktop/laptop viewports. */
@media (min-width:1000px){
  /* Information Center hero: widen the title measure and compact vertical rhythm.
     Same metrics for EN and EL. */
  #resources.resource-hero{
    min-height:calc(100dvh - var(--fixed-header-h))!important;
    padding-top:64px!important;
    padding-bottom:54px!important;
  }
  #resources > .container{
    width:min(1400px,calc(100% - 80px))!important;
  }
  #resources h1{
    max-width:1120px!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(3rem,4.2vw,4.55rem)!important;
    line-height:.96!important;
    margin:14px 0!important;
  }
  #resources p{
    max-width:900px!important;
    margin:0 0 14px!important;
    font-size:1rem!important;
    line-height:1.45!important;
  }
  #resources .quick-access-title{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(2rem,2.9vw,3rem)!important;
    line-height:1!important;
    margin:16px 0 12px!important;
  }
  #resources .quick-access-grid{
    gap:.55rem!important;
  }
  #resources .quick-access-card{
    min-height:54px!important;
    padding:.72rem .95rem!important;
  }

  /* Official-resources directory: one shared EN/EL card geometry and typography. */
  #resource-directory.resource-directory.page-panel{
    min-height:calc(100dvh - var(--fixed-header-h))!important;
    padding-top:52px!important;
    padding-bottom:54px!important;
  }
  #resource-directory .resource-section-head{
    margin-bottom:18px!important;
  }
  #resource-directory .resource-section-head h2{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(2.15rem,2.8vw,2.85rem)!important;
    line-height:1.02!important;
  }
  #resource-directory .resource-section-head p{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:.88rem!important;
    line-height:1.4!important;
  }
  #resource-directory .resource-filter-sticky{
    margin-bottom:12px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
  }
  #resource-directory .resource-filter-status{
    margin-bottom:14px!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  #resource-directory .resource-grid{
    gap:14px!important;
  }
  #resource-directory .resource-card{
    min-height:225px!important;
    padding:15px!important;
  }
  #resource-directory .resource-card .resource-icon{
    width:40px!important;
    height:40px!important;
    margin-bottom:10px!important;
    font-size:1.12rem!important;
  }
  #resource-directory .resource-card h3{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:.98rem!important;
    line-height:1.18!important;
    margin:12px 0 6px!important;
  }
  #resource-directory .resource-card p{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:.80rem!important;
    line-height:1.32!important;
    margin:0 0 10px!important;
  }
  #resource-directory .resource-card a{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:.80rem!important;
    line-height:1.25!important;
  }
  #resource-directory .resource-pagination{
    margin-top:14px!important;
  }

  /* AEOC: shared compact geometry; no Greek-only scaling. */
  #aeoc-trust.aeoc-trust.page-panel{
    min-height:calc(100dvh - var(--fixed-header-h))!important;
    padding-top:48px!important;
    padding-bottom:54px!important;
  }
  #aeoc-trust .aeoc-layout{
    gap:38px!important;
  }
  #aeoc-trust .aeoc-logo-panel{
    padding:22px!important;
  }
  #aeoc-trust .aeoc-logo-panel img{
    width:min(100%,200px)!important;
    margin-bottom:18px!important;
  }
  #aeoc-trust .aeoc-side-points li{
    padding:10px 2px!important;
  }
  #aeoc-trust .aeoc-copy h2{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(2.4rem,3.25vw,3.2rem)!important;
    line-height:1.02!important;
    margin:8px 0 14px!important;
  }
  #aeoc-trust .aeoc-copy > p:not(.aeoc-benefits-lead){
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:.92rem!important;
    line-height:1.5!important;
    margin:0!important;
  }
  #aeoc-trust .aeoc-benefits-lead{
    margin-top:18px!important;
    margin-bottom:10px!important;
  }
  #aeoc-trust .aeoc-benefit-grid{
    gap:12px!important;
    margin:10px 0 14px!important;
  }
  #aeoc-trust .aeoc-benefit{
    min-height:170px!important;
    padding:18px!important;
  }
  #aeoc-trust .aeoc-benefit > span{
    width:38px!important;
    height:38px!important;
    margin-bottom:12px!important;
  }
  #aeoc-trust .aeoc-benefit h3{
    font-size:.88rem!important;
    line-height:1.18!important;
    margin-bottom:6px!important;
  }
  #aeoc-trust .aeoc-benefit p{
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:.82rem!important;
    line-height:1.42!important;
  }
  #aeoc-trust .aeoc-trust-statement{
    padding:16px 20px!important;
    margin-top:10px!important;
  }
  #aeoc-trust .aeoc-trust-statement p{
    font-size:.86rem!important;
    line-height:1.42!important;
  }
  #aeoc-trust .aeoc-tagline{
    margin-top:12px!important;
    padding:10px 0!important;
    font-size:.76rem!important;
  }

  /* The two slightly over-tall legacy panels are compacted equally in both languages. */
  #sectors.sectors.page-panel .photo-grid{
    grid-auto-rows:205px!important;
  }
  #clients.clients.page-panel .client-card{
    min-height:205px!important;
    gap:14px!important;
  }
  #clients.clients.page-panel .client-logo-wrap{
    min-height:96px!important;
    padding:12px!important;
  }
  #clients.clients.page-panel .client-logo-wrap img{
    height:74px!important;
  }
}

/* Short desktop/laptop viewports: preserve readable type but trim non-essential space. */
@media (min-width:1000px) and (max-height:800px){
  #aeoc-trust.aeoc-trust.page-panel{
    padding-top:36px!important;
    padding-bottom:42px!important;
  }
  #aeoc-trust .aeoc-logo-panel{
    padding:18px!important;
  }
  #aeoc-trust .aeoc-logo-panel img{
    width:min(100%,180px)!important;
    margin-bottom:12px!important;
  }
  #aeoc-trust .aeoc-side-points li{
    padding:8px 2px!important;
  }
  #aeoc-trust .aeoc-copy h2{
    font-size:clamp(2.15rem,3vw,2.8rem)!important;
    margin-bottom:10px!important;
  }
  #aeoc-trust .aeoc-copy > p:not(.aeoc-benefits-lead){
    font-size:.86rem!important;
    line-height:1.42!important;
  }
  #aeoc-trust .aeoc-benefits-lead{
    margin-top:12px!important;
    margin-bottom:6px!important;
  }
  #aeoc-trust .aeoc-benefit-grid{
    margin:6px 0 10px!important;
  }
  #aeoc-trust .aeoc-benefit{
    min-height:150px!important;
    padding:14px!important;
  }
  #aeoc-trust .aeoc-benefit > span{
    width:34px!important;
    height:34px!important;
    margin-bottom:8px!important;
  }
  #aeoc-trust .aeoc-benefit h3{
    font-size:.82rem!important;
  }
  #aeoc-trust .aeoc-benefit p{
    font-size:.76rem!important;
    line-height:1.34!important;
  }
  #aeoc-trust .aeoc-trust-statement{
    padding:12px 16px!important;
    margin-top:6px!important;
  }
  #aeoc-trust .aeoc-trust-statement p{
    font-size:.80rem!important;
    line-height:1.34!important;
  }
  #aeoc-trust .aeoc-tagline{
    margin-top:8px!important;
    padding:7px 0!important;
    font-size:.70rem!important;
  }
}

/* 2026.3 final parity guard: neutralise legacy Greek-only desktop sizing rules.
   These shared values apply to both languages. */
@media (min-width:1000px) and (min-height:700px){
  .section-heading{
    margin-bottom:22px!important;
  }
  .section-heading h2{
    font-size:clamp(2.25rem,2.7vw,2.85rem)!important;
    line-height:1.01!important;
  }
  .process .section-heading h2{
    font-size:clamp(2rem,2.3vw,2.4rem)!important;
  }
  .clients .client-card{
    min-height:205px!important;
    gap:14px!important;
  }
  .clients .client-logo-wrap{
    min-height:96px!important;
    padding:12px!important;
  }
  .clients .client-logo-wrap img{
    height:74px!important;
  }
  .contact h2{
    font-size:clamp(2.15rem,2.55vw,2.7rem)!important;
    line-height:1.02!important;
  }
  .contact-details{
    gap:8px!important;
    margin-top:18px!important;
  }
  .contact-details > a,
  .contact-details > div{
    padding:10px 0!important;
  }
  .contact > .section-scroll-hint{
    bottom:26px!important;
  }
}
