*{margin:0;padding:0;box-sizing:border-box}
:root{
  --orange:#E8631A;--orange-dark:#C04F10;--black:#111111;--gray:#1a1a1a;
  --light-gray:#F7F5F2;--border:#E8E4DF;--white:#FFFFFF;
  --sf:-apple-system,BlinkMacSystemFont,'SF Pro Display','SF Pro Text','Inter','Helvetica Neue',Arial,sans-serif;
  --topbar-height:16px;
}
body{background:var(--white);color:var(--black);font-family:var(--sf);font-weight:300;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
a{color:inherit;text-decoration:none}
/* Touch optimisations — remove 300ms tap delay and blue flash on Android/iOS */
a,button,label,select,input[type=submit],input[type=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}

/* NAV */
nav{position:fixed;top:var(--topbar-height);left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0.85rem 2rem;border-bottom:1px solid var(--border);background:#ffffff}
.nav-logo{display:flex;align-items:center;flex-shrink:0}
.nav-links{display:flex;align-items:center;justify-content:space-evenly;flex:1;padding:0 1rem}
.nav-links a{font-size:0.92rem;font-weight:500;color:var(--gray);transition:color 0.3s;white-space:nowrap}
.nav-links a:hover{color:var(--orange)}
.lang-switcher{display:flex;gap:0.25rem;margin-left:0.75rem;border-left:1px solid var(--border);padding-left:0.75rem}
.lang-btn{font-size:0.88rem;font-weight:500;padding:0.2rem 0.45rem;border:1px solid transparent;cursor:pointer;background:none;color:var(--gray);transition:all 0.3s;font-family:var(--sf)}
.lang-btn.active,.lang-btn:hover{color:var(--orange);border-color:var(--orange)}
.nav-actions{display:flex;align-items:center;gap:0.75rem;margin-left:0.75rem;flex-shrink:0;border-left:1px solid var(--border);padding-left:0.75rem}
.nav-phone{font-size:0.85rem;font-weight:500;color:var(--gray);white-space:nowrap;transition:color 0.3s;letter-spacing:0.01em}
.nav-phone:hover{color:var(--orange)}
.nav-cta-btn{display:inline-block;background:var(--orange);color:#fff !important;font-size:0.82rem;font-weight:600;padding:0.42rem 1rem;border-radius:980px;transition:background 0.2s,transform 0.2s;white-space:nowrap;font-family:var(--sf)}
.nav-cta-btn:hover{background:var(--orange-dark);transform:translateY(-1px)}

/* HERO */
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:6rem 4rem 6rem;position:relative;background:#000;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 40%,rgba(232,99,26,0.05) 0%,transparent 70%)}
.hero-eyebrow{font-size:1rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:0;color:#FF6600;display:block}
.hero-title{font-size:clamp(2.4rem,5.5vw,4.2rem);font-weight:600;line-height:1.1;letter-spacing:-0.03em;margin-bottom:1.5rem;color:var(--black)}
.hero-title em{font-style:normal;color:var(--orange)}
.hero-subtitle{font-size:clamp(1rem,2.5vw,1.55rem);font-weight:700;max-width:1100px;margin:0 auto 2.5rem;line-height:1.5;letter-spacing:-0.01em;color:#ffffff;text-shadow:0 2px 12px rgba(0,0,0,0.4)}
.hero-divider{width:36px;height:2px;background:#E8631A;margin:0 auto 2.5rem}
.btn-primary{display:inline-block;font-size:clamp(0.95rem,2vw,1.25rem);font-weight:600;padding:0.95rem 2.5rem;border:1.5px solid var(--orange);color:#ffffff;transition:all 0.3s;position:relative;overflow:hidden;background:var(--orange);border-radius:980px;cursor:pointer;font-family:var(--sf)}
.btn-primary::before{content:'';position:absolute;inset:0;background:var(--orange-dark);transform:translateX(-100%);transition:transform 0.3s}
.btn-primary:hover::before{transform:translateX(0)}
.btn-primary:hover{color:var(--white)}
.btn-primary span{position:relative;z-index:1}
.cta-reassurance{font-size:0.85rem;color:rgba(255,255,255,0.85);margin-top:1rem;letter-spacing:0.02em;font-weight:600}

/* CTA BAND */
.cta-band{background:#1A4BA0;padding:4rem 1.5rem;text-align:center}
.cta-band-text{font-size:1.15rem;font-weight:300;color:rgba(255,255,255,0.9);margin-bottom:1.75rem;max-width:580px;margin-left:auto;margin-right:auto;letter-spacing:-0.01em;line-height:1.6}

/* SECTIONS */
section{padding:5.5rem 4rem;scroll-margin-top:80px}
.section-label{font-size:1rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:0.9rem}
.section-title{font-size:clamp(1.7rem,3.2vw,2.5rem);font-weight:600;letter-spacing:-0.03em;line-height:1.15;margin-bottom:1.25rem;color:#1A4BA0}
.section-line{width:32px;height:2px;background:var(--orange);margin-bottom:2.5rem}
.section-inner{max-width:1100px;margin:0 auto}

/* SERVICES */
.services{background:#F5EDE3}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;background:transparent;margin-top:3.5rem;border:none}
.service-card{background:var(--white);padding:2.2rem;transition:background 0.3s,transform 0.25s,box-shadow 0.25s;border-radius:16px}
.service-card:hover{transition:background 0.3s}.service-card:hover h3,.service-card:hover p{color:#fff}.service-card:hover .sicon{border-color:rgba(255,255,255,0.5)}.service-card:hover .sicon svg{stroke:#fff}
.service-card:hover .sicon{border-color:var(--orange)}
.sicon{width:38px;height:38px;border:1.5px solid var(--border);border-radius:9px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;transition:border-color 0.3s}
.sicon svg{width:16px;height:16px;stroke:var(--orange);fill:none;stroke-width:1.5}
.service-card h3{font-size:1rem;font-weight:600;letter-spacing:-0.02em;margin-bottom:0.5rem;color:var(--black)}
.service-card p{font-size:1rem;font-weight:300;color:var(--gray);line-height:1.75}

/* CLIENTS */
.clients-section{background:#F5EDE3}
.clients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:3rem}
.client-card{background:var(--light-gray);border:1px solid var(--border);border-radius:12px;padding:1.5rem 1.25rem;display:flex;align-items:center;gap:1rem;transition:all 0.3s}
.client-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.1);transition:all 0.25s}
.client-card:nth-child(1):hover{background:#E3F2FD;border-color:#2196F3;color:#0D47A1}
.client-card:nth-child(2):hover{background:#E8F5E9;border-color:#4CAF50;color:#1B5E20}
.client-card:nth-child(3):hover{background:#FFF3E0;border-color:#FF9800;color:#E65100}
.client-card:nth-child(4):hover{background:#F3E5F5;border-color:#9C27B0;color:#4A148C}
.client-card:nth-child(5):hover{background:#FFEBEE;border-color:#F44336;color:#B71C1C}
.client-card:nth-child(6):hover{background:#E0F7FA;border-color:#00BCD4;color:#006064}
.client-card:nth-child(7):hover{background:#FFF8E1;border-color:#FFC107;color:#FF6F00}
.client-card:nth-child(8):hover{background:#E8EAF6;border-color:#3F51B5;color:#1A237E}
.client-card:nth-child(9):hover{background:#FCE4EC;border-color:#E91E63;color:#880E4F}
.client-card:nth-child(1):hover .client-icon svg{stroke:#2196F3}
.client-card:nth-child(2):hover .client-icon svg{stroke:#4CAF50}
.client-card:nth-child(3):hover .client-icon svg{stroke:#FF9800}
.client-card:nth-child(4):hover .client-icon svg{stroke:#9C27B0}
.client-card:nth-child(5):hover .client-icon svg{stroke:#F44336}
.client-card:nth-child(6):hover .client-icon svg{stroke:#00BCD4}
.client-card:nth-child(7):hover .client-icon svg{stroke:#FFC107}
.client-card:nth-child(8):hover .client-icon svg{stroke:#3F51B5}
.client-card:nth-child(9):hover .client-icon svg{stroke:#E91E63}
.client-card:hover .client-icon{background:var(--orange);transition:background 0.25s,box-shadow 0.25s,transform 0.35s cubic-bezier(0.34,1.56,0.64,1)}
.client-icon{width:40px;height:40px;border-radius:10px;background:rgba(232,99,26,0.1);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.3s}
.client-icon svg{width:18px;height:18px;stroke:var(--orange);fill:none;stroke-width:1.5;transition:stroke 0.3s}
.client-card:hover .client-icon svg{stroke:var(--white)}
.client-name{font-size:1.02rem;font-weight:500;color:var(--black);letter-spacing:-0.01em;line-height:1.3}
.locations-wrap{margin-top:4rem;padding-top:4rem;border-top:1px solid var(--border)}
.locations-label{font-size:1rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:1.5rem}
.cantons-grid{display:flex;flex-wrap:wrap;gap:0.6rem;margin-top:1rem}
.canton-tag{display:inline-flex;align-items:center;gap:0.5rem;padding:0.5rem 1rem;border:1.5px solid var(--orange);border-radius:980px;font-size:1.1rem;font-weight:500;color:var(--orange);letter-spacing:-0.01em;transition:all 0.3s;cursor:default}
.canton-tag:hover{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,0.75);border-color:var(--orange)}
.canton-tag::before{content:'';width:5px;height:5px;background:var(--orange);border-radius:50%;flex-shrink:0;transition:background 0.3s}
.canton-tag:hover::before{background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,0.2)}
/* Canton flag backgrounds on hover */
.canton-tag[data-k="canton1"]:hover{background:url("images/GE.png") center/contain no-repeat,linear-gradient(90deg,#F5C400 50%,#CE1126 50%)}
.canton-tag[data-k="canton2"]:hover{background:url("images/Vaud.png") center/contain no-repeat,linear-gradient(180deg,#F0F0F0 50%,#009A44 50%)}
.canton-tag[data-k="canton3"]:hover{background:linear-gradient(180deg,#1C1C1C 50%,#F0F0F0 50%)}
.canton-tag[data-k="canton4"]:hover{background:url("images/Valais.png") center/contain no-repeat,linear-gradient(90deg,white 50%,#CE1126 50%)}
.canton-tag[data-k="canton5"]:hover{background:url("images/bern-bear.png") center/contain no-repeat,linear-gradient(45deg,#CC0000 30%,#FFCC00 30%,#FFCC00 70%,#CC0000 70%)}
.canton-tag[data-k="canton6"]:hover{background:linear-gradient(180deg,#F0F0F0 50%,#268BCC 50%)}
.canton-tag[data-k="canton7"]:hover{background:linear-gradient(to bottom left,#F0F0F0 50%,#0070B4 50%)}

/* ABOUT */
.about-section{background:#FFFFFF}
.about{display:grid;grid-template-columns:1fr 1.6fr;gap:4rem;align-items:center}
.about-text p{font-size:1.07rem;font-weight:300;color:var(--gray);margin-bottom:1.5rem;line-height:1.85;letter-spacing:-0.01em;text-align:justify}
.company-names{margin:0 0 1.5rem 0;display:flex;flex-direction:column;gap:0.6rem}
.company-name-item{display:flex;align-items:flex-start;gap:0.65rem;font-size:0.97rem;font-weight:500;color:#1A4BA0;letter-spacing:-0.01em}
.company-dot{width:6px;height:6px;background:#1A4BA0;border-radius:50%;flex-shrink:0;margin-top:0.45em}
.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-top:2.5rem;padding-top:2.5rem;padding-bottom:2.5rem;border-top:none;max-width:100%;margin-left:0;margin-right:0;padding-left:clamp(1rem,4vw,4rem);padding-right:clamp(1rem,4vw,4rem);background:#FFFFFF}
.stats>div{text-align:center}.stat-num{font-size:2.2rem;font-weight:600;letter-spacing:-0.04em;color:#1A4BA0}
.stat-label{font-size:1rem;font-weight:500;letter-spacing:0.05em;text-transform:uppercase;color:var(--gray);margin-top:0.2rem}
.about-card{background:#D6E8F5;border:2px solid #1A4BA0;border-left:4px solid #1A4BA0;padding:2.5rem 3rem;border-radius:16px}
.about-card-title{font-size:1.05rem;font-weight:600;letter-spacing:-0.02em;margin-bottom:1.25rem;color:#1A4BA0}
.about-list{list-style:none}
.about-list li:empty{display:none}.about-list li{font-size:1rem;font-weight:300;color:var(--gray);padding:0.65rem 0;border-bottom:1px solid rgba(26,75,160,0.2);display:flex;align-items:center;gap:0.75rem;letter-spacing:-0.005em;transition:font-size 0.25s ease,color 0.25s ease,font-weight 0.25s ease}
.about-list li:hover{font-size:1.08rem;color:#1A4BA0;font-weight:500;cursor:default}
.about-list li:hover::before{background:#1A4BA0}
.about-list li:last-child{border-bottom:none}
.about-card .about-list li{border-bottom-color:rgba(26,75,160,0.2)}
.about-list li::before{content:'';width:5px;height:5px;background:#1A4BA0;flex-shrink:0;border-radius:50%}

/* CONTACT */
.contact-section{background:#F5EDE3;color:#1a1a1a}
.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:5rem}
.contact-desc{font-size:1.05rem;font-weight:300;color:var(--gray);margin-bottom:2rem;line-height:1.85;letter-spacing:-0.01em}
.contact-info-grid{display:table;border-spacing:0;margin-bottom:1.5rem}
.contact-detail{display:table-row}
.cdl{display:table-cell;font-size:0.78rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);white-space:nowrap;vertical-align:top;padding-right:1.25rem;padding-bottom:1rem;text-align:right}
.cdv{display:table-cell;font-size:1.02rem;font-weight:300;color:var(--gray);letter-spacing:-0.01em;vertical-align:top;padding-bottom:1rem}
.hours-badge{display:inline-flex;align-items:center;gap:0.5rem;border:1.5px solid var(--orange);padding:0.45rem 1rem;margin-top:1.25rem;font-size:1.02rem;font-weight:500;color:var(--orange);border-radius:980px}
.dot{width:6px;height:6px;background:#34C759;border-radius:50%;animation:pulse 2s infinite;flex-shrink:0}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.4}}
.form-wrap{background:var(--light-gray);border:1px solid var(--border);padding:2.5rem;border-radius:16px}
form input,form textarea,form select{width:100%;background:transparent;border:none;border-bottom:1.5px solid var(--border);padding:0.7rem 0;font-family:var(--sf);font-size:1.02rem;font-weight:300;color:var(--black);margin-bottom:1.4rem;outline:none;transition:border-color 0.3s;letter-spacing:-0.01em}
form input::placeholder,form textarea::placeholder{color:#BBBBBB}
form input:focus,form textarea:focus,form select:focus{border-color:var(--orange)}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden;pointer-events:none;tabindex:-1}
form select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:1.5rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23BBBBBB' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center;background-size:1.1rem}
form select option{color:var(--black);background:#fff}
form textarea{resize:none;height:90px}
form .btn-primary{width:100%;text-align:center;border:1.5px solid var(--orange)}

/* SCROLL TO TOP */
#scroll-top{position:fixed;bottom:5.5rem;right:2rem;width:44px;height:44px;background:var(--orange);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,0.2);opacity:0;pointer-events:none;transition:opacity 0.3s,transform 0.3s;z-index:999}
#scroll-top.visible{opacity:1;pointer-events:all}
#scroll-top:hover{transform:translateY(-3px)}
#scroll-top svg{stroke:#fff;fill:none;stroke-width:2.5;width:20px;height:20px}

/* FOOTER */
footer{padding:2.5rem 4rem;border-top:2px solid var(--orange);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;background:#7B1717;color:#F5EDE3}
.footer-logo{display:flex;align-items:center}
.footer-text{font-size:1.02rem;font-weight:600;color:#ffffff}
.footer-nav{display:flex;flex-wrap:wrap;gap:0.4rem 1.6rem;justify-content:flex-end;align-items:center}
.footer-nav-link{color:rgba(255,255,255,0.75);text-decoration:none;font-size:0.95rem;transition:color 0.2s}
.footer-nav-link:hover{color:#E8631A}

/* RESPONSIVE */
@media(max-width:900px){
  nav{padding:1.1rem 1.5rem}
  .nav-tagline{display:none}
  .nav-links{display:none}
  .nav-actions{display:none}
  section{padding:4rem 1.5rem;scroll-margin-top:70px}
  .hero{padding:6rem 1.5rem 6rem}
  .about,.contact-inner{grid-template-columns:1fr;gap:2rem}
  .clients-grid{grid-template-columns:1fr 1fr}
  footer{flex-direction:column;text-align:center;padding:2rem 1.5rem}
  .footer-nav{justify-content:center}
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .stats{grid-template-columns:repeat(2,1fr);padding-left:1.5rem;padding-right:1.5rem;gap:1.5rem}
  .service-detail-panel{width:100%;border-radius:12px 12px 0 0;top:auto;bottom:0;transform:translateY(100%);right:0}
  .service-detail-panel.visible{transform:translateY(0)}
  .blog-section{padding:4rem 1.5rem}
  .blog-grid{grid-template-columns:1fr}
  .about-card{padding:1.5rem}
  .form-wrap{padding:1.5rem}
  .team-section,.why-section{padding:4rem 1.5rem}
  .blog-modal{padding:2rem}
  .hamburger{min-width:44px;min-height:44px;align-items:center;justify-content:center}
  .mobile-lang .lang-btn{padding:0.5rem 0.75rem;min-width:36px}
}
@media(max-width:480px){
  .clients-grid{grid-template-columns:1fr}
  .hero-title{font-size:clamp(1.8rem,6vw,2.4rem)}
  .hero-subtitle{font-size:1.1rem}
  .hero{padding:5rem 1.25rem}
  .btn-primary{font-size:1rem;padding:0.8rem 1.8rem}
  .services-grid{grid-template-columns:1fr}
  .stat-num{font-size:1.6rem}
  .stat-label{font-size:0.85rem}
  .section-title{font-size:clamp(1.4rem,5vw,1.9rem)}
  nav{top:var(--topbar-height)}
  .canton-tag{font-size:0.95rem;padding:0.4rem 0.75rem}
  .blog-add-btn{font-size:1rem;padding:0.65rem 1.2rem}
  .footer-text{font-size:0.9rem}
  .about-text p{text-align:left}
  .blog-card-body{padding:1rem}
  .blog-form-overlay{padding:0.5rem}
  .blog-form{padding:1.25rem}
  .blog-modal{padding:1.25rem;border-radius:10px}
}
@media(max-width:360px){
  .stats{grid-template-columns:1fr;gap:1rem}
  .hero-subtitle{font-size:1rem}
  section{padding:3rem 1rem}
}
/* Touch devices: disable card lift/scale transforms that stick on tap */
@media(hover:none){
  .blog-card:hover{transform:none}
  .why-card:hover{transform:none}
  .client-card:hover{transform:none}
  .team-card:hover{transform:none}
  .service-card:hover .sicon{transform:none;box-shadow:none}
}

/* SERVICE DETAIL PANEL */
.services-wrap{position:relative}
.service-detail-panel{
  position:fixed;
  top:50%;
  right:0;
  transform:translateY(-50%) translateX(100%);
  width:380px;
  background:#ffffff;
  border:1px solid #E8E4DF;
  border-left:3px solid #E8631A;
  border-radius:12px 0 0 12px;
  padding:2rem 1.75rem;
  box-shadow:-4px 0 24px rgba(0,0,0,0.12);
  transition:transform 0.35s cubic-bezier(0.25,0.46,0.45,0.94);
  z-index:9999;
  pointer-events:none;
  overflow-y:auto;
  max-height:80vh;
}
.service-detail-panel.visible{
  transform:translateY(-50%) translateX(0);
  pointer-events:auto;
}
.sdp-company{
  font-size:0.97rem;
  font-weight:600;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--orange);
  margin-bottom:0.5rem;
}
.sdp-title{
  font-size:1.3rem;
  font-weight:600;
  letter-spacing:-0.02em;
  color:var(--black);
  margin-bottom:1rem;
  line-height:1.2;
}
.sdp-divider{width:28px;height:2px;background:var(--orange);margin-bottom:1.25rem}
.sdp-item{margin-bottom:1.1rem}
.sdp-item-title{
  font-size:1.02rem;
  font-weight:600;
  color:var(--black);
  margin-bottom:0.3rem;
  letter-spacing:-0.01em;
}
.sdp-item-desc{
  font-size:0.97rem;
  font-weight:300;
  color:var(--gray);
  line-height:1.7;
  letter-spacing:-0.005em;
}
.service-card{cursor:pointer}
.service-card.active{box-shadow:0 0 0 3px var(--orange) inset}

/* BLOG SECTION */
.blog-section{background:#F5EDE3;padding:5.5rem 4rem;border-top:3px solid var(--orange)}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:3rem}
.blog-card{background:var(--white);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:background 0.3s,transform 0.25s,box-shadow 0.25s;cursor:pointer;position:relative}
.blog-card:hover{transform:translateY(-5px) scale(1.02)}
.blog-card:hover .blog-card-tag{color:rgba(255,255,255,0.85)}
.blog-card:hover .blog-card-title{color:#ffffff}
.blog-card:hover .blog-card-date{color:rgba(255,255,255,0.7)}
.blog-card:hover .blog-card-excerpt{color:rgba(255,255,255,0.8)}
.blog-card:hover .blog-card-read{color:#ffffff}
.blog-card:hover .blog-card-read svg{stroke:#ffffff}
.blog-card:nth-child(7n+1):hover{background:#1A5276;border-color:#1A5276;box-shadow:0 12px 32px rgba(26,82,118,0.35)}
.blog-card:nth-child(7n+2):hover{background:#1E8449;border-color:#1E8449;box-shadow:0 12px 32px rgba(30,132,73,0.35)}
.blog-card:nth-child(7n+3):hover{background:#6C3483;border-color:#6C3483;box-shadow:0 12px 32px rgba(108,52,131,0.35)}
.blog-card:nth-child(7n+4):hover{background:#B7770D;border-color:#B7770D;box-shadow:0 12px 32px rgba(183,119,13,0.35)}
.blog-card:nth-child(7n+5):hover{background:#922B21;border-color:#922B21;box-shadow:0 12px 32px rgba(146,43,33,0.35)}
.blog-card:nth-child(7n+6):hover{background:#0E6655;border-color:#0E6655;box-shadow:0 12px 32px rgba(14,102,85,0.35)}
.blog-card:nth-child(7n):hover{background:#154360;border-color:#154360;box-shadow:0 12px 32px rgba(21,67,96,0.35)}
.blog-card-img{width:100%;height:110px;background:linear-gradient(135deg,#eef2f7,#dde6f0);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.4rem;border-bottom:1px solid var(--border)}
.blog-card-img-placeholder{width:32px;height:32px;opacity:0.35}
.blog-card-img-placeholder-label{font-size:0.75rem;color:#1A4BA0;opacity:0.5;font-weight:500;letter-spacing:0.05em;text-transform:uppercase}
.blog-card-body{padding:1.5rem}
.blog-card-tag{display:inline-block;font-size:0.97rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:0.6rem}
.blog-card-title{font-size:1rem;font-weight:600;letter-spacing:-0.02em;color:var(--black);margin-bottom:0.5rem;line-height:1.35}
.blog-card-date{font-size:1.05rem;color:#444;margin-bottom:0.75rem}
.blog-card-excerpt{font-size:1rem;font-weight:300;color:var(--gray);line-height:1.7}
.blog-card-read{display:inline-flex;align-items:center;gap:0.4rem;margin-top:1rem;font-size:1.1rem;font-weight:500;color:var(--orange)}
.blog-card-read svg{width:14px;height:14px;stroke:var(--orange);fill:none;stroke-width:2;transition:transform 0.2s}
.blog-card:hover .blog-card-read svg{transform:translateX(3px)}
.blog-card-admin{display:none;position:absolute;top:0.55rem;right:0.55rem;gap:0.35rem;z-index:3}
body.admin-mode .blog-card-admin{display:flex}
.blog-card-admin-btn{border:none;border-radius:6px;padding:0.28rem 0.65rem;cursor:pointer;font-size:0.75rem;font-weight:600;line-height:1.5;transition:opacity 0.2s;opacity:0.88}
.blog-card-admin-btn:hover{opacity:1}
.blog-card-edit-btn{background:#1A4BA0;color:#fff}
.blog-card-del-btn{background:#922B21;color:#fff}

/* BLOG MODAL */
.blog-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:10000;display:none;align-items:center;justify-content:center;padding:1rem}
.blog-modal-overlay.open{display:flex}
.blog-modal{background:#fff;border-radius:16px;max-width:720px;width:100%;max-height:90vh;overflow-y:auto;padding:3rem;position:relative}
@media(max-width:480px){.blog-modal{padding:1.5rem;border-radius:12px}.blog-modal-title{font-size:1.3rem}.blog-modal-body{font-size:1rem}}
.blog-modal-close{position:absolute;top:1.25rem;right:1.25rem;background:none;border:none;cursor:pointer;font-size:1.4rem;color:var(--gray);line-height:1}
.blog-modal-tag{font-size:1rem;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--orange);margin-bottom:0.75rem}
.blog-modal-title{font-size:1.6rem;font-weight:600;letter-spacing:-0.03em;color:var(--black);line-height:1.2;margin-bottom:0.5rem}
.blog-modal-date{font-size:1.07rem;color:#444;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}
.blog-modal-body{font-size:1.1rem;font-weight:300;color:var(--gray);line-height:1.85}
.blog-modal-body p{margin-bottom:1rem}

/* ADD POST BUTTON */
.blog-add-btn{display:inline-flex;align-items:center;gap:0.5rem;margin-top:2.5rem;font-size:1.1rem;font-weight:500;color:#fff;background:var(--orange);border:none;padding:0.75rem 1.5rem;border-radius:980px;cursor:pointer;font-family:var(--sf);transition:background 0.3s}
.blog-add-btn:hover{background:var(--orange-dark)}
.blog-add-btn svg{width:14px;height:14px;stroke:#fff;fill:none;stroke-width:2.5}
.blog-show-all{display:inline-flex;align-items:center;gap:0.5rem;margin-top:2rem;font-size:1.05rem;font-weight:500;color:#1A4BA0;background:none;border:2px solid #1A4BA0;padding:0.7rem 1.75rem;border-radius:980px;cursor:pointer;font-family:var(--sf);transition:background 0.2s,color 0.2s}
.blog-show-all:hover{background:#1A4BA0;color:#fff}

/* ADD POST FORM */
.blog-form-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:10000;display:none;align-items:center;justify-content:center;padding:2rem}
.blog-form-overlay.open{display:flex}
.blog-form{background:#fff;border-radius:16px;max-width:640px;width:100%;padding:2.5rem;position:relative;max-height:92vh;overflow-y:auto}
.blog-form h3{font-size:1.2rem;font-weight:600;letter-spacing:-0.02em;color:var(--black);margin-bottom:1.5rem}
.blog-form input:not([type=hidden]),.blog-form textarea,.blog-form select{width:100%;background:#f7f5f2;border:1px solid var(--border);border-radius:8px;padding:0.7rem 1rem;font-family:var(--sf);font-size:1.02rem;color:var(--black);margin-bottom:1rem;outline:none;transition:border-color 0.3s}
.blog-form input:focus,.blog-form textarea:focus,.blog-form select:focus{border-color:var(--orange)}
.blog-form textarea{resize:vertical;min-height:140px}
.blog-form-btns{display:flex;gap:0.75rem;margin-top:0.5rem}
.blog-form-submit{flex:1;background:var(--orange);color:#fff;border:none;border-radius:980px;padding:0.75rem;font-family:var(--sf);font-size:1rem;font-weight:500;cursor:pointer;transition:background 0.3s}
.blog-form-submit:hover{background:var(--orange-dark)}
.blog-form-cancel{flex:1;background:none;color:var(--gray);border:1.5px solid var(--border);border-radius:980px;padding:0.75rem;font-family:var(--sf);font-size:1rem;font-weight:500;cursor:pointer}
.blog-form-preview-btn{flex:1;background:#f0f4ff;color:#1A4BA0;border:1.5px solid #1A4BA0;border-radius:980px;padding:0.75rem;font-family:var(--sf);font-size:1rem;font-weight:500;cursor:pointer;transition:background 0.2s,color 0.2s}
.blog-form-preview-btn:hover{background:#1A4BA0;color:#fff}
.blog-form .ql-toolbar{border:1px solid var(--border);border-bottom:none;border-radius:8px 8px 0 0;background:#f7f5f2}
.blog-form .ql-container{border:1px solid var(--border);border-radius:0 0 8px 8px;font-family:var(--sf);font-size:1rem;min-height:180px;margin-bottom:1rem}
.blog-form .ql-editor{min-height:160px;font-family:var(--sf)}
.blog-form .ql-editor.ql-blank::before{font-style:normal;color:#aaa}
.blog-form .ql-toolbar input,.blog-form .ql-toolbar button,.blog-form .ql-container input{width:auto!important;background:#fff!important;border:1px solid #ccc!important;border-radius:4px!important;padding:2px 6px!important;margin-bottom:0!important;min-height:unset!important}
.blog-preview-panel{display:none;margin-bottom:1rem;border:1px solid var(--border);border-radius:8px;padding:1.25rem;background:#fafaf8;max-height:320px;overflow-y:auto}
.blog-preview-panel .preview-label{font-size:0.78rem;font-weight:700;color:#999;text-transform:uppercase;letter-spacing:0.07em;margin-bottom:0.75rem}
.blog-preview-panel .preview-tag{display:inline-block;background:#E8631A;color:#fff;font-size:0.72rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;padding:0.2rem 0.65rem;border-radius:999px;margin-bottom:0.5rem}
.blog-preview-panel .preview-title{font-size:1.2rem;font-weight:600;line-height:1.3;margin-bottom:0.25rem}
.blog-preview-panel .preview-date{font-size:0.85rem;color:#888;margin-bottom:0.75rem}
.blog-preview-panel .preview-excerpt{font-size:0.93rem;color:#444;margin-bottom:0.75rem;padding-bottom:0.75rem;border-bottom:1px solid #eee}
.blog-preview-panel .preview-body{font-size:0.95rem;line-height:1.7}
.blog-preview-panel .preview-body p{margin-bottom:0.6rem}
.html-mode-btn{font-size:0.8rem;color:#1A4BA0;background:none;border:1px solid #c5d4f0;border-radius:6px;padding:0.22rem 0.65rem;cursor:pointer;font-family:var(--sf);transition:background 0.15s,color 0.15s}
.html-mode-btn:hover{background:#1A4BA0;color:#fff;border-color:#1A4BA0}
footer .footer-text{color:#C4A882}footer .section-label{color:#C4A882}.service-card .sicon{transition:transform 0.35s cubic-bezier(0.34,1.56,0.64,1),background 0.3s,border-color 0.3s,box-shadow 0.3s}.service-card .sicon svg{transition:transform 0.35s cubic-bezier(0.34,1.56,0.64,1),stroke 0.3s}.service-card:hover .sicon{transform:scale(1.25);box-shadow:0 4px 16px rgba(232,99,26,0.25)}.service-card:hover .sicon svg{transform:scale(1.1)}.client-card:nth-child(1):hover .client-icon{background:#2196F3}.client-card:nth-child(1):hover .client-icon svg{stroke:#fff}.client-card:nth-child(2):hover .client-icon{background:#4CAF50}.client-card:nth-child(2):hover .client-icon svg{stroke:#fff}.client-card:nth-child(3):hover .client-icon{background:#FF9800}.client-card:nth-child(3):hover .client-icon svg{stroke:#fff}.client-card:nth-child(4):hover .client-icon{background:#9C27B0}.client-card:nth-child(4):hover .client-icon svg{stroke:#fff}.client-card:nth-child(5):hover .client-icon{background:#F44336}.client-card:nth-child(5):hover .client-icon svg{stroke:#fff}.client-card:nth-child(6):hover .client-icon{background:#00BCD4}.client-card:nth-child(6):hover .client-icon svg{stroke:#fff}.client-card:nth-child(7):hover .client-icon{background:#FFC107}.client-card:nth-child(7):hover .client-icon svg{stroke:#fff}.client-card:nth-child(8):hover .client-icon{background:#3F51B5}.client-card:nth-child(8):hover .client-icon svg{stroke:#fff}.client-card:nth-child(9):hover .client-icon{background:#E91E63}.client-card:nth-child(9):hover .client-icon svg{stroke:#fff}.client-card:hover .client-icon{transform:scale(1.25)}
/* MOBILE NAV */
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
.hamburger span{display:block;width:24px;height:2px;background:var(--gray);transition:all 0.3s}
@media(max-width:900px){
  .hamburger{display:flex}
  .mobile-nav{display:none;position:fixed;top:73px;left:0;right:0;background:#fff;border-bottom:1px solid var(--border);padding:1.5rem 2rem;z-index:99;flex-direction:column;gap:1.25rem}
  .mobile-nav.open{display:flex}
  .mobile-nav a{font-size:1.1rem;font-weight:500;color:var(--gray)}
  .mobile-nav a:hover{color:var(--orange)}
  .mobile-lang{display:flex;gap:0.5rem;padding-top:1rem;border-top:1px solid var(--border)}
}
/* HERO SLIDESHOW */
.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:0;transition:opacity 1.2s ease-in-out}
.hero-slide.active{opacity:1}
.hero-dots{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;gap:0.6rem;z-index:3}
.hero-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,0.45);border:1.5px solid rgba(255,255,255,0.7);cursor:pointer;transition:background 0.3s}
.hero-dot.active{background:#ffffff}
/* HERO FADE-IN */
.hero-content{opacity:0;transform:translateY(18px);transition:opacity 0.9s ease 0.3s,transform 0.9s ease 0.3s;max-width:900px;width:100%}
.hero-content.visible{opacity:1;transform:translateY(0)}

/* SERVICE PANEL — mobile close button & backdrop */
.sdp-mobile-close{display:none}
.sdp-backdrop{display:none}
@media(max-width:900px){
  .sdp-backdrop{position:fixed;inset:0;background:rgba(0,0,0,0.4);z-index:998}
  .sdp-backdrop.visible{display:block}
}
@media(max-width:900px){
  .sdp-mobile-close{display:flex;align-items:center;justify-content:center;position:absolute;top:0.75rem;right:0.75rem;width:32px;height:32px;background:none;border:1.5px solid var(--border);border-radius:50%;font-size:1.2rem;color:var(--gray);cursor:pointer;line-height:1}
  .sdp-mobile-close:hover{background:var(--orange);border-color:var(--orange);color:#fff}
}

/* SERVICE CARDS — mobile hover background fix */
@media(max-width:900px){
  .service-card:nth-child(1):hover{background:#1A5276}
  .service-card:nth-child(2):hover{background:#1E8449}
  .service-card:nth-child(3):hover{background:#6C3483}
  .service-card:nth-child(4):hover{background:#B7770D}
  .service-card:nth-child(5):hover{background:#922B21}
  .service-card:nth-child(6):hover{background:#0E6655}
}

/* SERVICE CARD CTA */
.svc-cta{display:inline-flex;align-items:center;gap:0.35rem;margin-top:1rem;font-size:0.95rem;font-weight:500;color:var(--orange);opacity:0;transform:translateY(6px);transition:opacity 0.25s,transform 0.25s}
.service-card:hover .svc-cta{opacity:1;transform:translateY(0)}
.svc-cta svg{width:12px;height:12px;stroke:var(--orange);fill:none;stroke-width:2.5;transition:transform 0.2s}
.service-card:hover .svc-cta svg{transform:translateX(3px)}

/* SOCIAL LINKS */
.social-links{display:flex;gap:0.75rem;align-items:center}
.social-link{width:36px;height:36px;border-radius:50%;border:1.5px solid #0A66C2;background:#0A66C2;display:flex;align-items:center;justify-content:center;transition:all 0.3s;color:#ffffff}
.social-link:hover{border-color:#0A66C2;background:#0A66C2}
.social-link svg{width:16px;height:16px;fill:currentColor}

/* TEAM SECTION */
.team-section{background:#FFFFFF;padding:5.5rem 4rem}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}
.team-card{background:var(--light-gray);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:all 0.3s}
.team-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,0.08)}
.team-avatar{width:100%;height:220px;background:linear-gradient(135deg,#f0ebe4,#e0d5c8);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.team-avatar img{width:100%;height:100%;object-fit:cover}
.team-avatar-placeholder{width:80px;height:80px;border-radius:50%;background:#E8631A;display:flex;align-items:center;justify-content:center}
.team-avatar-placeholder svg{width:40px;height:40px;stroke:#fff;fill:none;stroke-width:1.5}
.team-info{padding:1.5rem}
.team-name{font-size:1.05rem;font-weight:600;color:var(--black);letter-spacing:-0.02em;margin-bottom:0.25rem}
.team-title{font-size:0.95rem;font-weight:500;color:var(--orange);margin-bottom:0.75rem;letter-spacing:0.01em}
.team-bio{font-size:0.97rem;font-weight:300;color:var(--gray);line-height:1.7}
.team-linkedin{display:inline-flex;align-items:center;gap:0.4rem;margin-top:1rem;font-size:0.9rem;font-weight:500;color:var(--orange);transition:opacity 0.2s}
.team-linkedin:hover{opacity:0.7}
.team-linkedin svg{width:14px;height:14px;fill:var(--orange)}
@media(max-width:900px){.team-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.team-grid{grid-template-columns:1fr}}

/* WHY CHOOSE US */
.why-section{background:#ffffff;padding:5.5rem 4rem}
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:3rem}
.why-card{border:1px solid var(--border);border-radius:16px;padding:2rem;transition:all 0.3s;background:var(--light-gray);cursor:default}
.why-card:hover{transform:translateY(-4px)}
.why-card:hover h3{color:#ffffff}
.why-card:hover p{color:rgba(255,255,255,0.85)}
.why-card:hover .why-icon{background:rgba(255,255,255,0.2)}
.why-card:hover .why-icon svg{stroke:#ffffff}
.why-card:nth-child(1):hover{background:#1A5276;border-color:#1A5276;box-shadow:0 12px 32px rgba(26,82,118,0.35)}
.why-card:nth-child(2):hover{background:#1E8449;border-color:#1E8449;box-shadow:0 12px 32px rgba(30,132,73,0.35)}
.why-card:nth-child(3):hover{background:#117A65;border-color:#117A65;box-shadow:0 12px 32px rgba(17,122,101,0.35)}
.why-card:nth-child(4):hover{background:#6C3483;border-color:#6C3483;box-shadow:0 12px 32px rgba(108,52,131,0.35)}
.why-icon{width:44px;height:44px;border-radius:10px;background:rgba(232,99,26,0.15);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;transition:background 0.3s}
.why-icon svg{width:20px;height:20px;stroke:var(--orange);fill:none;stroke-width:1.5;transition:stroke 0.3s}
.why-card h3{font-size:1rem;font-weight:600;color:var(--black);margin-bottom:0.5rem;letter-spacing:-0.01em;transition:color 0.3s}
.why-card p{font-size:0.97rem;font-weight:300;color:var(--gray);line-height:1.75;transition:color 0.3s}
@media(max-width:900px){.why-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.why-grid{grid-template-columns:1fr}}

/* FAQ SECTION */
.faq-section{background:#ffffff;padding:5.5rem 4rem}
.faq-grid{margin-top:3rem;max-width:860px;margin-left:auto;margin-right:auto}
.faq-item{border-bottom:1px solid var(--border);overflow:hidden}
.faq-item:first-child{border-top:1px solid var(--border)}
.faq-question{width:100%;background:none;border:none;text-align:left;padding:1.4rem 0;display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;font-size:1.05rem;font-weight:600;color:#1A4BA0;letter-spacing:-0.02em;line-height:1.4;transition:color 0.25s}
.faq-question:hover{color:var(--orange)}
.faq-question svg{width:20px;height:20px;flex-shrink:0;stroke:var(--orange);fill:none;stroke-width:2;transition:transform 0.35s cubic-bezier(0.34,1.56,0.64,1)}
.faq-item.open .faq-question svg{transform:rotate(45deg)}
.faq-item.open .faq-question{color:var(--orange)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.4s ease}
.faq-item.open .faq-answer{max-height:2000px}
.faq-answer-inner{padding:0 0 1.4rem 0;font-size:1rem;font-weight:300;color:var(--gray);line-height:1.8}
@media(max-width:900px){.faq-section{padding:4rem 2rem}}
@media(max-width:480px){.faq-section{padding:3rem 1.2rem}.faq-question{font-size:0.97rem}}
.faq-top-btn{background:none;border:1px solid var(--border);border-radius:980px;padding:0.55rem 1.4rem;font-size:0.9rem;font-weight:500;color:var(--gray);cursor:pointer;transition:all 0.2s;letter-spacing:0.01em}
.faq-top-btn:hover{background:var(--orange);border-color:var(--orange);color:#fff}

/* HOW IT WORKS */
.how-section{background:#1A4BA0;padding:5.5rem 4rem}
.how-section .section-label{color:var(--orange)}
.how-section .section-title{color:#ffffff}
.how-section .section-line{background:var(--orange)}
.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:3.5rem;position:relative}
.how-step{padding:0 2rem;position:relative;z-index:1}
.how-step:first-child{padding-left:0}
.how-step:last-child{padding-right:0}
.how-num{font-size:3rem;font-weight:700;color:var(--orange);letter-spacing:-0.04em;line-height:1;margin-bottom:1.25rem;font-variant-numeric:tabular-nums}
.how-step h3{font-size:1.1rem;font-weight:600;color:#ffffff;letter-spacing:-0.02em;margin-bottom:0.75rem}
.how-step p{font-size:1rem;font-weight:300;color:rgba(255,255,255,0.6);line-height:1.8}
@media(max-width:900px){
  .how-section{padding:4rem 2rem}
  .how-grid{grid-template-columns:1fr;gap:2.5rem}
  .how-grid::before{display:none}
  .how-step{padding:0}
}

/* COOKIE CONSENT BANNER */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9000;background:#111111;border-top:1px solid rgba(255,255,255,0.08);padding:1.1rem 4rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;transform:translateY(100%);transition:transform 0.4s cubic-bezier(0.16,1,0.3,1)}
.cookie-banner.cb-visible{transform:translateY(0)}
.cookie-banner p{font-size:0.92rem;font-weight:300;color:rgba(255,255,255,0.7);line-height:1.6;margin:0;flex:1}
.cookie-banner a{color:var(--orange);text-decoration:underline}
.cookie-btns{display:flex;gap:0.75rem;flex-shrink:0}
.cb-accept{background:var(--orange);color:#fff;border:none;border-radius:980px;padding:0.55rem 1.3rem;font-family:var(--sf);font-size:0.92rem;font-weight:500;cursor:pointer;transition:background 0.25s;white-space:nowrap}
.cb-accept:hover{background:var(--orange-dark)}
.cb-decline{background:none;color:rgba(255,255,255,0.5);border:1px solid rgba(255,255,255,0.2);border-radius:980px;padding:0.55rem 1.3rem;font-family:var(--sf);font-size:0.92rem;font-weight:400;cursor:pointer;transition:all 0.25s;white-space:nowrap}
.cb-decline:hover{border-color:rgba(255,255,255,0.5);color:rgba(255,255,255,0.8)}
@media(max-width:900px){
  .cookie-banner{flex-direction:column;align-items:flex-start;padding:1.25rem 1.5rem;gap:1rem}
  .cookie-btns{width:100%;justify-content:flex-end}
}

/* FLOATING CONTACT BUTTON */
.fab-contact{
  position:fixed;bottom:2rem;right:2rem;z-index:500;
  display:inline-flex;align-items:center;gap:0.55rem;
  background:var(--orange);color:#fff;
  padding:0.75rem 1.4rem;border-radius:980px;
  font-family:var(--sf);font-size:1rem;font-weight:500;
  text-decoration:none;
  box-shadow:0 4px 20px rgba(232,99,26,0.4);
  opacity:0;transform:translateY(12px);
  transition:opacity 0.35s,transform 0.35s,background 0.25s,box-shadow 0.25s;
  pointer-events:none;
}
.fab-contact.fab-visible{opacity:1;transform:translateY(0);pointer-events:auto}
.fab-contact:hover{background:var(--orange-dark);box-shadow:0 6px 28px rgba(232,99,26,0.55);color:#fff}
.fab-contact svg{width:16px;height:16px;stroke:#fff;fill:none;stroke-width:2;flex-shrink:0}
@media(max-width:600px){
  .fab-contact .fab-label{display:none}
  .fab-contact{padding:0.85rem;border-radius:50%}
}

/* ── EXTRACTED FROM INLINE STYLES ── */

/* Orange topbar */
.topbar{width:100%;height:var(--topbar-height);background:#FF6600;position:fixed;top:0;left:0;z-index:9999}

/* Nav tagline (desktop) */
.nav-tagline-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.nav-logo-img{height:75px;width:auto;display:block}
.nav-tag1{color:#8B1A1A;font-style:italic}
.nav-tag2{color:#FF6600;font-style:italic}
.nav-tagline{font-family:var(--sf);font-size:1rem;font-weight:500;letter-spacing:0.01em;margin-top:6px;white-space:nowrap}

/* Hero */
.hero-content{position:relative;z-index:2}
.hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.15);z-index:1}
.hero-slide-bright{filter:brightness(1.2)}

/* Section subtitle paragraphs */
.section-sub{font-size:1.07rem;color:var(--gray);font-weight:300;letter-spacing:-0.01em;max-width:600px;margin-bottom:0}
.locations-sub{font-size:1.02rem;color:var(--gray);font-weight:300;margin-bottom:1.25rem;letter-spacing:-0.01em}

/* Blog section label — no pointer cursor */
.blog-label{cursor:default}

/* CTA band inset (inside blog section) */
.cta-band-inset{border-radius:12px;margin-top:3rem}

/* Blog buttons hidden by default (shown by JS) */
#blog-show-all-btn,#blog-admin-btn{display:none}

/* Blog modal — photo */
#bm-photo{width:100%;max-height:380px;object-fit:cover;border-radius:8px;margin-bottom:1.5rem;display:none}

/* Blog modal footer row */
.bm-footer{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}

/* LinkedIn share button */
.li-share-btn{display:inline-flex;align-items:center;gap:0.5rem;background:#0A66C2;border:none;border-radius:980px;padding:0.55rem 1.25rem;font-family:var(--sf);font-size:0.95rem;font-weight:500;color:#fff;cursor:pointer;transition:background 0.2s}
.li-share-btn:hover{background:#004182}
.li-share-icon{width:15px;height:15px;fill:#fff;flex-shrink:0}

/* Modal close button */
.modal-close-btn{display:inline-flex;align-items:center;gap:0.5rem;background:none;border:1.5px solid var(--border);border-radius:980px;padding:0.55rem 1.25rem;font-family:var(--sf);font-size:1rem;font-weight:500;color:var(--gray);cursor:pointer;transition:all 0.2s}
.modal-close-btn:hover{border-color:var(--orange);color:var(--orange)}

/* Add-post form heading */
.blog-form-title{font-size:1.2rem;font-weight:600;letter-spacing:-0.02em;color:var(--black);margin-bottom:1.5rem}

/* FAQ back-to-top */
.faq-top-wrap{text-align:center;margin-top:2.5rem}
.faq-top-arrow{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.5;vertical-align:middle;margin-left:4px}

/* Contact links hover (overrides .cdv a base) */
.cdv a{color:var(--gray);transition:color 0.3s}
.cdv a:hover{color:var(--orange)}

/* Contact form labels */
#contact-form label{display:block;font-size:0.9rem;color:var(--gray);margin-bottom:0.2rem}

/* Form feedback message */
#form-feedback{display:none;margin-top:1rem;font-size:1rem;font-weight:500}

/* Footer copyright */
.footer-credit{color:#ffffff;font-weight:600}

/* Footer legal block */
.footer-legal-wrap{width:100%;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}
.footer-legal-inner{max-width:1100px;margin:0 auto}
.footer-legal-title{font-size:1rem;font-weight:600;color:#ffffff;margin-bottom:0.4rem}
.footer-legal-text{font-size:1rem;color:#ffffff;line-height:1.7}

/* Footer privacy section */
.footer-privacy-section{width:100%;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,0.15)}

/* Blog auth modal */
#blog-auth-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:10001;align-items:center;justify-content:center;padding:2rem}
.blog-auth-inner{background:#fff;border-radius:16px;padding:2rem;max-width:380px;width:100%;position:relative}
.blog-auth-close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;cursor:pointer;font-size:1.4rem;color:#666}
.blog-auth-title{font-size:1.1rem;font-weight:600;color:#111;margin-bottom:1.25rem}
#blog-auth-input{width:100%;background:#f7f5f2;border:1px solid #E8E4DF;border-radius:8px;padding:0.7rem 1rem;font-size:1rem;color:#111;margin-bottom:0.75rem;outline:none}
#blog-auth-error{color:#E8631A;font-size:0.95rem;margin-bottom:0.75rem;display:none}
.blog-auth-submit-btn{width:100%;background:#E8631A;color:#fff;border:none;border-radius:980px;padding:0.75rem;font-size:1rem;font-weight:500;cursor:pointer}

/* ── ADMIN ADD-POST FORM ── */
.blog-form-field-wrap{margin-bottom:1rem}
.blog-form-photo-label{font-size:1.07rem;font-weight:500;color:var(--gray);display:block;margin-bottom:0.4rem}
#existing-photo-row{display:none;margin-bottom:0.5rem;font-size:0.92rem;color:var(--gray)}
#existing-photo-name{color:#1A4BA0;font-weight:500}
.existing-photo-remove-btn{margin-left:0.6rem;font-size:0.85rem;color:#922B21;background:none;border:none;cursor:pointer}
#post-date,#post-excerpt{width:100%;background:#f7f5f2;border:1px solid var(--border);border-radius:8px;padding:0.7rem 1rem;font-family:var(--sf);font-size:1.02rem;color:var(--black);margin-bottom:1rem;outline:none;transition:border-color 0.3s}
#post-excerpt{resize:vertical;min-height:70px}
#post-photo{font-size:0.97rem;color:var(--gray);width:100%;padding:0.6rem 0.8rem;background:#f7f5f2;border:1px solid var(--border);border-radius:8px;cursor:pointer}
#photo-preview{margin-top:0.6rem;display:none}
#photo-preview-img{max-height:120px;border-radius:8px;border:1px solid var(--border)}
.photo-clear-btn{display:block;margin-top:0.3rem;font-size:1.05rem;color:var(--orange);background:none;border:none;cursor:pointer}
.blog-form-body-wrap{margin-bottom:0}
.blog-form-body-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.4rem}
.blog-form-body-label{font-size:0.92rem;font-weight:500;color:var(--gray)}
.blog-form-body-tip{font-size:0.78rem;color:#aaa;margin-top:-0.6rem;margin-bottom:0.9rem}
#post-body{display:none;font-family:monospace;font-size:0.9rem;min-height:200px}
#post-preview-tag,#post-preview-photo,#post-preview-excerpt{display:none}
#post-preview-photo{width:100%;max-height:160px;object-fit:cover;border-radius:6px;margin-bottom:0.75rem}

/* Footer privacy link */
.footer-privacy-link{color:#4A9EE8;text-decoration:underline;font-weight:500}

/* Hero title — white portion */
.hero-title-white{color:#ffffff}
