/* styles.css - modern responsive layout */

/* Variables */
:root{
    --bg:#ffffff;
    --muted:#6b7280;
    --accent:#0f6fff;
    --accent-2:#0b5ed7;
    --card:#f8fbff;
    --radius:12px;
    --container:1100px;
    --max-width:1200px;
    --space:1.125rem;
    --brand-font: "Playfair Display", serif;
    --ui-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  }
  
  /* Base */
  *{box-sizing:border-box}
  html,body{height:100%}
  body{
    margin:0;
    font-family:var(--ui-font);
    color:#0f172a;
    background:var(--bg);
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    line-height:1.5;
    font-size:16px;
  }
  
  .container{
    width:100%;
    max-width:var(--container);
    margin:0 auto;
    padding:0 1rem;
  }
  
  /* Accessibility helper */
  .sr-only{
    position:absolute!important;
    width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
  }
  
  /* Header */
  .site-header{
    border-bottom:1px solid #eef2f7;
    background:#f0f9fa;
    position:sticky;
    top:0;
    z-index:40;
  }
  .header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0.5rem 0;
  }
  .brand{display:flex;gap:.6rem;align-items:center;color:var(--accent-2);text-decoration:none;font-weight:700}
  .brand-logo{height:65px;width:auto;max-width:300px;display:block;object-fit:contain}
  .brand-text-container{display:flex;flex-direction:column;gap:0.1rem;align-items:flex-start}
  .brand-name{font-family:var(--brand-font);font-size:1.4rem;font-weight:700;color:#05474e;line-height:1.1}
  .brand-tagline{font-family:var(--ui-font);font-size:0.9rem;font-weight:500;color:var(--muted);white-space:nowrap}
  .brand-text{font-family:var(--brand-font);font-size:1.05rem}
  .nav{display:block}
  .nav-list{display:flex;gap:0.5rem;list-style:none;margin:0;padding:0;align-items:center}
  .nav-list a{color:#374151;text-decoration:none;padding:.45rem .6rem;border-radius:8px;font-weight:500}
  .nav-list a:hover{background:#f3f6fb;color:var(--accent-2)}
  .btn-outline{border:1px solid var(--accent-2);padding:.45rem .8rem;border-radius:8px;color:var(--accent-2);text-decoration:none}
  .lang-switcher{display:flex;gap:0.35rem;align-items:center}
  .lang-flag{background:#f3f4f6;border:2px solid transparent;padding:.35rem .4rem;border-radius:6px;cursor:pointer;transition:all 0.2s;display:flex;align-items:center;justify-content:center}
  .lang-flag:hover{background:#e5e7eb;transform:scale(1.05)}
  .lang-flag.active{border-color:#4DB8AC;background:#fff;box-shadow:0 1px 3px rgba(77,184,172,0.2)}
  .flag-icon{display:block;border-radius:2px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}
  
  /* Mobile nav toggle */
  .nav-toggle{display:none;background:none;border:0}
  .hamburger{width:22px;height:2px;background:var(--accent-2);display:block;position:relative}
  .hamburger::before,.hamburger::after{content:"";position:absolute;left:0;width:22px;height:2px;background:var(--accent-2)}
  .hamburger::before{top:-7px} .hamburger::after{top:7px}
  
  /* Hero with Background */
  .hero{padding:3.25rem 0}
  .hero-background{
    background-image: url('images/office-background.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
  }
  .hero-background::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.3);
    z-index: 1;
  }
  .hero-background .container{
    position: relative;
    z-index: 2;
  }
  .hero-content{
    max-width: 700px;
    padding: 4rem 0;
  }
  .hero-title{font-family:var(--brand-font);font-size:2.05rem;margin:0 0 .5rem}
  .hero-sub{color:var(--muted);margin:0 0 1rem}
  .hero-cta{display:flex;gap:0.75rem;margin-bottom:1rem}
  .btn-primary{background:linear-gradient(135deg, #0d7a83 0%, #0a6b73 100%);color:white;padding:.8rem 2rem;border:none;border-radius:8px;text-decoration:none;font-weight:600;font-size:1rem;cursor:pointer;transition:all 0.3s ease;box-shadow:0 4px 15px rgba(13,122,131,0.3);text-transform:none;letter-spacing:0.5px}
  .btn-primary:hover{background:linear-gradient(135deg, #0a6b73 0%, #085a61 100%);transform:translateY(-2px);box-shadow:0 6px 20px rgba(10,107,115,0.4)}
  .btn-primary:active{transform:translateY(0);box-shadow:0 2px 10px rgba(77,184,172,0.3)}
  .btn-link{color:var(--accent);align-self:center;text-decoration:none}
  .features-list{list-style:none;padding:0;margin:1rem 0 0;color:var(--muted)}
  
  /* Cards */
  .section{padding:2.25rem 0}
  .section-title{font-size:1.3rem;margin:0 0 .5rem}
  .section-sub{color:var(--muted);margin:0 0 1.25rem}
  .cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
  .card{background:#f2f7fc;padding:1.15rem;border-radius:14px;box-shadow:0 4px 18px rgba(240,247,255,0.4);transition:transform 0.2s,box-shadow 0.2s;border:none}
  .card:hover{transform:translateY(-5px);box-shadow:0 12px 40px rgba(240,247,255,0.6)}
  .card h3{margin:0 0 .5rem;color:#000000}
  .card p{margin:0 0 1rem;color:#374151}
  .card-cta{text-decoration:none;color:var(--accent);font-weight:600}
  
  /* two-col layout & stats */
  .two-col{display:grid;grid-template-columns:1fr 360px;gap:2rem;align-items:start}
  .stat-grid{display:flex;gap:1rem;align-items:center;justify-content:flex-end}
  .stat{background:#fff;padding:1rem;border-radius:12px;text-align:center;min-width:120px;box-shadow:0 6px 24px rgba(12,18,35,0.04)}
  .stat-value{font-size:1.4rem;font-weight:700}
  .stat-label{color:var(--muted);font-size:.9rem}
  
  /* Packages */
  .packages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}
  .package-card{background:#fff;border:2px solid #0d7a83;border-radius:16px;padding:2rem;text-align:left;transition:transform 0.2s,box-shadow 0.2s}
  .package-card:hover{transform:translateY(-5px);box-shadow:0 12px 40px rgba(13,122,131,0.15)}
  .package-icon{margin-bottom:1rem}
  .package-title{font-size:1.3rem;font-weight:700;margin:0 0 0.5rem;color:#1E3A8A}
  .package-description{color:var(--muted);font-size:0.9rem;margin:0 0 1.5rem;line-height:1.5;min-height:3rem}
  .package-price{margin:1.5rem 0;display:flex;align-items:baseline;gap:0.25rem}
  .price-currency{color:#6b7280;font-size:1.5rem;font-weight:600}
  .price-amount{color:#1E3A8A;font-size:2.5rem;font-weight:700}
  .price-period{color:var(--muted);font-size:0.85rem;margin-left:0.25rem}
  .package-button{display:block;width:100%;background:linear-gradient(135deg, #0f8a94 0%, #0d7a83 100%);color:white;border:none;padding:0.9rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background 0.2s;margin:1.5rem 0;text-align:center;text-decoration:none}
  .package-button:hover{background:linear-gradient(135deg, #0d7a83 0%, #0a6b73 100%)}
  .package-features{list-style:none;padding:0;margin:1rem 0 0}
  .package-features li{padding:0.5rem 0;color:#1f2937;font-size:0.95rem;border-bottom:1px solid #f3f4f6}
  .package-features li:last-child{border-bottom:none}
  
  /* contact form */
  .contact-form{background:#fff;padding:1rem;border-radius:12px;box-shadow:0 6px 22px rgba(12,18,35,0.04)}
  .form-row{margin-bottom:.75rem}
  label{display:block;margin-bottom:.35rem;font-weight:600;font-size:.95rem}
  input,textarea{width:100%;padding:.6rem;border:1px solid #e6eef8;border-radius:8px;font-size:1rem;transition:border-color 0.2s}
  input.error,textarea.error{border-color:#dc2626 !important;background:#fef2f2}
  .phone-input-wrapper{display:flex;align-items:center;gap:0.5rem}
  .phone-prefix{background:#f3f4f6;padding:.6rem .8rem;border:1px solid #e6eef8;border-radius:8px;font-weight:600;color:#4b5563;white-space:nowrap}
  .phone-input-wrapper input{flex:1;width:auto}
  .form-actions{display:flex;gap:1rem;align-items:center;margin-top:.5rem}
  .form-status{color:var(--muted);font-size:.95rem}
  
  /* Contact info items */
  .contact-info-item{display:flex;align-items:center;gap:0.6rem;margin:0.5rem 0}
  .contact-info-item .contact-icon{flex-shrink:0;color:#0d7a83}
  .contact-info-item span{flex:1}
  
  /* footer */
  .site-footer{border-top:2px solid #d1d5db;padding:1rem 0;margin-top:2rem;background:#e8f4f5}
  .footer-inner{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
  .footer-links{display:flex;gap:.8rem;list-style:none;margin:0;padding:0}
  .footer-content{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;width:100%}
  .footer-social-section{display:flex;flex-direction:column;align-items:flex-end;gap:0.75rem}
  .footer-privacy{text-align:right}
  .footer-privacy a{color:#007781;text-decoration:none;font-size:0.9rem;font-weight:500}
  .footer-privacy a:hover{text-decoration:underline}
  .footer-privacy-mobile{display:none}
  .footer-privacy-mobile a{color:#007781;text-decoration:none;font-size:0.9rem;font-weight:500}
  .footer-privacy-mobile a:hover{text-decoration:underline}
  .footer-copyright{display:flex;flex-direction:column;gap:0.5rem}
  .footer-info{flex:1}
  .footer-left{display:flex;gap:2rem;align-items:flex-start}
  .footer-contact{margin-top:0}
  .footer-contact-title{margin:0 0 0.5rem;font-size:1rem;font-weight:600;color:#1f2937}
  .footer-contact p{margin:0.25rem 0;font-size:0.9rem;color:var(--muted)}
  
  /* Social Media Icons */
  .social-links{display:flex;gap:1rem;list-style:none;margin:0;padding:0;align-items:center}
  .social-links a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#f3f6fb;color:var(--muted);text-decoration:none;transition:all 0.2s}
  .social-links a:hover{background:var(--accent);color:white;transform:translateY(-2px);box-shadow:0 4px 12px rgba(15,111,255,0.3)}
  .social-icon{width:20px;height:20px;display:block}
  
  /* Contact Social Section */
  .contact-social{margin-top:1.5rem;text-align:center}
  .social-text{color:var(--muted);font-size:0.9rem;margin:0 0 0.75rem;font-weight:600}
  .contact-social-links{display:flex;gap:1rem;justify-content:center;align-items:center}
  .contact-social-links a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:#f3f6fb;text-decoration:none;transition:all 0.2s}
  .contact-social-links a:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.2)}
  .contact-social-links a[aria-label="Facebook"]{color:#1877f2}
  .contact-social-links a[aria-label="Facebook"]:hover{background:#1877f2;color:white}
  .contact-social-links a[aria-label="LinkedIn"]{color:#0077b5}
  .contact-social-links a[aria-label="LinkedIn"]:hover{background:#0077b5;color:white}
  .contact-social-links .social-icon{width:18px;height:18px}
  
  /* Utilities */
  .map-placeholder{height:160px;background:#f3f6fb;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--muted)}
  .contact-card{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 6px 24px rgba(12,18,35,0.04)}
  
  /* Responsive */
  @media (max-width:900px){
    .hero-content{max-width: 100%}
    .two-col{grid-template-columns:1fr}
    .header-inner{gap:.5rem}
    .nav{display:none}
    .nav-toggle{display:block}
    .team-grid{justify-content:flex-start}
    .container{padding:0 1rem}
    
    /* Mobile footer adjustments */
    .footer-social-section{display:none !important}
    .footer-content{flex-direction:column}
    .footer-left{flex-direction:column;gap:1rem}
    .footer-privacy-mobile{display:block !important}
    .footer-copyright{gap:0.5rem}
  }
  
  @media (max-width:900px){
    /* Mobile menu dropdown styling */
    .header-inner{position:relative !important}
    .nav[style*="display: block"]{
      display:block !important;
      position:absolute !important;
      top:100% !important;
      left:0 !important;
      right:0 !important;
      background:#f1fcf2 !important;
      box-shadow:0 4px 12px rgba(0,0,0,0.15) !important;
      z-index:1000 !important;
      padding:1rem 0 !important;
    }
    .nav[style*="display: block"] .nav-list{
      flex-direction:column !important;
      align-items:stretch !important;
      gap:0 !important;
    }
    .nav[style*="display: block"] .nav-list li{
      width:100% !important;
      border-bottom:1px solid rgba(0,0,0,0.05) !important;
    }
    .nav[style*="display: block"] .nav-list li:last-child{
      border-bottom:none !important;
    }
    .nav[style*="display: block"] .nav-list a{
      display:block !important;
      padding:0.875rem 1.5rem !important;
      border-radius:0 !important;
      width:100% !important;
    }
    .nav[style*="display: block"] .nav-list a:hover{
      background:rgba(255,255,255,0.6) !important;
    }
    .nav[style*="display: block"] .lang-switcher{
      justify-content:center !important;
      padding:1rem 0 0.5rem 0 !important;
      border-top:1px solid rgba(0,0,0,0.1) !important;
      margin-top:0.5rem !important;
    }
  }
  
  @media (max-width:480px){
    .hero-title{font-size:1.6rem}
    .brand-text{display:none}
  }
