
/* Web Consulting page, Elementor HTML widget. Everything is scoped to .mlw-wc
   so nothing here can reach the theme header, footer, or other widgets. */
.mlw-wc{box-sizing:border-box;font-family:'Montserrat',"Montserrat Fallback",system-ui,sans-serif;margin:0 calc(50% - 50vw);overflow:hidden}
.mlw-wc *{box-sizing:border-box}
.mlw-wc img{display:block;max-width:100%}
.mlw-wc ul{list-style:none;margin:0;padding:0}
.mlw-wc .container{ max-width: 1200px; margin: 0 auto; width: 100%; }

.mlw-wc .page-hero{ background: #0a1628; padding: 80px 40px; text-align: center; width: 100%; }
.mlw-wc .page-hero-label{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 11px; font-weight: 600; letter-spacing: 0.2em; color: #0d7377; text-transform: uppercase; margin-bottom: 20px; }
.mlw-wc .page-hero h1{ font-family: 'Cormorant Garamond',"Cormorant Garamond Fallback", serif; font-size: 56px; font-weight: 400; color: #e8ebe4; margin-bottom: 20px; }
.mlw-wc .page-hero h1 span{ color: #1db095; font-style: italic; }
.mlw-wc .page-hero p{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 17px; color: #a8b0a0; max-width: 700px; margin: 0 auto; line-height: 1.8; }

.mlw-wc .expertise-section{ background: #f4f5f0; padding: 80px 40px; width: 100%; }
.mlw-wc .section-intro{ max-width: 800px; margin: 0 auto 60px; text-align: center; }
.mlw-wc .section-intro h2{ font-family: 'Cormorant Garamond',"Cormorant Garamond Fallback", serif; font-size: 36px; font-weight: 400; color: #1a2332; margin-bottom: 20px; }
.mlw-wc .section-intro p{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 16px; color: #5a6670; line-height: 1.8; }
.mlw-wc .expertise-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.mlw-wc .expertise-card{ background: #ffffff; border: 1px solid #d4d8ce; border-radius: 8px; padding: 32px; transition: box-shadow 0.3s ease; }
.mlw-wc .expertise-card:hover{ box-shadow: 0 4px 16px rgba(10, 22, 40, 0.06); }
.mlw-wc .expertise-card h3{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 14px; font-weight: 600; letter-spacing: 0.05em; color: #1a2332; margin-bottom: 12px; }
.mlw-wc .expertise-card p{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 14px; color: #5a6670; line-height: 1.7; margin-bottom: 16px; }
.mlw-wc .expertise-card ul{ list-style: none; margin: 0; padding: 0; }
.mlw-wc .expertise-card li{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 13px; color: #5a6670; padding: 6px 0; border-bottom: 1px solid #eaece6; }
.mlw-wc .expertise-card li:last-child{ border-bottom: none; }

.mlw-wc .featured-section{ background: #eaece6; padding: 80px 40px; width: 100%; }
.mlw-wc .section-header{ margin-bottom: 40px; }
.mlw-wc .section-header h2{ font-family: 'Cormorant Garamond',"Cormorant Garamond Fallback", serif; font-size: 32px; font-weight: 400; color: #1a2332; margin-bottom: 8px; }
.mlw-wc .section-header p{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 14px; color: #5a6670; }
.mlw-wc .featured-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.mlw-wc .project-card{ position: relative; display: flex; flex-direction: column; background: #ffffff; border-radius: 8px; overflow: hidden; transition: transform 0.3s ease, box-shadow 0.3s ease; box-shadow: 0 1px 3px rgba(10, 22, 40, 0.06); }
.mlw-wc .project-card:hover{ transform: translateY(-4px); box-shadow: 0 8px 24px rgba(10, 22, 40, 0.10); }
.mlw-wc .project-card .project-image{ aspect-ratio: 16/10; overflow: hidden; }
.mlw-wc .project-card img{ width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
.mlw-wc .project-card:hover img{ transform: scale(1.05); }
.mlw-wc .project-card .project-info{ padding: 20px; flex: 1 1 auto; }
.mlw-wc .project-card .project-type{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 10px; font-weight: 600; letter-spacing: 0.12em; color: #0d7377; text-transform: uppercase; margin: 0 0 6px; }
.mlw-wc .project-card .project-name{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 15px; font-weight: 500; color: #1a2332; margin: 0 0 8px; }
.mlw-wc .project-card .project-desc{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 13px; color: #5a6670; line-height: 1.6; margin: 0; }
.mlw-wc .project-link{ padding: 0 20px 20px; }
.mlw-wc .project-link a{ position: relative; z-index: 2; display: inline-flex; align-items: center; gap: 8px; font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 12px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: #0d7377; text-decoration: none; transition: color 0.3s ease; }
.mlw-wc .project-link a:hover, .mlw-wc .project-link a:focus-visible{ color: #1db095; }
.mlw-wc .project-link a:focus-visible{ outline: 2px solid #1db095; outline-offset: 3px; }
.mlw-wc .project-link svg{ width: 16px; height: 16px; transition: transform 0.3s ease; }
.mlw-wc .project-link a:hover svg, .mlw-wc .project-link a:focus-visible svg{ transform: translateX(4px); }

.mlw-wc .logos-section{ background: #f4f5f0; padding: 80px 40px; width: 100%; }
.mlw-wc .logos-intro{ max-width: 800px; margin: 0 auto 48px; text-align: center; }
.mlw-wc .logos-intro h2{ font-family: 'Cormorant Garamond',"Cormorant Garamond Fallback", serif; font-size: 32px; font-weight: 400; color: #1a2332; margin-bottom: 16px; }
.mlw-wc .logos-intro p{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 15px; color: #5a6670; line-height: 1.7; }
.mlw-wc .logos-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 1000px; margin: 0 auto; }
.mlw-wc .logo-card{ background: #ffffff; border: 1px solid #d4d8ce; border-radius: 8px; padding: 32px; display: flex; align-items: center; justify-content: center; aspect-ratio: 1; transition: transform 0.3s ease, box-shadow 0.3s ease; }
.mlw-wc .logo-card:hover{ transform: scale(1.02); box-shadow: 0 4px 16px rgba(10, 22, 40, 0.06); }
.mlw-wc .logo-card img{ max-width: 80%; max-height: 80%; object-fit: contain; }

.mlw-wc .portfolio-links{ background: #eaece6; padding: 80px 40px; width: 100%; }
.mlw-wc .portfolio-links-header{ text-align: center; margin-bottom: 48px; }
.mlw-wc .portfolio-links-header h2{ font-family: 'Cormorant Garamond',"Cormorant Garamond Fallback", serif; font-size: 36px; font-weight: 400; color: #1a2332; margin-bottom: 12px; }
.mlw-wc .portfolio-links-header p{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 15px; color: #5a6670; }
.mlw-wc .portfolio-cards{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 32px; max-width: 900px; margin: 0 auto; }
.mlw-wc .portfolio-card{ background: #ffffff; border: 1px solid #d4d8ce; border-radius: 12px; padding: 40px; text-align: center; transition: all 0.3s ease; text-decoration: none; display: block; }
.mlw-wc .portfolio-card:hover, .mlw-wc .portfolio-card:focus-visible{ border-color: #0d7377; transform: translateY(-4px); box-shadow: 0 8px 24px rgba(10, 22, 40, 0.08); }
.mlw-wc .portfolio-card:focus-visible{ outline: 2px solid #1db095; outline-offset: 3px; }
.mlw-wc .portfolio-card .region-flag{ font-size: 48px; margin-bottom: 16px; }
.mlw-wc .portfolio-card h3{ font-family: 'Cormorant Garamond',"Cormorant Garamond Fallback", serif; font-size: 24px; font-weight: 500; color: #1a2332; margin: 0 0 8px; }
.mlw-wc .portfolio-card .region{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 12px; font-weight: 500; letter-spacing: 0.1em; color: #0d7377; text-transform: uppercase; margin: 0 0 16px; }
.mlw-wc .portfolio-card p{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 14px; color: #5a6670; line-height: 1.6; margin: 0 0 20px; }
.mlw-wc .portfolio-card .card-link{ font-family: 'Montserrat',"Montserrat Fallback", sans-serif; font-size: 12px; font-weight: 600; letter-spacing: 0.1em; color: #1db095; text-transform: uppercase; display: inline-flex; align-items: center; gap: 8px; transition: gap 0.3s ease; }
.mlw-wc .portfolio-card:hover .card-link{ gap: 12px; }
.mlw-wc .portfolio-card .card-link svg{ width: 16px; height: 16px; }

@media (max-width: 1024px) {
  .mlw-wc .page-hero h1{ font-size: 44px; }
  .mlw-wc .expertise-grid{ grid-template-columns: repeat(2, 1fr); }
  .mlw-wc .featured-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .mlw-wc .page-hero{ padding: 60px 20px; }
  .mlw-wc .page-hero h1{ font-size: 40px; }
  .mlw-wc .expertise-section{ padding: 48px 20px; }
  .mlw-wc .expertise-grid{ grid-template-columns: 1fr; }
  .mlw-wc .featured-section{ padding: 48px 20px; }
  .mlw-wc .featured-grid{ grid-template-columns: 1fr; }
  .mlw-wc .logos-section{ padding: 48px 20px; }
  .mlw-wc .logos-grid{ grid-template-columns: repeat(2, 1fr); }
  .mlw-wc .portfolio-links{ padding: 48px 20px; }
  .mlw-wc .portfolio-cards{ grid-template-columns: 1fr; }
}

/* ---------- closing CTA ---------- */
.mlw-wc .cta-section{width:100%;padding:80px 60px;background:#0a1628;text-align:center}
.mlw-wc .cta-container{width:min(720px,100%);margin:0 auto}
.mlw-wc .cta-section h2{margin:0 0 22px;color:#e8ebe4;font-family:"Cormorant Garamond","Cormorant Garamond Fallback",Georgia,serif;font-size:clamp(38px,5vw,52px);font-weight:400;line-height:1.1}
.mlw-wc .cta-section p{max-width:620px;margin:0 auto 30px;color:#a8b0a0;font-family:"Montserrat","Montserrat Fallback",sans-serif;font-size:16px;line-height:1.7}
.mlw-wc .cta-section p strong{color:#e8ebe4;font-weight:600}
.mlw-wc .cta-button{display:inline-flex;align-items:center;gap:14px;padding:16px 28px;background:#0d7377;border:1px solid #0d7377;border-radius:3px;color:#ffffff !important;font-family:"Montserrat","Montserrat Fallback",sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;line-height:1;text-decoration:none !important;text-transform:uppercase;transition:background-color .25s ease,border-color .25s ease,color .25s ease,transform .25s ease}
.mlw-wc .cta-button::after{content:"\2192";font-size:18px;font-weight:400;transition:transform .25s ease}
.mlw-wc .cta-button:hover,.mlw-wc .cta-button:focus-visible{background:#1db095;border-color:#1db095;color:#0a1628 !important;transform:translateY(-2px)}
.mlw-wc .cta-button:hover::after,.mlw-wc .cta-button:focus-visible::after{transform:translateX(4px)}
.mlw-wc .cta-button:focus-visible{outline:2px solid #1db095;outline-offset:3px}
@media (max-width:768px){
  .mlw-wc .cta-section{padding:56px 24px}
  .mlw-wc .cta-section p{font-size:15px}
  .mlw-wc .cta-button{justify-content:center;width:100%;max-width:320px}
}
@media (prefers-reduced-motion:reduce){.mlw-wc .cta-button,.mlw-wc .cta-button::after{transition:none !important}}
