/* Aviorelle Transit additions — preserves the original TransxoCo theme while adapting it for aviation mobility. */
html { scroll-behavior: smooth; }
body { overflow-x: hidden; }

/* User request: no decorative horizontal rules beside/below headings or subheadings. */
h1:after, h2:after, h3:after, h4:after, h5:after, h6:after,
.underline:after, .num:after { display: none !important; content: none !important; }
h2.underline, h3.underline { padding-bottom: 0 !important; }

.aviorelle-brand { padding-left: 88px; }
.aviorelle-brand .aviorelle-brand-mark {
  position: absolute; left: 0; top: 3px; width: 66px; height: 66px; border-radius: 50%;
  background: #ffd933; color: #474b4d; display:flex; align-items:center; justify-content:center;
  font-size: 31px; transform: rotate(-12deg); box-shadow: 0 8px 25px rgba(71,75,77,.12);
}
.aviorelle-brand .brand_name { font-size: 34px; line-height: 36px; letter-spacing: -1.2px; }
.aviorelle-brand .brand_name small { margin-top: 6px; letter-spacing: 1.2px; color:#8c8d8e; }
.aviorelle-brand .brand_name span { color:#ffd933; }
.avi-header-icon, .avi-footer-icon { font-size: 28px; color:#ffd933; }
.avi-top-email { padding-top: 26px; font-size:14px; }
.avi-top-email a { color:#474b4d; }
.avi-top-email .fa { color:#ffd933; margin-right:7px; }

.avi-nav-contact { min-height: 72px; display:flex; align-items:center; justify-content:center; }
.avi-nav-contact > a { color:#fff; display:flex; align-items:center; gap:12px; font-size:15px; line-height:20px; }
.avi-nav-contact > a:hover { color:#ffd933; }
.avi-nav-contact .fa { color:#ffd933; font-size:22px; }
.avi-nav-contact small { display:block; color:#ffd933; text-transform:uppercase; font-size:10px; letter-spacing:1.3px; }

.avi-hero:before, .avi-image-cta:before { content:""; position:absolute; inset:0; background:rgba(29,32,34,.62); z-index:0; }
.avi-hero .parallax_cnt, .avi-image-cta .parallax_cnt { position:relative; }
.avi-hero-content { position:relative; z-index:2; color:#fff; }
.avi-hero-content h2 { color:#fff; font-size:44px; line-height:1.05; max-width:900px; text-shadow:0 2px 18px rgba(0,0,0,.24); }
.avi-hero-content p { max-width:820px; color:#f4f4f4; font-size:18px; line-height:1.65; }
.avi-kicker { display:inline-flex; align-items:center; background:#ffd933; color:#474b4d; padding:8px 14px; border-radius:999px; text-transform:uppercase; letter-spacing:1.5px; font-size:11px; font-weight:700; margin-bottom:24px; }
.avi-hero-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:28px; }
.btn-ghost { color:#fff; border:2px solid rgba(255,255,255,.7); background:rgba(0,0,0,.18); }
.btn-ghost:hover { background:#fff; color:#474b4d; }

.avi-lead { max-width:960px; margin:22px auto 0; font-size:20px; line-height:1.7; color:#737678; }
.avi-service-icons .icon-round { display:inline-flex; align-items:center; justify-content:center; }
.avi-service-icons .icon-round .fa { font-size:42px; color:#474b4d; }
.avi-service-icons h3 { margin-top:25px; }

.avi-steps { text-align:center; }
.avi-step-icon { width:82px; height:82px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:#ffd933; color:#474b4d; font-size:30px; margin-bottom:22px; box-shadow:0 9px 30px rgba(71,75,77,.12); }
.avi-steps h3 { font-weight:600; }

.avi-image-cta { position:relative; color:#f5f5f5; background-position:center; }
.avi-image-cta h2 { color:#fff; }
.avi-image-cta p { color:#f2f2f2; max-width:860px; }
.avi-image-cta .container { position:relative; z-index:2; }

.avi-tag-list { display:flex; flex-wrap:wrap; gap:12px; margin:0 0 28px; padding:0; list-style:none; }
.avi-tag-list li { background:#f6f6f6; border:1px solid #ececec; color:#474b4d; border-radius:999px; padding:10px 15px; font-size:14px; }

.avi-content-image { width:100%; display:block; object-fit:cover; max-height:430px; box-shadow:0 15px 45px rgba(20,24,27,.15); }
.avi-focus-list > div { position:relative; padding-left:62px; margin-bottom:28px; }
.avi-focus-list .fa { position:absolute; left:0; top:2px; width:44px; height:44px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#ffd933; color:#474b4d; }
.avi-focus-list strong { color:#474b4d; font-size:18px; }
.avi-focus-list p { margin-top:6px; }

.avi-industry-grid > div, .avi-service-grid > div { margin-bottom:30px; }
.avi-card { height:100%; min-height:280px; padding:34px; background:#fff; box-shadow:0 10px 35px rgba(25,28,31,.08); border-top:4px solid #ffd933; transition:.25s ease; }
.avi-card:hover { transform:translateY(-6px); box-shadow:0 18px 45px rgba(25,28,31,.13); }
.avi-card > .fa { font-size:34px; color:#ffd933; margin-bottom:24px; }
.avi-card h3 { font-size:24px; line-height:1.25; }

.avi-service-card { display:flex; gap:26px; align-items:flex-start; height:100%; min-height:290px; padding:36px; background:#fff; box-shadow:0 10px 35px rgba(25,28,31,.08); }
.avi-service-card-icon { flex:0 0 68px; width:68px; height:68px; display:flex; align-items:center; justify-content:center; border-radius:18px; background:#ffd933; color:#474b4d; font-size:27px; }
.avi-service-card h3 { margin-top:0; font-size:26px; line-height:1.25; }
.avi-service-wide { min-height:0; }

.avi-contact-block { margin:32px 0; padding:24px; background:#fff; border-left:4px solid #ffd933; }
.avi-contact-block p { margin:0 0 12px; }
.avi-contact-block .fa { width:28px; color:#ffd933; }
.avi-contact-form input, .avi-contact-form textarea { background:#fff !important; border:1px solid #ddd !important; color:#474b4d !important; }
.avi-contact-form textarea { min-height:170px; }

.avi-policy { max-width:1000px; }
.avi-policy h3 { margin-top:44px; color:#474b4d; font-weight:600; }
.avi-policy a { color:#474b4d; text-decoration:underline; }

.avi-footer-right { position:relative; }
.avi-social { margin-top:25px; }
.avi-social a { width:46px; height:46px; border-radius:50%; display:flex !important; align-items:center; justify-content:center; background:#ffd933; color:#474b4d; font-size:20px; }
.avi-social a:hover { background:#474b4d; color:#ffd933; }

/* Advanced cookie preference center */
.avi-cookie-banner { position:fixed; z-index:10000; left:24px; right:24px; bottom:24px; max-width:980px; margin:0 auto; background:#fff; color:#5d6062; box-shadow:0 20px 65px rgba(0,0,0,.28); border-radius:18px; overflow:hidden; display:none; }
.avi-cookie-inner { padding:24px 26px; display:flex; align-items:center; gap:28px; }
.avi-cookie-copy { flex:1; }
.avi-cookie-copy h3 { margin:0 0 8px; font-size:22px; color:#474b4d; }
.avi-cookie-copy p { margin:0; font-size:14px; line-height:1.55; }
.avi-cookie-actions { display:flex; gap:9px; flex-wrap:wrap; justify-content:flex-end; }
.avi-cookie-actions button { border:0; border-radius:999px; padding:12px 16px; cursor:pointer; font:600 12px/1.2 "Montserrat",sans-serif; }
.avi-cookie-primary { background:#ffd933; color:#3e4244; }
.avi-cookie-secondary { background:#474b4d; color:#fff; }
.avi-cookie-outline { background:#f3f3f3; color:#474b4d; }
.avi-cookie-panel { display:none; padding:0 26px 24px; border-top:1px solid #eee; }
.avi-cookie-panel.is-open { display:block; }
.avi-cookie-option { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 0; border-bottom:1px solid #eee; }
.avi-cookie-option strong { color:#474b4d; display:block; }
.avi-cookie-option small { display:block; margin-top:3px; color:#858789; }
.avi-switch { position:relative; width:46px; height:25px; flex:0 0 46px; }
.avi-switch input { opacity:0; width:0; height:0; }
.avi-switch span { position:absolute; inset:0; cursor:pointer; background:#ccc; border-radius:25px; transition:.2s; }
.avi-switch span:before { content:""; position:absolute; width:19px; height:19px; left:3px; top:3px; background:#fff; border-radius:50%; transition:.2s; }
.avi-switch input:checked + span { background:#ffd933; }
.avi-switch input:checked + span:before { transform:translateX(21px); }
.avi-switch input:disabled + span { opacity:.75; cursor:not-allowed; }
.avi-cookie-panel-actions { padding-top:18px; text-align:right; }
.avi-cookie-panel-actions button { border:0; border-radius:999px; padding:12px 18px; background:#ffd933; color:#474b4d; cursor:pointer; font-weight:700; }

@media (max-width: 767px) {
  .aviorelle-brand { padding-left:70px; text-align:left; }
  .aviorelle-brand .aviorelle-brand-mark { width:54px; height:54px; font-size:25px; }
  .aviorelle-brand .brand_name { font-size:27px; line-height:30px; }
  .avi-top-email { padding:12px 0 0; float:none !important; }
  .avi-hero-content h2 { font-size:34px; line-height:1.08; }
  .avi-nav-contact { display:none; }
  .avi-cookie-inner { flex-direction:column; align-items:flex-start; }
  .avi-cookie-actions { justify-content:flex-start; }
  .avi-cookie-banner { left:12px; right:12px; bottom:12px; }
  .avi-service-card { flex-direction:column; }
}
.avi-hero .parallax_image, .avi-image-cta .parallax_image { z-index: 0; }
.avi-hero:before, .avi-image-cta:before { z-index: 1; }
.avi-hero .parallax_cnt, .avi-image-cta .parallax_cnt { position: relative; z-index: 2; }


/* Expanded page experience */
.avi-feature-band { background:#272b2d; color:#fff; padding-top:48px; padding-bottom:48px; }
.avi-feature-row > div { margin-bottom:20px; }
.avi-feature-tile { display:flex; gap:20px; align-items:flex-start; height:100%; padding:26px 22px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.035); transition:.25s ease; }
.avi-feature-tile:hover { transform:translateY(-4px); background:rgba(255,255,255,.07); }
.avi-feature-tile > .fa { flex:0 0 54px; width:54px; height:54px; border-radius:16px; display:flex; align-items:center; justify-content:center; background:#ffd933; color:#474b4d; font-size:22px; }
.avi-feature-tile h3 { margin:0 0 8px; color:#fff; font-size:20px; }
.avi-feature-tile p { margin:0; color:#c9cdcf; line-height:1.65; }
.avi-copy-panel { padding-top:18px; }
.avi-copy-panel .avi-kicker { margin-bottom:18px; }
.avi-check-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px 18px; margin:26px 0 30px; }
.avi-check-grid span { display:flex; gap:9px; align-items:flex-start; color:#5d6062; }
.avi-check-grid .fa { color:#d2ae00; margin-top:4px; }
.avi-soft-section { background:#fbfbfa; }
.avi-panel { height:100%; min-height:280px; padding:34px; background:#fff; border:1px solid #ececec; box-shadow:0 12px 38px rgba(23,27,29,.06); transition:.25s ease; }
.avi-panel:hover { transform:translateY(-5px); box-shadow:0 18px 46px rgba(23,27,29,.11); }
.avi-panel > .fa { width:58px; height:58px; display:flex; align-items:center; justify-content:center; border-radius:18px; background:#ffd933; color:#474b4d; font-size:24px; margin-bottom:23px; }
.avi-panel h3 { margin-top:0; font-size:23px; }
.avi-icon-list { background:#fff; box-shadow:0 12px 38px rgba(23,27,29,.07); padding:16px 30px; }
.avi-icon-list > div { position:relative; display:flex; gap:20px; padding:22px 0; border-bottom:1px solid #eee; }
.avi-icon-list > div:last-child { border-bottom:0; }
.avi-icon-list > div > .fa { flex:0 0 48px; width:48px; height:48px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#ffd933; color:#474b4d; font-size:19px; }
.avi-icon-list strong { display:block; color:#474b4d; font-size:18px; margin-bottom:5px; }
.avi-icon-list p { margin:0; }
.avi-mini-grid > div { margin-bottom:30px; }
.avi-mini-card { height:100%; min-height:240px; padding:30px 25px; text-align:center; background:#fff; border:1px solid #ececec; transition:.25s ease; }
.avi-mini-card:hover { border-color:#ffd933; transform:translateY(-4px); }
.avi-mini-card > .fa { width:64px; height:64px; margin:0 auto 20px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#ffd933; color:#474b4d; font-size:24px; }
.avi-mini-card h3 { margin:0 0 10px; font-size:20px; }
.avi-contact-next { background:#272b2d; color:#d8dcde; }
.avi-contact-next h2 { color:#fff; }
.avi-contact-card { background:#fff; color:#666; padding:32px; box-shadow:0 14px 40px rgba(0,0,0,.16); }
.avi-contact-card > .fa { font-size:28px; color:#d2ae00; margin-bottom:16px; }
.avi-contact-card h3 { margin-top:0; color:#474b4d; }
.avi-contact-card a { color:#474b4d; font-weight:700; word-break:break-word; }
.avi-policy-summary { background:#fbfbfa; }
.avi-policy-summary .avi-panel a { color:#474b4d; text-decoration:underline; }

/* Maintain the user's no-lines visual language throughout expanded sections. */
.avi-feature-band *, .avi-soft-section *, .avi-policy-summary *, .avi-contact-next * { border-top-color:transparent; }
.avi-panel, .avi-mini-card, .avi-feature-tile { border-top-color:#ececec !important; }

@media (max-width: 767px) {
  .avi-check-grid { grid-template-columns:1fr; }
  .avi-copy-panel { padding-top:32px; }
  .avi-panel, .avi-mini-card { min-height:0; }
  .avi-feature-tile { height:auto; }
}



/* High-resolution imagery and button fit improvements */
.btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:100%;
  white-space:normal;
  text-decoration:none;
  line-height:1.35;
  min-height:56px;
  padding:16px 24px;
}
.btn.btn-md { padding:16px 24px; font-size:15px; }
.btn.btn-lg { padding:18px 30px; font-size:18px; line-height:1.35; }
* + .btn { margin-top:30px; }
.avi-hero-actions .btn, .avi-cookie-actions button, .avi-cookie-panel-actions button { margin-top:0; }
.mfControls .btn { width:auto; min-width:240px; }
.avi-image-cta .btn, footer .btn, .avi-copy-panel .btn, .avi-contact-card .btn { margin-top:26px; }
.avi-hero-actions .btn-ghost { border-width:2px; }
.avi-nav-contact span:last-child { min-width:0; }

.avi-photo-gallery .text-center { margin-bottom:24px; }
.avi-photo-grid > div { margin-bottom:30px; }
.avi-photo-card {
  height:100%; background:#fff; box-shadow:0 14px 40px rgba(23,27,29,.08);
  overflow:hidden; border:1px solid #ececec; transition:.25s ease;
}
.avi-photo-card:hover { transform:translateY(-6px); box-shadow:0 18px 48px rgba(23,27,29,.14); }
.avi-photo-card img { width:100%; height:250px; object-fit:cover; display:block; }
.avi-photo-copy { padding:24px; }
.avi-photo-copy h3 { margin-top:0; font-size:24px; }
.avi-photo-copy p { margin-bottom:0; }
.avi-inline-image { margin-top:24px; }
.avi-inline-image img { width:100%; height:100%; min-height:320px; object-fit:cover; display:block; box-shadow:0 15px 45px rgba(20,24,27,.15); }

@media (max-width: 991px) {
  .btn.btn-md { font-size:14px; padding:15px 20px; }
  .mfControls .btn { min-width:0; width:100%; }
}
@media (max-width: 767px) {
  .avi-hero-actions { gap:10px; }
  .avi-hero-actions .btn, .btn { width:100%; }
  .avi-nav-contact { display:none; }
  .avi-photo-card img { height:220px; }
}



/* Services page premium visual upgrade */
.avi-services-intro { background:#fff; }
.avi-services-lead { font-size:19px; line-height:1.75; color:#696d6f; max-width:780px; }
.avi-services-summary { background:#272b2d; padding:28px 30px; box-shadow:0 18px 45px rgba(26,29,31,.15); }
.avi-services-summary > div { display:flex; gap:16px; padding:18px 0; border-bottom:1px solid rgba(255,255,255,.1); }
.avi-services-summary > div:last-child { border-bottom:0; }
.avi-services-summary .fa { flex:0 0 46px; width:46px; height:46px; display:flex; align-items:center; justify-content:center; border-radius:14px; background:#ffd933; color:#474b4d; font-size:19px; }
.avi-services-summary p { margin:0; color:#d8dcde; line-height:1.55; }
.avi-services-summary strong { color:#fff; font-size:16px; }
.avi-services-heading { max-width:900px; margin:0 auto 50px; }

.avi-service-feature { display:grid; grid-template-columns:1.04fr .96fr; background:#fff; box-shadow:0 16px 50px rgba(24,28,30,.09); margin-bottom:44px; overflow:hidden; }
.avi-service-feature-reverse { grid-template-columns:.96fr 1.04fr; }
.avi-service-feature-reverse .avi-service-feature-media { order:2; }
.avi-service-feature-reverse .avi-service-feature-copy { order:1; }
.avi-service-feature-media { min-height:440px; overflow:hidden; }
.avi-service-feature-media img { width:100%; height:100%; min-height:440px; object-fit:cover; display:block; transition:transform .5s ease; }
.avi-service-feature:hover .avi-service-feature-media img { transform:scale(1.035); }
.avi-service-feature-copy { padding:46px 48px; display:flex; flex-direction:column; justify-content:center; }
.avi-service-feature-copy h3 { margin:17px 0 18px; font-size:31px; line-height:1.2; }
.avi-service-feature-copy p { font-size:16px; line-height:1.7; }
.avi-service-pill { display:inline-flex; width:max-content; max-width:100%; align-items:center; gap:9px; padding:9px 13px; background:#ffd933; color:#474b4d; border-radius:999px; font:700 11px/1.3 "Montserrat",sans-serif; letter-spacing:.7px; text-transform:uppercase; }
.avi-service-benefits { display:grid; grid-template-columns:1fr 1fr; gap:12px 18px; margin:25px 0 5px; }
.avi-service-benefits span { display:flex; gap:9px; align-items:flex-start; color:#5d6062; line-height:1.45; }
.avi-service-benefits .fa { color:#caa800; margin-top:3px; }
.avi-service-feature .btn { align-self:flex-start; }

.avi-services-cta .avi-kicker { margin-bottom:18px; }
.avi-specialist-services { background:#fff; }
.avi-picture-card { height:100%; background:#fff; border:1px solid #ececec; box-shadow:0 12px 38px rgba(20,24,27,.08); overflow:hidden; transition:.3s ease; }
.avi-picture-card:hover { transform:translateY(-7px); box-shadow:0 20px 50px rgba(20,24,27,.14); }
.avi-picture-card-image { height:230px; overflow:hidden; }
.avi-picture-card-image img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .45s ease; }
.avi-picture-card:hover .avi-picture-card-image img { transform:scale(1.05); }
.avi-picture-card-body { padding:28px 26px 32px; }
.avi-picture-card-body > .fa { width:54px; height:54px; display:flex; align-items:center; justify-content:center; border-radius:16px; margin-top:-55px; margin-bottom:20px; position:relative; background:#ffd933; color:#474b4d; font-size:22px; box-shadow:0 8px 20px rgba(0,0,0,.12); }
.avi-picture-card-body h3 { margin-top:0; font-size:23px; line-height:1.25; }

.avi-service-experience { background:#272b2d; color:#cbd0d2; }
.avi-service-experience h2 { color:#fff; }
.avi-service-experience p { color:#cbd0d2; }
.avi-service-experience-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.avi-service-experience-grid > div { padding:24px; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.08); transition:.25s ease; }
.avi-service-experience-grid > div:hover { background:rgba(255,255,255,.075); transform:translateY(-4px); }
.avi-service-experience-grid .fa { width:48px; height:48px; display:flex; align-items:center; justify-content:center; border-radius:14px; background:#ffd933; color:#474b4d; font-size:20px; margin-bottom:17px; }
.avi-service-experience-grid h3 { color:#fff; margin:0 0 8px; font-size:20px; }
.avi-service-experience-grid p { margin:0; line-height:1.55; font-size:14px; }

.avi-service-scope-image { width:100%; min-height:470px; height:100%; object-fit:cover; display:block; box-shadow:0 15px 45px rgba(20,24,27,.14); }
.avi-service-tag-cloud { display:flex; flex-wrap:wrap; gap:10px; margin:25px 0 4px; }
.avi-service-tag-cloud span { padding:9px 13px; border-radius:999px; background:#fff; border:1px solid #e5e5e5; color:#55595b; font-size:13px; }

@media (max-width: 991px) {
  .avi-service-feature, .avi-service-feature-reverse { grid-template-columns:1fr; }
  .avi-service-feature-reverse .avi-service-feature-media, .avi-service-feature-reverse .avi-service-feature-copy { order:initial; }
  .avi-service-feature-media, .avi-service-feature-media img { min-height:330px; }
  .avi-service-feature-copy { padding:36px; }
  .avi-service-feature-copy h3 { font-size:27px; }
}
@media (max-width: 767px) {
  .avi-services-summary { margin-top:30px; }
  .avi-service-feature-copy { padding:28px 24px 32px; }
  .avi-service-feature-media, .avi-service-feature-media img { min-height:250px; }
  .avi-service-benefits { grid-template-columns:1fr; }
  .avi-service-feature .btn { width:100%; }
  .avi-picture-card { margin-bottom:25px; }
  .avi-service-experience-grid { grid-template-columns:1fr; margin-top:32px; }
  .avi-service-scope-image { min-height:280px; margin-bottom:28px; }
}



/* Additional page styling for upgraded non-services pages */
.avi-showcase-band { background:#ffffff; }
.avi-showcase-grid > div, .avi-visual-grid > div, .avi-engage-grid > div { margin-bottom:30px; }
.avi-showcase-card, .avi-engage-card {
  height:100%; background:#fff; border:1px solid #ececec; box-shadow:0 14px 40px rgba(23,27,29,.07);
  overflow:hidden; transition:.28s ease;
}
.avi-showcase-card:hover, .avi-engage-card:hover { transform:translateY(-6px); box-shadow:0 18px 48px rgba(23,27,29,.13); }
.avi-showcase-card img, .avi-engage-card img { width:100%; height:240px; object-fit:cover; display:block; }
.avi-showcase-copy, .avi-engage-copy { padding:26px; }
.avi-showcase-copy h3, .avi-engage-copy h3 { margin-top:0; font-size:24px; }
.avi-badge-list { display:flex; flex-wrap:wrap; gap:10px; margin:18px 0 0; padding:0; list-style:none; }
.avi-badge-list li { background:#f5f5f5; color:#474b4d; border-radius:999px; padding:8px 12px; font-size:13px; border:1px solid #ececec; }
.avi-split-dark { background:#272b2d; color:#cfd3d5; }
.avi-split-dark h2, .avi-split-dark h3 { color:#fff; }
.avi-split-dark .avi-kicker { background:#ffd933; color:#474b4d; }
.avi-split-dark .avi-check-grid span { color:#d8dcde; }
.avi-split-dark .avi-inline-image img { min-height:360px; }
.avi-visual-card { position:relative; overflow:hidden; min-height:260px; box-shadow:0 14px 40px rgba(23,27,29,.1); }
.avi-visual-card img { width:100%; height:100%; min-height:260px; object-fit:cover; display:block; }
.avi-visual-overlay { position:absolute; inset:auto 0 0 0; padding:24px; background:linear-gradient(to top, rgba(20,22,24,.86), rgba(20,22,24,.18)); color:#fff; }
.avi-visual-overlay h3 { color:#fff; margin:0 0 8px; font-size:23px; }
.avi-visual-overlay p { margin:0; color:#eef1f2; }
.avi-contact-strip { background:#fbfbfa; }
.avi-contact-strip .avi-panel { min-height:0; }
.avi-checklist-panel { background:#fff; padding:30px; box-shadow:0 12px 38px rgba(23,27,29,.08); }
.avi-checklist-panel ul { list-style:none; padding:0; margin:0; }
.avi-checklist-panel li { position:relative; padding-left:28px; margin-bottom:12px; color:#5d6062; }
.avi-checklist-panel li:before { content:'\f00c'; font-family:FontAwesome; position:absolute; left:0; top:1px; color:#d2ae00; }
.avi-policy-mini { background:#fff; border:1px solid #ececec; padding:24px; height:100%; box-shadow:0 12px 34px rgba(23,27,29,.06); }
.avi-policy-mini .fa { width:54px; height:54px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#ffd933; color:#474b4d; font-size:22px; margin-bottom:18px; }
.avi-policy-mini h3 { margin-top:0; font-size:22px; }
@media (max-width: 767px) {
  .avi-showcase-card img, .avi-engage-card img { height:220px; }
  .avi-visual-card, .avi-visual-card img { min-height:220px; }
}


/* Theme-compatible home hero slider: one hero container, no stacked layout layers. */
.avi-home-hero-simple {
  position:relative;
  min-height:610px;
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
  transition:background-color .25s ease;
}
.avi-home-hero-simple:before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(26,29,31,.82) 0%,rgba(26,29,31,.62) 52%,rgba(26,29,31,.25) 100%);
  z-index:0;
}
.avi-home-hero-simple .stuck_container,
.avi-home-hero-simple .avi-hero-content,
.avi-home-hero-simple .avi-simple-slider-controls { position:relative; z-index:2; }
.avi-home-hero-simple .avi-hero-content {
  min-height:470px;
  display:flex;
  align-items:center;
  transition:opacity .2s ease, transform .2s ease;
}
.avi-home-hero-simple.is-changing .avi-hero-content { opacity:.2; transform:translateY(6px); }
.avi-home-hero-simple .avi-hero-content > .row { width:100%; }
.avi-simple-slider-controls {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  padding:0 20px 24px;
}
.avi-simple-arrow {
  width:42px; height:42px; border-radius:50%; border:1px solid rgba(255,255,255,.55);
  background:rgba(30,33,35,.40); color:#fff; font-size:22px; cursor:pointer; transition:.2s ease;
}
.avi-simple-arrow:hover, .avi-simple-arrow:focus { background:#ffd933; color:#474b4d; border-color:#ffd933; outline:none; }
.avi-simple-dots { display:flex; align-items:center; gap:8px; }
.avi-simple-dots button { width:28px; height:5px; border:0; border-radius:999px; padding:0; background:rgba(255,255,255,.45); cursor:pointer; transition:.2s ease; }
.avi-simple-dots button.is-active { width:44px; background:#ffd933; }

/* Shared layout guardrails to keep all pages organized. */
main section { clear:both; }
.avi-showcase-card, .avi-engage-card, .avi-panel, .avi-mini-card, .avi-picture-card { box-sizing:border-box; }
.avi-content-image, .avi-inline-image img, .avi-showcase-card img, .avi-engage-card img, .avi-picture-card img { max-width:100%; }
.avi-hero-actions .btn { margin-top:0; }

@media (max-width:991px) {
  .avi-home-hero-simple { min-height:570px; }
  .avi-home-hero-simple .avi-hero-content { min-height:430px; }
}
@media (max-width:767px) {
  .avi-home-hero-simple { min-height:610px; }
  .avi-home-hero-simple:before { background:rgba(26,29,31,.72); }
  .avi-home-hero-simple .avi-hero-content { min-height:490px; padding-top:34px; padding-bottom:28px; }
  .avi-home-hero-simple .avi-hero-content h2 { font-size:32px; line-height:1.1; }
  .avi-home-hero-simple .avi-hero-content p { font-size:16px; }
  .avi-simple-slider-controls { padding-bottom:18px; }
  .avi-simple-arrow { width:38px; height:38px; }
  .avi-simple-dots button { width:20px; }
  .avi-simple-dots button.is-active { width:30px; }
}


/* Dark transparent overlay for image sections with text */
.avi-dark-overlay {
  position: relative;
  color: #fff;
}
.avi-dark-overlay:before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.52);
  z-index: 1;
  pointer-events: none;
}
.avi-dark-overlay .parallax_image {
  z-index: 0;
}
.avi-dark-overlay .parallax_cnt {
  position: relative;
  z-index: 2;
}
.avi-dark-overlay h1,
.avi-dark-overlay h2,
.avi-dark-overlay h3,
.avi-dark-overlay h4,
.avi-dark-overlay h5,
.avi-dark-overlay h6,
.avi-dark-overlay p,
.avi-dark-overlay span,
.avi-dark-overlay a,
.avi-dark-overlay .text-default-variant-1 {
  color: #fff !important;
}



/* Updated brand logo */
.aviorelle-brand {
  padding-left: 0;
  display: flex;
  align-items: center;
  min-height: 110px;
}
.aviorelle-logo-link {
  display: inline-block;
  max-width: 100%;
}
.aviorelle-brand-logo {
  display: block;
  width: auto;
  height: 86px;
  max-width: 420px;
  object-fit: contain;
}
.aviorelle-brand .aviorelle-brand-mark,
.aviorelle-brand .brand_name {
  display: none !important;
}
@media (max-width: 991px) {
  .aviorelle-brand-logo { height: 74px; max-width: 360px; }
}
@media (max-width: 767px) {
  .aviorelle-brand { min-height: 84px; }
  .aviorelle-brand-logo { height: 58px; max-width: 280px; }
}

/* Compact header spacing + centered mobile logo */
header .brand-container {
  padding-top: 22px;
  padding-bottom: 18px;
}
.aviorelle-brand {
  min-height: 76px;
}
.aviorelle-brand-logo {
  height: 72px;
  max-width: 360px;
}
.avi-top-email {
  padding-top: 18px;
}

@media (max-width: 991px) {
  header .brand-container {
    padding-top: 18px;
    padding-bottom: 16px;
  }
  .aviorelle-brand {
    min-height: 68px;
  }
  .aviorelle-brand-logo {
    height: 64px;
    max-width: 320px;
  }
}

@media (max-width: 767px) {
  header .brand-container {
    padding-top: 12px;
    padding-bottom: 12px;
  }
  header .brand,
  .aviorelle-brand {
    float: none;
    width: 100%;
    min-height: 60px;
    padding-left: 0 !important;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
  }
  .aviorelle-logo-link {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
  }
  .aviorelle-brand-logo {
    display: block;
    height: 54px;
    width: auto;
    max-width: 88vw;
    margin: 0 auto;
  }
  header .brand-container .contact-info {
    margin: 8px auto 0;
  }
  .avi-top-email {
    padding-top: 6px;
    margin-left: 0 !important;
    float: none !important;
    text-align: center;
  }
}
