
:root{
  --mg-orange:#ff8c3a;
  --mg-orange-dark:#e96f17;
  --mg-black:#05070b;
  --mg-ink:#171a20;
  --mg-muted:#6f7580;
  --mg-line:#e7e8ec;
  --mg-surface:#f7f8fa;
  --mg-white:#fff;
  --mg-shadow:0 18px 38px rgba(15,23,42,.10),0 4px 10px rgba(15,23,42,.05);
  --mg-shadow-soft:0 10px 24px rgba(15,23,42,.07);
  --mg-container:min(1440px,calc(100% - 42px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:#fff;
  color:var(--mg-ink);
  font-family:"Noto Kufi Arabic","Cairo","Segoe UI",Tahoma,Arial,sans-serif;
  font-size:15px;
  line-height:1.72;
  font-synthesis:none;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
body.mg-menu-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.mg-container{width:var(--mg-container);margin-inline:auto}
.mg-icon{width:18px;height:18px;display:inline-block;vertical-align:middle;flex:0 0 auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{position:fixed!important;inset:10px auto auto 10px;width:auto;height:auto;clip:auto;padding:10px 14px;background:#fff;border-radius:8px;z-index:10000}

/* top bar */
.mg-topbar{position:absolute;inset:0 0 auto;z-index:1000;color:#fff}
body:not(.mg-hero-page) .mg-topbar{position:relative;background:var(--mg-black)}
.mg-topbar-grid{min-height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px}
.mg-topbar-group{display:flex;align-items:center;gap:10px}
.mg-topbar-group--account{justify-content:flex-end}
.mg-top-pill{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(255,140,58,.8);border-radius:999px;background:rgba(3,5,8,.48);color:#fff;padding:7px 14px;font-size:12px;font-weight:800;backdrop-filter:blur(10px);transition:.2s}
.mg-top-pill:hover,.mg-top-pill--strong{background:rgba(255,140,58,.18)}
.mg-top-pill .mg-icon{width:15px;height:15px;color:var(--mg-orange)}
.mg-topbar-center{max-width:460px;padding:9px 18px;border:1px solid rgba(255,140,58,.34);border-radius:999px;background:rgba(255,140,58,.08);backdrop-filter:blur(10px);color:rgba(255,255,255,.9);font-size:12px;font-weight:700;text-align:center}
.mg-mobile-menu-button{display:none;width:42px;height:42px;border:1px solid rgba(255,140,58,.75);border-radius:12px;background:rgba(3,5,8,.45);color:#fff;align-items:center;justify-content:center}
.mg-mobile-panel,.mg-mobile-backdrop{display:none}

/* hero */
.mg-hero{position:relative;height:760px;background-color:var(--mg-black);background-size:cover;background-position:center;overflow:hidden}
.mg-hero--compact{height:720px}
.mg-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,3,6,.35),rgba(1,3,6,.1) 45%,rgba(1,3,6,.44)),radial-gradient(circle at 50% 42%,transparent 0,rgba(0,0,0,.14) 65%,rgba(0,0,0,.38) 100%)}
.mg-hero-copy{position:relative;z-index:2;padding-top:200px;text-align:center;color:#fff}
.mg-hero--compact .mg-hero-copy{padding-top:185px}
.mg-hero-logo{display:flex;justify-content:center;margin-bottom:8px}
.mg-hero-logo .custom-logo{max-height:54px;width:auto}
.mg-hero-copy h1{font-size:clamp(32px,3.4vw,48px);line-height:1.2;margin:0 0 9px;font-weight:900;text-shadow:0 7px 24px rgba(0,0,0,.3)}
.mg-hero-copy p{margin:0;color:rgba(255,255,255,.92);font-size:17px}
.mg-service-pills{position:absolute;z-index:5;top:300px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:11px;padding:0 20px}
.mg-hero--compact .mg-service-pills{top:275px}
.mg-service-pill{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:7px 18px;border:1px solid rgba(255,140,58,.76);border-radius:999px;background:rgba(255,140,58,.16);color:#fff;font-size:13px;font-weight:700;backdrop-filter:blur(9px);transition:.22s}
.mg-service-pill .mg-icon{width:15px;height:15px;color:var(--mg-orange)}
.mg-service-pill:hover{background:rgba(255,140,58,.28)}
.mg-service-pill.is-active{background:var(--mg-orange);color:#171717;font-weight:900}
.mg-service-pill.is-active .mg-icon{color:#171717}
.mg-hero-curve{position:absolute;z-index:3;bottom:0;left:0;width:100%;height:140px;background:#fff;border-top-left-radius:100% 100%;border-top-right-radius:100% 100%}
.mg-search-floating{position:absolute;z-index:10;left:0;right:0;bottom:36px}

/* search box */
.mg-search-box{width:min(1200px,100%);min-height:136px;margin-inline:auto;background:#fff;border-radius:22px;padding:20px 24px;box-shadow:var(--mg-shadow);border:1px solid rgba(231,232,236,.92)}
.mg-search-form{display:block}
.mg-search-row{display:grid;gap:14px;align-items:center}
.mg-search-row + .mg-search-row{margin-top:14px}
.mg-search-row--main{grid-template-columns:1fr 1.4fr 40px 1.4fr 1fr 1fr}
.mg-search-row--secondary{grid-template-columns:1fr 1fr 1.15fr auto;max-width:720px;margin-inline:auto}
.mg-search-row--standard{grid-template-columns:1.7fr 1fr 1fr 1fr 1fr auto}
.mg-search-row--short{grid-template-columns:1.8fr 1fr 1fr auto;max-width:860px;margin-inline:auto}
.mg-field{min-width:0;min-height:58px;display:flex;flex-direction:column;justify-content:center;gap:4px;border:1px solid #ececef;border-radius:14px;background:#fbfbfc;padding:8px 14px;transition:.2s}
.mg-field:focus-within{background:#fff;border-color:rgba(255,140,58,.8);box-shadow:0 0 0 4px rgba(255,140,58,.09)}
.mg-field-top{display:flex;align-items:center;gap:6px;color:#828894;font-size:11px;font-weight:700}
.mg-field-top .mg-icon{width:15px;height:15px;color:var(--mg-orange-dark)}
.mg-field-top em{font-style:normal}
.mg-field input,.mg-field select{width:100%;min-height:24px;border:0;outline:0;background:transparent;color:#232832;font-size:13px;font-weight:700}
.mg-swap{width:40px;height:40px;display:grid;place-items:center;border:1px solid #ececef;border-radius:50%;background:#fff;color:var(--mg-orange-dark);box-shadow:0 5px 12px rgba(17,20,27,.06)}
.mg-check{min-height:48px;display:flex;align-items:center;justify-content:center;gap:7px;color:#565c66;font-size:13px;font-weight:700}
.mg-check input{accent-color:var(--mg-orange)}
.mg-search-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:999px;background:linear-gradient(135deg,#ffae6d,var(--mg-orange));color:#151515;padding:0 24px;font-size:13px;font-weight:900;white-space:nowrap;box-shadow:0 8px 18px rgba(255,140,58,.22)}
.mg-search-button:hover{filter:brightness(.98);transform:translateY(-1px)}

/* homepage */
.mg-benefits{border-bottom:1px solid var(--mg-line)}
.mg-benefits-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.mg-benefits article{display:flex;align-items:center;justify-content:center;gap:13px;padding:24px 18px;border-inline-start:1px solid var(--mg-line)}
.mg-benefits article:first-child{border-inline-start:0}
.mg-benefits article>.mg-icon{width:32px;height:32px;color:var(--mg-orange)}
.mg-benefits strong,.mg-benefits span{display:block}
.mg-benefits strong{font-size:16px}.mg-benefits span{font-size:12px;color:var(--mg-muted)}
.mg-section{padding:72px 0}.mg-section--soft{background:var(--mg-surface)}
.mg-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:25px}
.mg-section-heading span{display:block;color:var(--mg-orange-dark);font-size:12px;font-weight:800}.mg-section-heading h2{font-size:clamp(27px,2.7vw,38px);line-height:1.28;margin:3px 0 4px}.mg-section-heading p{margin:0;color:var(--mg-muted);font-size:14px}.mg-section-heading>a{display:inline-flex;align-items:center;gap:5px;color:var(--mg-orange-dark);font-size:13px;font-weight:800}
.mg-destination-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:3px 2px 12px}
.mg-destination-track::-webkit-scrollbar{height:7px}.mg-destination-track::-webkit-scrollbar-thumb{background:#d8d9dd;border-radius:99px}
.mg-destination-card{position:relative;min-width:245px;height:330px;border-radius:18px;overflow:hidden;background:#111;box-shadow:var(--mg-shadow-soft);scroll-snap-align:start}
.mg-destination-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.mg-destination-card:hover img{transform:scale(1.06)}
.mg-card-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,6,9,.91),rgba(4,6,9,.02) 70%)}
.mg-destination-card>div{position:absolute;inset-inline:17px;bottom:16px;color:#fff}.mg-destination-card small{color:rgba(255,255,255,.7)}.mg-destination-card h3{font-size:24px;margin:0 0 4px}.mg-destination-card p{font-size:11px;margin:0}.mg-destination-card strong{display:block;font-size:16px}
.mg-articles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.mg-article-card{background:#fff;border:1px solid var(--mg-line);border-radius:18px;overflow:hidden;box-shadow:0 8px 25px rgba(17,22,30,.05);transition:.25s}.mg-article-card:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(17,22,30,.1)}
.mg-article-image{display:block;height:220px;overflow:hidden}.mg-article-image img{width:100%;height:100%;object-fit:cover;transition:.45s}.mg-article-card:hover .mg-article-image img{transform:scale(1.045)}
.mg-article-content{padding:18px}.mg-article-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.mg-article-meta span{display:inline-flex;align-items:center;gap:5px;color:var(--mg-orange-dark);font-size:11px;font-weight:800}.mg-article-meta .mg-icon{width:14px;height:14px}
.mg-article-content h2,.mg-article-content h3{font-size:18px;line-height:1.6;margin:0 0 8px}.mg-article-content p{font-size:13px;color:var(--mg-muted);margin:0 0 14px}
.mg-article-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.mg-article-footer small{display:inline-flex;align-items:center;gap:5px;color:#737a85;font-size:12px}.mg-read-more{display:inline-flex;align-items:center;gap:5px;color:var(--mg-orange-dark);font-size:12px;font-weight:800}
.mg-empty-news{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--mg-line);border-radius:18px;padding:24px;box-shadow:var(--mg-shadow-soft)}
.mg-empty-news>.mg-icon{width:32px;height:32px;color:var(--mg-orange)}.mg-empty-news h3{margin:0 0 4px}.mg-empty-news p{margin:0;color:var(--mg-muted)}

/* inner and blog/single */
.mg-inner-heading,.mg-results-heading{background:radial-gradient(circle at 50% 0,#232832,var(--mg-black) 68%);color:#fff;text-align:center;padding:75px 0 65px;border-bottom:3px solid var(--mg-orange)}
.mg-inner-heading span,.mg-results-heading span{display:inline-flex;align-items:center;gap:6px;color:var(--mg-orange);font-size:12px;font-weight:800}.mg-inner-heading h1,.mg-results-heading h1{font-size:clamp(34px,3.6vw,50px);margin:4px 0}.mg-results-heading p,.mg-inner-heading p{color:rgba(255,255,255,.67);margin:5px auto 0;max-width:760px}
.mg-content-card{background:#fff;border:1px solid var(--mg-line);border-radius:18px;padding:28px;box-shadow:var(--mg-shadow-soft)}
.mg-prose{font-size:16px;line-height:1.9}.mg-prose h2,.mg-prose h3,.mg-prose h4{line-height:1.4;margin:1.5em 0 .55em}.mg-prose p,.mg-prose ul,.mg-prose ol,.mg-prose blockquote{margin:0 0 1.1em}.mg-prose img{border-radius:16px}.mg-prose blockquote{padding:18px 20px;border-inline-start:4px solid var(--mg-orange);background:#fff7f1;border-radius:12px}
.mg-service-intro{display:flex;align-items:center;gap:17px;margin-bottom:24px}.mg-service-intro>span{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:#fff4e9;color:var(--mg-orange-dark)}.mg-service-intro>span .mg-icon{width:27px;height:27px}.mg-service-intro small{color:var(--mg-orange-dark);font-weight:800}.mg-service-intro h1{font-size:clamp(29px,2.9vw,42px);margin:2px 0}.mg-service-intro p{margin:0;color:var(--mg-muted)}
.mg-results-placeholder{display:grid;grid-template-columns:270px 1fr;gap:18px;align-items:start}.mg-results-placeholder aside{background:#fff;border:1px solid var(--mg-line);border-radius:16px;padding:18px}.mg-results-placeholder h2{font-size:18px;margin:0 0 13px}.mg-results-placeholder dl{display:grid;gap:8px;margin:0}.mg-results-placeholder dl div{background:#f7f7f8;border-radius:9px;padding:9px}.mg-results-placeholder dt{font-size:11px;color:#848a93;font-weight:800}.mg-results-placeholder dd{margin:2px 0 0;font-size:13px;font-weight:800}.mg-result-skeleton{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;background:#fff;border:1px solid var(--mg-line);border-radius:16px;padding:17px;margin-bottom:12px}.mg-result-skeleton>span{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;background:#fff4e9;color:var(--mg-orange-dark)}.mg-result-skeleton small{color:#8a9099}.mg-result-skeleton h3{font-size:16px;margin:2px 0}.mg-result-skeleton p{font-size:13px;color:var(--mg-muted);margin:0}
.mg-single-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}.mg-single-cover{border-radius:20px;overflow:hidden;margin-bottom:18px;max-height:540px}.mg-single-cover img{width:100%;height:100%;object-fit:cover}
.mg-single-sidebar{position:sticky;top:20px;display:grid;gap:16px}.mg-side-card{background:#fff;border:1px solid var(--mg-line);border-radius:18px;padding:18px;box-shadow:var(--mg-shadow-soft)}.mg-side-card h2{display:flex;align-items:center;gap:8px;font-size:16px;margin:0 0 14px}.mg-side-card ul{list-style:none;margin:0;padding:0}.mg-side-card li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--mg-line)}.mg-side-card li:last-child{border-bottom:0}.mg-side-card li span{font-size:12px;color:#6f7580}.mg-side-card li strong{font-size:13px}
.mg-mini-posts{display:grid;gap:12px}.mg-mini-post{display:grid;grid-template-columns:74px 1fr;gap:12px;align-items:center}.mg-mini-post-image{display:block;height:64px;border-radius:12px;overflow:hidden}.mg-mini-post-image img{width:100%;height:100%;object-fit:cover}.mg-mini-post-copy strong{display:block;font-size:13px;line-height:1.5}.mg-mini-post-copy small{color:#7b818b;font-size:11px}.mg-mini-post-empty{margin:0;color:#6f7580;font-size:13px}
.mg-empty-content,.mg-error{text-align:center;padding:50px 20px}.mg-error>strong{font-size:80px;color:var(--mg-orange)}.mg-error a{display:inline-block;margin-top:12px;background:var(--mg-orange);padding:10px 16px;border-radius:10px;font-weight:900}
.mg-pagination{margin-top:25px}.nav-links{display:flex;justify-content:center;gap:7px}.page-numbers{padding:8px 12px;border:1px solid var(--mg-line);border-radius:8px}.page-numbers.current{background:var(--mg-orange);border-color:var(--mg-orange);font-weight:900}

/* footer */
.mg-footer{background:#fff;border-top:1px solid var(--mg-line)}.mg-footer-line{height:3px;background:var(--mg-orange)}
.mg-footer-actions{display:flex;gap:12px;flex-wrap:wrap;padding:28px 0 0}.mg-footer-action{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 16px;border:1px solid var(--mg-line);border-radius:999px;background:#fff;box-shadow:var(--mg-shadow-soft);font-size:13px;font-weight:800;color:#222}.mg-footer-action .mg-icon{color:var(--mg-orange-dark)}
.mg-footer-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:48px;padding:34px 0 35px}
.mg-footer-brand{display:inline-flex;align-items:center;gap:10px}.mg-footer-brand>span{width:48px;height:48px;display:grid;place-items:center;border:2px solid var(--mg-orange);border-radius:14px;color:var(--mg-orange-dark);font-weight:900}.mg-footer-brand>div{display:flex;flex-direction:column}.mg-footer-brand strong{font-size:20px}.mg-footer-brand small{color:var(--mg-orange-dark)}
.mg-footer section>p{font-size:13px;color:var(--mg-muted);max-width:350px}.mg-footer h2{display:flex;align-items:center;gap:8px;font-size:16px;margin:0 0 14px}.mg-footer h2 .mg-icon{color:var(--mg-orange-dark)}
.mg-footer ul{list-style:none;padding:0;margin:0}.mg-footer li{margin:8px 0}.mg-footer li a{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:#606670}.mg-footer li a .mg-icon{width:14px;height:14px;color:var(--mg-orange-dark)}.mg-footer li a:hover{color:var(--mg-orange-dark)}
.mg-footer-contact{padding:10px 0;border-bottom:1px solid var(--mg-line)}.mg-footer-contact span{display:block;font-size:11px;color:#858b94}.mg-footer-contact strong,.mg-footer-contact a{font-size:13px;font-weight:800}
.mg-footer-socials{display:flex;gap:8px;margin-top:16px}.mg-footer-socials a{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#faf7f4;border:1px solid #f0e4d8;color:var(--mg-orange-dark)}
.mg-footer-bottom{border-top:1px solid var(--mg-line);padding:16px 0}.mg-footer-bottom .mg-container{display:flex;align-items:center;justify-content:space-between;gap:18px}.mg-footer-bottom p{margin:0;font-size:12px;color:#777e88}.mg-footer-bottom div{display:flex;gap:16px;font-size:12px;color:#626974}

/* responsive */
@media(max-width:1180px){
  .mg-topbar-center{max-width:360px}
  .mg-search-row--main{grid-template-columns:1fr 1fr 40px 1fr 1fr}
  .mg-search-row--main .mg-return-field{grid-column:1/3}
  .mg-search-row--secondary{max-width:none;grid-template-columns:1fr 1fr 1fr auto}
  .mg-search-row--standard{grid-template-columns:repeat(3,1fr)}
  .mg-search-row--standard .mg-field--wide{grid-column:span 2}
  .mg-search-row--standard .mg-search-button{grid-column:3/4}
  .mg-articles-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:860px){
  :root{--mg-container:min(100% - 26px,760px)}
  .mg-topbar-grid{min-height:68px;grid-template-columns:1fr auto}
  .mg-topbar-group,.mg-topbar-center{display:none}
  .mg-mobile-menu-button{display:flex;justify-self:end}
  .mg-mobile-panel{display:block;position:fixed;top:0;bottom:0;right:0;width:min(88vw,350px);background:#0a0d13;color:#fff;z-index:1100;padding:20px;transform:translateX(102%);transition:.25s}
  .mg-mobile-panel.is-open{transform:none}
  .mg-mobile-panel-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:13px;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}
  .mg-mobile-panel-close{width:38px;height:38px;border:1px solid rgba(255,140,58,.65);border-radius:10px;background:transparent;color:#fff}
  .mg-mobile-panel>a,.mg-mobile-panel>button{width:100%;min-height:43px;display:flex;align-items:center;gap:8px;border:0;border-bottom:1px solid rgba(255,255,255,.08);background:transparent;color:#fff;padding:10px;text-align:start}
  .mg-mobile-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:1050;opacity:0;visibility:hidden;transition:.25s}
  .mg-mobile-backdrop.is-open{opacity:1;visibility:visible}
  .mg-hero{height:930px}.mg-hero--compact{height:900px}.mg-hero-copy{padding-top:150px}.mg-hero--compact .mg-hero-copy{padding-top:145px}
  .mg-service-pills{top:245px;overflow-x:auto;justify-content:flex-start}.mg-hero--compact .mg-service-pills{top:240px}
  .mg-slider-arrow{display:none}
  .mg-hero-curve{height:128px}.mg-search-floating{bottom:24px}
  .mg-search-box{min-height:auto;padding:18px}
  .mg-search-row--main,.mg-search-row--secondary,.mg-search-row--standard,.mg-search-row--short{grid-template-columns:repeat(2,1fr);max-width:none}
  .mg-swap{display:none}.mg-search-row--main .mg-return-field{grid-column:auto}.mg-search-button{grid-column:span 2!important}
  .mg-benefits-grid{grid-template-columns:1fr}.mg-benefits article{justify-content:flex-start;border-inline-start:0;border-bottom:1px solid var(--mg-line)}.mg-benefits article:last-child{border-bottom:0}
  .mg-results-placeholder{grid-template-columns:1fr}
  .mg-single-layout{grid-template-columns:1fr}.mg-single-sidebar{position:static}
  .mg-footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  :root{--mg-container:calc(100% - 20px)}
  .mg-hero{height:1080px}.mg-hero--compact{height:1040px}.mg-hero-copy{padding-top:130px}
  .mg-hero-copy h1{font-size:32px}.mg-hero-copy p{font-size:14px}
  .mg-service-pills{top:220px}.mg-hero--compact .mg-service-pills{top:220px}
  .mg-search-box{padding:14px;border-radius:18px}
  .mg-search-row--main,.mg-search-row--secondary,.mg-search-row--standard,.mg-search-row--short{grid-template-columns:1fr}
  .mg-search-button{grid-column:auto!important}.mg-check{justify-content:flex-start}
  .mg-section{padding:52px 0}.mg-section-heading{align-items:flex-start;flex-direction:column;gap:9px}.mg-section-heading h2{font-size:27px}
  .mg-destination-card{min-width:220px;height:290px}
  .mg-articles-grid{grid-template-columns:1fr}.mg-article-image{height:215px}
  .mg-footer-actions{flex-direction:column}.mg-footer-grid{grid-template-columns:1fr;gap:28px}.mg-footer-bottom .mg-container{align-items:flex-start;flex-direction:column}.mg-footer-bottom div{flex-wrap:wrap}
  .mg-result-skeleton{grid-template-columns:auto 1fr}.mg-result-skeleton>strong{grid-column:1/-1}
  .mg-content-card{padding:20px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}


/* ==========================================
   Migrago visual refinement — version 3.2
========================================== */

/* Unified icons */
.mg-icon{
  width:19px;
  height:19px;
  stroke-width:1.7;
}
.mg-top-pill .mg-icon,
.mg-service-pill .mg-icon,
.mg-field-top .mg-icon,
.mg-footer-action .mg-icon,
.mg-footer h2 .mg-icon,
.mg-footer li .mg-icon{
  flex:0 0 auto;
}

/* Header polish */
.mg-top-pill{
  min-height:40px;
  padding-inline:15px;
  border-color:rgba(255,140,58,.66);
  background:rgba(5,7,11,.46);
  box-shadow:0 7px 18px rgba(0,0,0,.08);
}
.mg-top-pill:hover{
  transform:translateY(-1px);
  border-color:rgba(255,140,58,.92);
  background:rgba(255,140,58,.16);
}
.mg-top-pill .mg-icon{
  width:16px;
  height:16px;
}
.mg-topbar-center{
  font-size:12.5px;
  letter-spacing:.05px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}

/* Hero balance */
.mg-hero-overlay{
  background:
    linear-gradient(180deg,rgba(1,3,6,.39),rgba(1,3,6,.08) 44%,rgba(1,3,6,.46)),
    radial-gradient(circle at 50% 40%,rgba(0,0,0,.01),rgba(0,0,0,.13) 60%,rgba(0,0,0,.40) 100%);
}
.mg-hero-copy h1{
  font-size:clamp(34px,3.45vw,50px);
  letter-spacing:-.4px;
}
.mg-hero-copy p{
  font-size:16px;
  font-weight:500;
}
.mg-service-pills{
  gap:9px;
}
.mg-service-pill{
  min-height:41px;
  padding:8px 16px;
  gap:8px;
  border-color:rgba(255,140,58,.68);
  background:rgba(8,10,15,.27);
  font-size:12.5px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.mg-service-pill .mg-icon{
  width:16px;
  height:16px;
  color:#ffad72;
}
.mg-service-pill:hover{
  transform:translateY(-1px);
  background:rgba(255,140,58,.22);
}
.mg-service-pill.is-active{
  background:linear-gradient(135deg,#ffa45f,var(--mg-orange));
  border-color:transparent;
  box-shadow:0 7px 17px rgba(255,140,58,.22);
}

/* Stable curve */
.mg-hero-curve{
  height:138px;
  transform:translateZ(0);
  backface-visibility:hidden;
}

/* Search box: controlled shadow with no grey band */
.mg-search-floating{
  bottom:35px;
}
.mg-search-box{
  position:relative;
  isolation:isolate;
  min-height:138px;
  border:1px solid rgba(225,228,233,.92);
  border-radius:23px;
  padding:20px 22px;
  background:rgba(255,255,255,.985);
  box-shadow:
    0 20px 42px rgba(15,23,42,.10),
    0 5px 13px rgba(15,23,42,.045),
    inset 0 1px 0 rgba(255,255,255,.95);
}
.mg-search-box::after{
  content:"";
  position:absolute;
  z-index:-1;
  left:8%;
  right:8%;
  bottom:-13px;
  height:22px;
  border-radius:50%;
  background:rgba(15,23,42,.08);
  filter:blur(16px);
  opacity:.48;
  pointer-events:none;
}

/* Search layout and fields */
.mg-search-row{
  gap:11px;
}
.mg-search-row + .mg-search-row{
  margin-top:11px;
}
.mg-search-row--main{
  grid-template-columns:1fr 1.42fr 42px 1.42fr 1fr 1fr;
}
.mg-search-row--secondary{
  max-width:760px;
}
.mg-search-row--standard{
  grid-template-columns:1.7fr 1fr 1fr 1fr 1fr auto;
}
.mg-field{
  min-height:61px;
  gap:5px;
  border-color:#e8eaf0;
  border-radius:13px;
  background:#fafbfc;
  padding:9px 13px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.mg-field:hover{
  background:#fff;
  border-color:#dde0e6;
}
.mg-field:focus-within{
  border-color:rgba(255,140,58,.76);
  box-shadow:
    0 0 0 4px rgba(255,140,58,.085),
    0 7px 15px rgba(15,23,42,.045);
}
.mg-field-top{
  min-height:22px;
  gap:8px;
  color:#747b87;
  font-size:11px;
  font-weight:700;
}
.mg-field-top .mg-icon{
  width:27px;
  height:27px;
  padding:6px;
  border-radius:8px;
  background:#fff2e7;
  color:var(--mg-orange-dark);
}
.mg-field input,
.mg-field select{
  min-height:25px;
  font-family:inherit;
  font-size:13.5px;
  font-weight:700;
  line-height:1.3;
}
.mg-field input::placeholder{
  color:#9a9faa;
  font-weight:500;
}
.mg-swap{
  width:42px;
  height:42px;
  border-color:#e3e6eb;
  box-shadow:0 7px 15px rgba(15,23,42,.065);
}
.mg-swap:hover{
  transform:rotate(180deg);
  color:#fff;
  background:var(--mg-orange);
  border-color:var(--mg-orange);
}
.mg-check{
  font-size:12.5px;
}
.mg-search-button{
  min-height:52px;
  padding-inline:25px;
  font-size:13.5px;
  box-shadow:
    0 11px 22px rgba(255,140,58,.20),
    inset 0 1px 0 rgba(255,255,255,.35);
}
.mg-search-button .mg-icon{
  width:18px;
  height:18px;
}
.mg-search-button:hover{
  transform:translateY(-2px);
  box-shadow:
    0 14px 26px rgba(255,140,58,.24),
    inset 0 1px 0 rgba(255,255,255,.35);
}

/* Benefit icons */
.mg-benefits article>.mg-icon{
  width:46px;
  height:46px;
  padding:11px;
  border-radius:14px;
  background:#fff3e9;
  border:1px solid #ffe1c8;
  color:var(--mg-orange-dark);
}
.mg-benefits strong{
  font-size:15px;
  letter-spacing:-.1px;
}

/* Headings and cards */
.mg-section-heading h2{
  letter-spacing:-.35px;
}
.mg-destination-card,
.mg-article-card,
.mg-content-card,
.mg-side-card{
  border-color:#e8eaf0;
}
.mg-article-card{
  border-radius:19px;
}
.mg-article-content h2,
.mg-article-content h3{
  font-size:17px;
  font-weight:800;
  letter-spacing:-.15px;
}
.mg-article-meta span{
  color:#8a5b38;
  background:#fff6ef;
  border:1px solid #ffe5d1;
  border-radius:999px;
  padding:5px 8px;
}
.mg-article-footer{
  padding-top:12px;
  border-top:1px solid #eef0f3;
}

/* Footer refinement */
.mg-footer{
  background:linear-gradient(180deg,#fff,#fbfbfc);
}
.mg-footer-actions{
  gap:10px;
}
.mg-footer-action{
  min-height:50px;
  padding:0 17px 0 11px;
  gap:10px;
  border-color:#e6e8ed;
  box-shadow:0 8px 18px rgba(15,23,42,.055);
  transition:.2s;
}
.mg-footer-action .mg-icon{
  width:34px;
  height:34px;
  padding:8px;
  border-radius:10px;
  background:#fff1e5;
  color:var(--mg-orange-dark);
}
.mg-footer-action:hover{
  transform:translateY(-2px);
  border-color:#ffd2ae;
  box-shadow:0 12px 24px rgba(15,23,42,.075);
}
.mg-footer h2{
  padding-bottom:10px;
  border-bottom:1px solid #eceef2;
}
.mg-footer h2 .mg-icon{
  width:30px;
  height:30px;
  padding:7px;
  border-radius:9px;
  background:#fff2e7;
}
.mg-footer li a{
  min-height:32px;
  transition:.18s;
}
.mg-footer li a:hover{
  transform:translateX(-3px);
}
.mg-footer-socials a{
  width:40px;
  height:40px;
  transition:.2s;
}
.mg-footer-socials a:hover{
  transform:translateY(-2px);
  background:var(--mg-orange);
  color:#171717;
  border-color:var(--mg-orange);
}

/* Article reading page */
.mg-article-head-meta span{
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(255,255,255,.06);
}
.mg-prose{
  color:#292d35;
}
.mg-prose a{
  color:var(--mg-orange-dark);
  text-decoration:underline;
  text-underline-offset:3px;
}

@media(max-width:1180px){
  .mg-search-row--main{
    grid-template-columns:1fr 1fr 42px 1fr 1fr;
  }
}
@media(max-width:860px){
  .mg-service-pill{
    min-height:39px;
  }
  .mg-search-box{
    padding:17px;
    box-shadow:
      0 17px 34px rgba(15,23,42,.09),
      0 4px 10px rgba(15,23,42,.04);
  }
  .mg-search-box::after{
    left:12%;
    right:12%;
    bottom:-10px;
  }
}
@media(max-width:560px){
  .mg-search-box{
    padding:13px;
    border-radius:18px;
  }
  .mg-field{
    min-height:58px;
  }
  .mg-field-top .mg-icon{
    width:25px;
    height:25px;
  }
}


/* ==========================================
   Layout correction — version 3.3
   Fixes hero text overlap and search balance
========================================== */

body{
  font-family:Tahoma,"Segoe UI",Arial,sans-serif;
  font-size:15px;
  line-height:1.68;
}

/* The hero content now follows normal document flow.
   Nothing is positioned on top of the title or subtitle. */
.mg-hero-copy{
  display:flex;
  flex-direction:column;
  align-items:center;
  width:min(980px,var(--mg-container));
  padding-top:118px;
}
.mg-hero--compact .mg-hero-copy{
  padding-top:112px;
}
.mg-hero-copy h1{
  max-width:900px;
  margin:0;
  font-size:clamp(36px,3.25vw,48px);
  line-height:1.34;
  font-weight:700;
  letter-spacing:0;
  text-wrap:balance;
}
.mg-hero-copy p{
  max-width:720px;
  margin:7px 0 0;
  font-size:15px;
  line-height:1.7;
  font-weight:600;
  text-wrap:balance;
}
.mg-service-pills{
  position:static;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  width:100%;
  margin-top:17px;
  padding:0;
  gap:8px;
}
.mg-hero--compact .mg-service-pills{
  margin-top:16px;
}
.mg-service-pill{
  min-height:40px;
  padding:7px 15px;
  font-size:12px;
  line-height:1;
}
.mg-service-pill .mg-icon{
  width:15px;
  height:15px;
}

/* Search card */
.mg-search-floating{
  bottom:34px;
}
.mg-search-box{
  width:min(1160px,100%);
  min-height:auto;
  padding:18px 20px;
  border-radius:22px;
  background:#fff;
  border:1px solid #e5e8ed;
  box-shadow:
    0 18px 34px rgba(15,23,42,.085),
    0 4px 10px rgba(15,23,42,.035);
}
.mg-search-box::after{
  left:12%;
  right:12%;
  bottom:-9px;
  height:16px;
  background:rgba(15,23,42,.065);
  filter:blur(15px);
  opacity:.34;
}

/* Short forms such as eSIM fill the card rather than floating inside empty space. */
.mg-search-box--esim{
  width:min(1080px,100%);
  padding:18px 20px;
}
.mg-search-row--short{
  width:100%;
  max-width:none;
  grid-template-columns:minmax(280px,2.1fr) minmax(155px,1fr) minmax(155px,1fr) 176px;
  gap:12px;
}
.mg-search-box--esim .mg-search-form{
  width:100%;
}
.mg-search-box--esim .mg-search-button{
  width:176px;
  padding-inline:16px;
}

/* Standard single-row services use the full available width. */
.mg-search-row--standard{
  width:100%;
  grid-template-columns:minmax(260px,1.65fr) repeat(4,minmax(130px,1fr)) minmax(150px,auto);
}
.mg-search-row--main{
  width:100%;
}
.mg-search-row--secondary{
  width:min(760px,100%);
}

/* Fields */
.mg-field{
  min-width:0;
  min-height:64px;
  padding:8px 13px 9px;
  border-radius:13px;
  background:#fafbfc;
}
.mg-field-top{
  display:flex;
  align-items:center;
  min-height:24px;
  gap:7px;
  color:#747b85;
  font-size:11px;
  line-height:1.2;
}
.mg-field-top .mg-icon{
  width:25px;
  height:25px;
  padding:5px;
  border-radius:8px;
}
.mg-field input,
.mg-field select{
  min-width:0;
  height:27px;
  font-size:13px;
  line-height:1.35;
  font-weight:700;
}
.mg-search-button{
  min-height:52px;
  border-radius:14px;
  font-size:13px;
}
.mg-search-button span{
  white-space:nowrap;
}

/* Keep the white curve visually centered and stable. */
.mg-hero-curve{
  left:0;
  right:0;
  width:100%;
  height:132px;
  border-top-left-radius:50% 100%;
  border-top-right-radius:50% 100%;
  transform:none;
}

/* Large desktop refinement */
@media(min-width:1181px){
  .mg-hero{
    height:740px;
  }
  .mg-hero--compact{
    height:710px;
  }
}

/* Tablet */
@media(max-width:1180px){
  .mg-hero-copy{
    padding-top:126px;
  }
  .mg-search-row--short{
    grid-template-columns:minmax(240px,1.7fr) minmax(140px,1fr) minmax(140px,1fr) 160px;
  }
  .mg-search-box--esim .mg-search-button{
    width:160px;
  }
}

/* Mobile/tablet */
@media(max-width:860px){
  .mg-hero-copy,
  .mg-hero--compact .mg-hero-copy{
    padding-top:118px;
  }
  .mg-hero-copy h1{
    font-size:clamp(30px,7vw,39px);
    line-height:1.38;
  }
  .mg-service-pills{
    flex-wrap:nowrap;
    justify-content:flex-start;
    overflow-x:auto;
    margin-top:14px;
    padding-bottom:4px;
    scrollbar-width:none;
  }
  .mg-service-pills::-webkit-scrollbar{
    display:none;
  }
  .mg-search-row--short,
  .mg-search-row--standard{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .mg-search-box--esim .mg-search-button{
    width:auto;
  }
}

/* Phone */
@media(max-width:560px){
  .mg-hero-copy,
  .mg-hero--compact .mg-hero-copy{
    padding-top:104px;
  }
  .mg-hero-copy h1{
    font-size:30px;
    line-height:1.42;
  }
  .mg-hero-copy p{
    font-size:13px;
  }
  .mg-service-pill{
    min-height:38px;
    padding-inline:13px;
  }
  .mg-search-row--short,
  .mg-search-row--standard{
    grid-template-columns:1fr;
  }
  .mg-search-box{
    padding:13px;
  }
  .mg-search-box--esim .mg-search-button{
    width:100%;
  }
}


/* ==========================================
   Search card rebuild — version 3.4
========================================== */

/* Different hero heights allow the card to grow without collision. */
.mg-hero{
  height:780px;
}
.mg-hero--flights{
  height:860px;
}
.mg-hero--compact{
  height:750px;
}
.mg-hero--compact.mg-hero--flights{
  height:825px;
}

/* The card grows naturally; no forced horizontal strip. */
.mg-search-floating{
  bottom:27px;
}
.mg-search-box,
.mg-search-box--esim{
  width:min(1120px,100%);
  min-height:0;
  padding:20px;
  border:1px solid #e6e9ee;
  border-radius:22px;
  background:#fff;
  box-shadow:
    0 14px 30px rgba(15,23,42,.075),
    0 3px 8px rgba(15,23,42,.035);
}
.mg-search-box::after{
  display:none;
}
.mg-search-form{
  width:100%;
}

/* Main responsive grids */
.mg-form-grid{
  display:grid;
  gap:12px;
  align-items:stretch;
}
.mg-form-grid--four{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.mg-form-grid--flights{
  grid-template-columns:1fr 1.45fr 42px 1.45fr;
}
.mg-form-grid--flights .mg-field:nth-of-type(4),
.mg-form-grid--flights .mg-field:nth-of-type(5),
.mg-form-grid--flights .mg-field:nth-of-type(6),
.mg-form-grid--flights .mg-field:nth-of-type(7){
  grid-column:span 1;
}
.mg-field--span-2{
  grid-column:span 2;
}

/* Compact fields with the icon beside the information */
.mg-field{
  min-width:0;
  min-height:58px;
  display:grid;
  grid-template-columns:35px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:8px 11px;
  border:1px solid #e8ebef;
  border-radius:13px;
  background:#fafbfc;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
  transition:border-color .2s,box-shadow .2s,background .2s,transform .2s;
}
.mg-field:hover{
  background:#fff;
  border-color:#dde2e8;
}
.mg-field:focus-within{
  background:#fff;
  border-color:rgba(255,140,58,.78);
  box-shadow:0 0 0 4px rgba(255,140,58,.08);
}
.mg-field-icon{
  width:35px;
  height:35px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#fff1e5;
  color:var(--mg-orange-dark);
}
.mg-field-icon .mg-icon{
  width:18px;
  height:18px;
}
.mg-field-body{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:1px;
}
.mg-field-label{
  color:#747b86;
  font-size:10.5px;
  line-height:1.25;
  font-weight:700;
}
.mg-field input,
.mg-field select{
  width:100%;
  min-width:0;
  height:25px;
  border:0;
  outline:0;
  background:transparent;
  color:#222833;
  font-family:inherit;
  font-size:13px;
  line-height:1.25;
  font-weight:700;
}
.mg-field input::placeholder{
  color:#9ca2ac;
  font-weight:500;
}

/* Swap button occupies one compact grid cell */
.mg-swap{
  width:42px;
  height:42px;
  align-self:center;
  justify-self:center;
  border:1px solid #e2e6eb;
  background:#fff;
  box-shadow:0 6px 13px rgba(15,23,42,.055);
}
.mg-swap:hover{
  background:var(--mg-orange);
  color:#171717;
  border-color:var(--mg-orange);
}

/* Action row */
.mg-form-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:13px;
  padding-top:13px;
  border-top:1px solid #eef0f3;
}
.mg-form-actions--end{
  justify-content:flex-end;
}
.mg-check{
  min-height:42px;
  justify-content:flex-start;
  padding-inline:5px;
  font-size:12.5px;
}
.mg-search-button{
  min-width:180px;
  min-height:50px;
  padding:0 22px;
  border-radius:13px;
  box-shadow:
    0 9px 18px rgba(255,140,58,.18),
    inset 0 1px 0 rgba(255,255,255,.35);
}
.mg-search-button:hover{
  transform:translateY(-1px);
  box-shadow:
    0 12px 22px rgba(255,140,58,.22),
    inset 0 1px 0 rgba(255,255,255,.35);
}

/* Remove legacy search layout rules from influencing the new structure */
.mg-search-row,
.mg-search-row--main,
.mg-search-row--secondary,
.mg-search-row--standard,
.mg-search-row--short{
  display:contents;
}

/* The curve remains calm; the card shadow no longer creates a grey stripe. */
.mg-hero-curve{
  height:128px;
  border-top-left-radius:50% 100%;
  border-top-right-radius:50% 100%;
}

/* Desktop refinement */
@media(min-width:1181px){
  .mg-form-grid--flights{
    grid-template-columns:1fr 1.45fr 42px 1.45fr;
  }
}

/* Tablet */
@media(max-width:980px){
  .mg-hero{
    height:900px;
  }
  .mg-hero--flights{
    height:1040px;
  }
  .mg-hero--compact{
    height:880px;
  }
  .mg-hero--compact.mg-hero--flights{
    height:1010px;
  }
  .mg-form-grid--four{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .mg-form-grid--flights{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .mg-form-grid--flights .mg-swap{
    display:none;
  }
  .mg-field--wide,
  .mg-field--span-2{
    grid-column:span 2;
  }
}

/* Phone */
@media(max-width:560px){
  .mg-hero{
    height:1080px;
  }
  .mg-hero--flights{
    height:1320px;
  }
  .mg-hero--compact{
    height:1050px;
  }
  .mg-hero--compact.mg-hero--flights{
    height:1290px;
  }
  .mg-search-floating{
    bottom:20px;
  }
  .mg-search-box,
  .mg-search-box--esim{
    padding:13px;
    border-radius:18px;
    box-shadow:
      0 11px 23px rgba(15,23,42,.07),
      0 2px 6px rgba(15,23,42,.03);
  }
  .mg-form-grid--four,
  .mg-form-grid--flights{
    grid-template-columns:1fr;
  }
  .mg-field--wide,
  .mg-field--span-2{
    grid-column:auto;
  }
  .mg-form-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .mg-form-actions--end{
    align-items:stretch;
  }
  .mg-search-button{
    width:100%;
    min-width:0;
  }
  .mg-check{
    width:100%;
  }
}


/* ==========================================
   Professional segmented search bar — v3.5
========================================== */

/* Hero/card sizing */
.mg-hero{
  height:760px;
}
.mg-hero--flights{
  height:800px;
}
.mg-hero--compact{
  height:730px;
}
.mg-hero--compact.mg-hero--flights{
  height:770px;
}
.mg-search-floating{
  bottom:24px;
}

/* Remove all shadows under and around the search box */
.mg-search-box,
.mg-search-box--esim{
  width:min(1180px,100%);
  min-height:0;
  padding:22px 22px 16px;
  border:1px solid #e2e5e9;
  border-radius:22px;
  background:#fff;
  box-shadow:none !important;
  overflow:visible;
}
.mg-search-box::before,
.mg-search-box::after{
  display:none !important;
}

/* New form structure */
.mg-query-form{
  width:100%;
  direction:rtl;
}
.mg-query-toolbar{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  margin-bottom:14px;
}
.mg-query-title{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#313640;
  font-size:13px;
  font-weight:800;
}
.mg-query-title .mg-icon{
  width:18px;
  height:18px;
  color:var(--mg-orange-dark);
}
.mg-query-tabs{
  display:flex;
  align-items:center;
  gap:7px;
  padding:4px;
  border-radius:999px;
  background:#f4f5f7;
}
.mg-query-tab{
  position:relative;
  cursor:pointer;
}
.mg-query-tab input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.mg-query-tab span{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:6px 14px;
  border-radius:999px;
  color:#626873;
  font-size:12px;
  font-weight:800;
  transition:.2s;
}
.mg-query-tab input:checked + span{
  background:#fff2e6;
  color:#9f480c;
  box-shadow:inset 0 0 0 1px #ffd7b8;
}

/* One unified segmented row */
.mg-query-line{
  display:grid;
  align-items:stretch;
  width:100%;
  min-height:72px;
  border:1px solid #dfe3e8;
  border-radius:15px;
  background:#fff;
  overflow:visible;
}
.mg-query-line--flights{
  grid-template-columns:minmax(190px,1.45fr) 46px minmax(190px,1.45fr) minmax(145px,.9fr) minmax(145px,.9fr) minmax(180px,1.1fr) 112px;
}
.mg-query-line--hotels{
  grid-template-columns:minmax(280px,2fr) minmax(150px,1fr) minmax(150px,1fr) minmax(190px,1.15fr) 112px;
}
.mg-query-line--cars{
  grid-template-columns:minmax(280px,2fr) minmax(145px,1fr) 110px minmax(145px,1fr) 110px 112px;
}
.mg-query-line--insurance{
  grid-template-columns:minmax(230px,1.7fr) minmax(160px,1fr) minmax(145px,1fr) minmax(145px,1fr) minmax(130px,.85fr) 112px;
}
.mg-query-line--esim{
  grid-template-columns:minmax(320px,2fr) minmax(170px,1fr) minmax(180px,1fr) 150px;
}
.mg-query-line--visa{
  grid-template-columns:minmax(240px,1.6fr) minmax(170px,1fr) minmax(160px,1fr) minmax(160px,1fr) 112px;
}

/* Segments share the same bar rather than looking like separate cards */
.mg-query-segment{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:3px;
  padding:10px 15px;
  border-inline-start:1px solid #e6e8ec;
  background:#fff;
  cursor:text;
  transition:background .2s;
}
.mg-query-segment:first-child{
  border-inline-start:0;
}
.mg-query-segment:hover,
.mg-query-segment:focus-within{
  background:#fafbfc;
}
.mg-query-label{
  display:flex;
  align-items:center;
  gap:6px;
  color:#727985;
  font-size:10.5px;
  line-height:1.2;
  font-weight:700;
}
.mg-query-label .mg-icon{
  width:14px;
  height:14px;
  color:var(--mg-orange-dark);
}
.mg-query-segment input,
.mg-query-segment select{
  width:100%;
  min-width:0;
  height:28px;
  border:0;
  outline:0;
  background:transparent;
  color:#1f242c;
  font-family:inherit;
  font-size:13px;
  line-height:1.3;
  font-weight:800;
}
.mg-query-segment input::placeholder{
  color:#9b9fa7;
  font-weight:500;
}

/* Small swap control centered between the two location segments */
.mg-query-swap{
  width:38px;
  height:38px;
  align-self:center;
  justify-self:center;
  z-index:2;
  border:1px solid #dce0e5;
  border-radius:50%;
  background:#fff;
  color:var(--mg-orange-dark);
  box-shadow:none !important;
}
.mg-query-swap:hover{
  background:var(--mg-orange);
  color:#171717;
  border-color:var(--mg-orange);
}

/* Search button is part of the same row */
.mg-query-submit{
  min-width:0;
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:0;
  border-radius:13px 0 0 13px;
  background:linear-gradient(135deg,#ffa45e,var(--mg-orange));
  color:#151515;
  padding:0 15px;
  font-family:inherit;
  font-size:13px;
  font-weight:900;
  box-shadow:none !important;
  transition:filter .2s,background .2s;
}
[dir="ltr"] .mg-query-submit{
  border-radius:0 13px 13px 0;
}
.mg-query-submit:hover{
  filter:brightness(.97);
}
.mg-query-submit .mg-icon{
  width:18px;
  height:18px;
}

/* Lightweight secondary options */
.mg-query-options{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:18px;
  min-height:34px;
  margin-top:11px;
  color:#515761;
  font-size:12px;
  font-weight:700;
}
.mg-query-options label{
  display:inline-flex;
  align-items:center;
  gap:7px;
  cursor:pointer;
}
.mg-query-options input{
  width:17px;
  height:17px;
  margin:0;
  accent-color:var(--mg-orange);
}

/* Prevent old search-card layout from affecting the new markup */
.mg-form-grid,
.mg-form-actions{
  display:none !important;
}

/* Stable white curve without shadow bands */
.mg-hero-curve{
  height:126px;
  border-top-left-radius:50% 100%;
  border-top-right-radius:50% 100%;
}
.mg-search-box + *,
.mg-search-box ~ *{
  box-shadow:none;
}

/* Medium screens: two clean rows instead of compressed fields */
@media(max-width:1180px){
  .mg-hero{
    height:880px;
  }
  .mg-hero--flights{
    height:940px;
  }
  .mg-hero--compact{
    height:850px;
  }
  .mg-hero--compact.mg-hero--flights{
    height:910px;
  }

  .mg-query-line{
    border-radius:15px;
    overflow:hidden;
  }
  .mg-query-line--flights{
    grid-template-columns:1fr 46px 1fr 1fr;
  }
  .mg-query-line--flights .mg-return-field{
    grid-column:auto;
  }
  .mg-query-line--flights .mg-query-submit{
    grid-column:span 4;
  }

  .mg-query-line--hotels{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .mg-query-line--hotels .mg-query-segment--location{
    grid-column:span 2;
  }
  .mg-query-line--hotels .mg-query-submit{
    grid-column:span 2;
  }

  .mg-query-line--cars,
  .mg-query-line--insurance,
  .mg-query-line--visa{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .mg-query-line--cars .mg-query-segment--location,
  .mg-query-line--insurance .mg-query-segment--location,
  .mg-query-line--visa .mg-query-segment--location{
    grid-column:span 2;
  }
  .mg-query-line--cars .mg-query-submit,
  .mg-query-line--insurance .mg-query-submit,
  .mg-query-line--visa .mg-query-submit{
    grid-column:span 3;
  }

  .mg-query-line--esim{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .mg-query-line--esim .mg-query-segment--location{
    grid-column:span 2;
  }
  .mg-query-line--esim .mg-query-submit{
    grid-column:span 2;
  }

  .mg-query-submit{
    min-height:54px;
    border-radius:0 0 13px 13px;
  }
}

/* Phone: one field per row */
@media(max-width:620px){
  .mg-hero{
    height:1080px;
  }
  .mg-hero--flights{
    height:1240px;
  }
  .mg-hero--compact{
    height:1040px;
  }
  .mg-hero--compact.mg-hero--flights{
    height:1200px;
  }

  .mg-search-box,
  .mg-search-box--esim{
    padding:14px;
    border-radius:18px;
    box-shadow:none !important;
  }
  .mg-query-toolbar{
    overflow-x:auto;
    scrollbar-width:none;
  }
  .mg-query-toolbar::-webkit-scrollbar{
    display:none;
  }
  .mg-query-tabs{
    min-width:max-content;
  }
  .mg-query-line,
  .mg-query-line--flights,
  .mg-query-line--hotels,
  .mg-query-line--cars,
  .mg-query-line--insurance,
  .mg-query-line--esim,
  .mg-query-line--visa{
    grid-template-columns:1fr;
  }
  .mg-query-line .mg-query-segment,
  .mg-query-line .mg-query-segment--location,
  .mg-query-line .mg-query-submit{
    grid-column:auto;
  }
  .mg-query-swap{
    display:none;
  }
  .mg-query-segment{
    min-height:62px;
    border-inline-start:0;
    border-top:1px solid #e6e8ec;
  }
  .mg-query-segment:first-child{
    border-top:0;
  }
  .mg-query-submit{
    min-height:54px;
    border-radius:0 0 13px 13px;
  }
  .mg-query-options{
    align-items:flex-start;
    flex-direction:column;
    gap:9px;
  }
}


/* ==========================================
   Advanced customizable footer — v3.6
========================================== */
.mg-footer-v2{
  position:relative;
  overflow:hidden;
  color:var(--mg-footer-text);
  background:
    radial-gradient(circle at 12% 0,rgba(255,140,58,.11),transparent 28%),
    radial-gradient(circle at 88% 18%,rgba(255,255,255,.035),transparent 26%),
    var(--mg-footer-bg);
  border-top:0;
}
.mg-footer-v2::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 75%);
}
.mg-footer-accent{
  position:relative;
  z-index:1;
  height:3px;
  background:linear-gradient(90deg,transparent,var(--mg-orange) 20%,#ffb071 50%,var(--mg-orange) 80%,transparent);
}
.mg-footer-cta-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  padding-top:30px;
}
.mg-footer-cta{
  min-width:0;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 30px;
  align-items:center;
  gap:12px;
  min-height:76px;
  padding:13px 15px;
  color:var(--mg-footer-text);
  border:1px solid rgba(255,255,255,.085);
  border-radius:17px;
  background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
  transition:transform .2s,border-color .2s,background .2s;
}
.mg-footer-cta:hover{
  transform:translateY(-2px);
  border-color:rgba(255,140,58,.48);
  background:linear-gradient(145deg,rgba(255,140,58,.12),rgba(255,255,255,.035));
}
.mg-footer-cta-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:13px;
  color:var(--mg-orange);
  background:rgba(255,140,58,.12);
  border:1px solid rgba(255,140,58,.18);
}
.mg-footer-cta-icon .mg-icon{width:21px;height:21px}
.mg-footer-cta-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.mg-footer-cta-copy small{color:var(--mg-footer-muted);font-size:11px;font-weight:700}
.mg-footer-cta-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--mg-footer-text);font-size:13px;font-weight:800}
.mg-footer-cta-arrow{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:var(--mg-orange);background:rgba(255,255,255,.05)}
.mg-footer-cta-arrow .mg-icon{width:15px;height:15px}

.mg-footer-main-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.35fr .9fr .9fr 1.15fr;
  gap:42px;
  padding:46px 0 38px;
}
.mg-footer-about{min-width:0}
.mg-footer-brand-v2{display:inline-flex;align-items:center;gap:12px;color:var(--mg-footer-text)}
.mg-footer-mark{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:16px;
  border:2px solid var(--mg-orange);
  color:var(--mg-orange);
  background:rgba(255,140,58,.07);
  font-size:16px;
  font-weight:900;
}
.mg-footer-custom-logo .custom-logo-link{display:block}
.mg-footer-custom-logo .custom-logo{max-width:150px;max-height:58px;width:auto;height:auto}
.mg-footer-brand-copy{display:flex;flex-direction:column;gap:2px}
.mg-footer-brand-copy strong{color:var(--mg-footer-text);font-size:24px;line-height:1.15;font-weight:900}
.mg-footer-brand-copy small{color:var(--mg-orange);font-size:11px;font-weight:700}
.mg-footer-description{max-width:430px;margin:17px 0 0!important;color:var(--mg-footer-muted)!important;font-size:13px!important;line-height:1.9}
.mg-footer-socials-v2{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:19px}
.mg-footer-socials-v2 a{
  width:39px;
  height:39px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:var(--mg-footer-muted);
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.035);
  transition:transform .2s,color .2s,border-color .2s,background .2s;
}
.mg-footer-socials-v2 a:hover{transform:translateY(-2px);color:#141414;border-color:var(--mg-orange);background:var(--mg-orange)}
.mg-footer-socials-v2 .mg-icon{width:18px;height:18px}

.mg-footer-column h2{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0 0 17px;
  padding:0 0 12px;
  color:var(--mg-footer-text);
  border-bottom:1px solid rgba(255,255,255,.085);
  font-size:15px;
  font-weight:900;
}
.mg-footer-column h2>.mg-icon{
  width:30px;
  height:30px;
  padding:7px;
  border-radius:9px;
  color:var(--mg-orange);
  background:rgba(255,140,58,.1);
}
.mg-footer-link-list{display:grid;gap:4px!important;list-style:none;margin:0!important;padding:0!important}
.mg-footer-link-list li{margin:0!important}
.mg-footer-link-list a{
  min-height:35px;
  display:flex!important;
  align-items:center;
  gap:9px!important;
  padding:6px 8px;
  border-radius:9px;
  color:var(--mg-footer-muted)!important;
  transition:color .18s,background .18s,transform .18s;
}
.mg-footer-link-list a:hover{transform:translateX(-3px);color:var(--mg-footer-text)!important;background:rgba(255,255,255,.04)}
.mg-footer-link-list a>span{width:22px;height:22px;display:grid;place-items:center;color:var(--mg-orange)}
.mg-footer-link-list a .mg-icon{width:14px!important;height:14px!important;color:inherit!important}
.mg-footer-link-list a strong{font-size:12.5px;font-weight:700}

.mg-footer-contact-column{min-width:0}
.mg-footer-detail{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:9px 0;
  border-bottom:1px solid rgba(255,255,255,.065);
}
.mg-footer-detail:last-child{border-bottom:0}
.mg-footer-detail>span{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;color:var(--mg-orange);background:rgba(255,140,58,.09)}
.mg-footer-detail>span .mg-icon{width:17px;height:17px}
.mg-footer-detail>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.mg-footer-detail small{color:var(--mg-footer-muted);font-size:10.5px;font-weight:700}
.mg-footer-detail strong,.mg-footer-detail a{overflow-wrap:anywhere;color:var(--mg-footer-text);font-size:12.5px;font-weight:800}
.mg-footer-detail a:hover{color:var(--mg-orange)}

.mg-footer-bottom-v2{position:relative;z-index:2;border-top:1px solid rgba(255,255,255,.075);background:rgba(0,0,0,.13)}
.mg-footer-bottom-v2 .mg-container{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.mg-footer-bottom-v2 p{margin:0;color:var(--mg-footer-muted);font-size:11.5px}
.mg-footer-legal{display:flex;align-items:center;flex-wrap:wrap;gap:17px}
.mg-footer-legal a{position:relative;color:var(--mg-footer-muted);font-size:11.5px;font-weight:700}
.mg-footer-legal a:hover{color:var(--mg-orange)}
.mg-footer-legal a:not(:last-child)::after{content:"";position:absolute;inset-inline-end:-9px;top:50%;width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.28)}

@media(max-width:1050px){
  .mg-footer-main-grid{grid-template-columns:1.3fr 1fr 1fr;gap:32px}
  .mg-footer-contact-column{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
  .mg-footer-contact-column h2{grid-column:1/-1}
}
@media(max-width:760px){
  .mg-footer-cta-grid{grid-template-columns:1fr;padding-top:22px}
  .mg-footer-main-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;padding-top:36px}
  .mg-footer-about{grid-column:1/-1}
  .mg-footer-contact-column{grid-column:1/-1;grid-template-columns:1fr}
  .mg-footer-bottom-v2 .mg-container{align-items:flex-start;flex-direction:column;padding-top:17px;padding-bottom:17px}
}
@media(max-width:520px){
  .mg-footer-main-grid{grid-template-columns:1fr;gap:27px}
  .mg-footer-about,.mg-footer-contact-column{grid-column:auto}
  .mg-footer-cta{grid-template-columns:42px minmax(0,1fr);min-height:72px}
  .mg-footer-cta-arrow{display:none}
  .mg-footer-brand-copy strong{font-size:22px}
  .mg-footer-legal{gap:12px}
  .mg-footer-legal a:not(:last-child)::after{display:none}
}


/* ==========================================
   Migrago Magazine & Smart Reader — v3.7
========================================== */

.mg-magazine,
.mg-reader{
  background:#fff;
}

/* Magazine header */
.mg-mag-hero{
  padding:70px 0 34px;
  background:
    radial-gradient(circle at 12% 0,rgba(255,140,58,.16),transparent 30%),
    linear-gradient(135deg,#090c12,#151b27);
  color:#fff;
}
.mg-mag-hero-copy{
  max-width:820px;
}
.mg-mag-hero-copy>span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#ffb176;
  font-size:12px;
  font-weight:800;
}
.mg-mag-hero-copy h1{
  margin:8px 0 6px;
  font-size:clamp(36px,4vw,58px);
  line-height:1.25;
}
.mg-mag-hero-copy p{
  max-width:680px;
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:15px;
}
.mg-mag-search{
  max-width:760px;
  min-height:58px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:10px;
  margin-top:25px;
  padding:6px 7px 6px 15px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(12px);
}
.mg-mag-search>.mg-icon{
  color:#ffad70;
}
.mg-mag-search input{
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  color:#fff;
  font-family:inherit;
  font-size:14px;
}
.mg-mag-search input::placeholder{
  color:rgba(255,255,255,.54);
}
.mg-mag-search button{
  min-height:44px;
  border:0;
  border-radius:11px;
  background:var(--mg-orange);
  color:#171717;
  padding:0 22px;
  font-weight:900;
}
.mg-mag-category-nav{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:22px;
  overflow-x:auto;
  padding-bottom:2px;
  scrollbar-width:none;
}
.mg-mag-category-nav::-webkit-scrollbar{display:none}
.mg-mag-category-nav a{
  min-width:max-content;
  min-height:37px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:7px 14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.74);
  font-size:12px;
  font-weight:800;
}
.mg-mag-category-nav a:hover,
.mg-mag-category-nav a.is-active{
  border-color:rgba(255,140,58,.54);
  background:rgba(255,140,58,.16);
  color:#fff;
}

/* Section heading */
.mg-mag-section-title{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:20px;
}
.mg-mag-section-title>span{
  width:45px;
  height:45px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:#fff1e5;
  color:var(--mg-orange-dark);
}
.mg-mag-section-title small{
  display:block;
  color:var(--mg-orange-dark);
  font-size:11px;
  font-weight:800;
}
.mg-mag-section-title h2{
  margin:1px 0 0;
  font-size:25px;
}
.mg-mag-featured-section{
  padding:48px 0;
  background:#fff;
}

/* Featured magazine layout */
.mg-mag-featured-grid{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(310px,.72fr);
  gap:18px;
}
.mg-feature-main{
  min-width:0;
}
.mg-feature-main-image{
  position:relative;
  display:block;
  height:520px;
  border-radius:22px;
  overflow:hidden;
  background:#111;
}
.mg-feature-main-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s;
}
.mg-feature-main:hover img{
  transform:scale(1.025);
}
.mg-feature-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,rgba(4,6,10,.93),rgba(4,6,10,.03) 72%);
}
.mg-feature-category{
  position:absolute;
  top:18px;
  right:18px;
  z-index:2;
  padding:6px 11px;
  border-radius:999px;
  background:var(--mg-orange);
  color:#181818;
  font-size:11px;
  font-weight:900;
}
.mg-feature-main-copy{
  position:absolute;
  inset-inline:28px;
  bottom:27px;
  z-index:2;
  color:#fff;
}
.mg-feature-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:13px;
  margin-bottom:9px;
  color:rgba(255,255,255,.68);
  font-size:11px;
}
.mg-feature-meta span{
  display:inline-flex;
  align-items:center;
  gap:5px;
}
.mg-feature-main-copy h2{
  max-width:760px;
  margin:0 0 8px;
  font-size:clamp(26px,3vw,40px);
  line-height:1.35;
}
.mg-feature-main-copy p{
  max-width:690px;
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:13px;
}
.mg-feature-side{
  display:grid;
  gap:18px;
}

/* Magazine article cards */
.mg-mag-card{
  min-width:0;
  background:#fff;
  border:1px solid #e6e9ee;
  border-radius:18px;
  overflow:hidden;
  transition:transform .22s,border-color .22s;
}
.mg-mag-card:hover{
  transform:translateY(-3px);
  border-color:#ffd4b3;
}
.mg-mag-card-image{
  position:relative;
  display:block;
  height:218px;
  overflow:hidden;
  background:#e9ebee;
}
.mg-mag-card-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s;
}
.mg-mag-card:hover .mg-mag-card-image img{
  transform:scale(1.04);
}
.mg-mag-card-category{
  position:absolute;
  top:13px;
  right:13px;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(6,8,12,.76);
  color:#fff;
  font-size:10px;
  font-weight:800;
  backdrop-filter:blur(8px);
}
.mg-mag-card-body{
  padding:17px;
}
.mg-mag-card-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:9px;
  color:#7b818b;
  font-size:10.5px;
}
.mg-mag-card-meta span{
  display:inline-flex;
  align-items:center;
  gap:4px;
}
.mg-mag-card-meta .mg-icon{
  width:13px;
  height:13px;
  color:var(--mg-orange-dark);
}
.mg-mag-card h2{
  margin:0 0 7px;
  font-size:18px;
  line-height:1.55;
}
.mg-mag-card p{
  margin:0 0 13px;
  color:#727883;
  font-size:12.5px;
}
.mg-mag-card-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:var(--mg-orange-dark);
  font-size:12px;
  font-weight:900;
}
.mg-mag-card--compact{
  display:grid;
  grid-template-columns:145px 1fr;
  min-height:251px;
}
.mg-mag-card--compact .mg-mag-card-image{
  height:100%;
}
.mg-mag-card--compact .mg-mag-card-body{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.mg-mag-card--compact h2{
  font-size:16px;
}
.mg-mag-card--compact p{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Latest posts + sidebar */
.mg-mag-latest-section{
  padding-top:58px;
}
.mg-mag-section-title--latest{
  margin-bottom:23px;
}
.mg-mag-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 325px;
  gap:24px;
  align-items:start;
}
.mg-mag-layout--full{
  grid-template-columns:1fr;
}
.mg-mag-post-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.mg-mag-sidebar{
  position:sticky;
  top:20px;
  display:grid;
  gap:18px;
}
.mg-mag-widget{
  background:#fff;
  border:1px solid #e6e9ee;
  border-radius:18px;
  padding:17px;
}
.mg-mag-widget>header,
.mg-reader-widget>header{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:14px;
  padding-bottom:11px;
  border-bottom:1px solid #edf0f3;
}
.mg-mag-widget>header>span,
.mg-reader-widget>header>span{
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#fff1e5;
  color:var(--mg-orange-dark);
}
.mg-mag-widget h2,
.mg-reader-widget h2{
  margin:0;
  font-size:15px;
}
.mg-sidebar-posts{
  display:grid;
  gap:12px;
}
.mg-sidebar-post{
  display:grid;
  grid-template-columns:76px 1fr;
  align-items:center;
  gap:11px;
}
.mg-sidebar-post-image{
  height:64px;
  border-radius:11px;
  overflow:hidden;
  background:#e9ebee;
}
.mg-sidebar-post-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.mg-sidebar-post-copy strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:12.5px;
  line-height:1.5;
}
.mg-sidebar-post-copy small{
  color:#868c95;
  font-size:10.5px;
}
.mg-popular-list{
  list-style:none;
  margin:0;
  padding:0;
  counter-reset:item;
}
.mg-popular-list li{
  display:grid;
  grid-template-columns:38px 1fr;
  align-items:start;
  gap:10px;
  padding:10px 0;
  border-bottom:1px solid #edf0f3;
}
.mg-popular-list li:last-child{
  border-bottom:0;
}
.mg-popular-list li>span{
  color:#d7dbe0;
  font-size:24px;
  line-height:1;
  font-weight:900;
}
.mg-popular-list a strong{
  display:block;
  font-size:12.5px;
  line-height:1.5;
}
.mg-popular-list a small{
  color:#888e98;
  font-size:10px;
}
.mg-category-list{
  display:grid;
  gap:7px;
}
.mg-category-list a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:37px;
  padding:7px 10px;
  border-radius:9px;
  background:#f7f8fa;
  color:#4e545e;
  font-size:12px;
  font-weight:700;
}
.mg-category-list a strong{
  min-width:26px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:7px;
  background:#fff;
  color:var(--mg-orange-dark);
}
.mg-mag-socials{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.mg-mag-socials a{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid #e5e8ed;
  border-radius:11px;
  color:var(--mg-orange-dark);
  transition:.2s;
}
.mg-mag-socials a:hover{
  background:var(--mg-orange);
  border-color:var(--mg-orange);
  color:#171717;
}

/* Home magazine */
.mg-home-mag-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(360px,.75fr);
  gap:18px;
}
.mg-home-lead>a{
  position:relative;
  display:block;
  height:500px;
  border-radius:21px;
  overflow:hidden;
  background:#111;
}
.mg-home-lead img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.mg-home-lead>a>div{
  position:absolute;
  inset-inline:25px;
  bottom:24px;
  z-index:2;
  color:#fff;
}
.mg-home-lead small{
  color:rgba(255,255,255,.67);
}
.mg-home-lead h3{
  margin:6px 0;
  font-size:clamp(25px,2.7vw,37px);
}
.mg-home-lead p{
  max-width:650px;
  margin:0;
  color:rgba(255,255,255,.72);
}
.mg-home-mag-list{
  display:grid;
  gap:12px;
}
.mg-home-mag-item{
  display:grid;
  grid-template-columns:130px 1fr;
  align-items:center;
  gap:12px;
  min-height:113px;
  padding:8px;
  border:1px solid #e6e9ee;
  border-radius:15px;
  background:#fff;
}
.mg-home-mag-thumb{
  height:96px;
  border-radius:11px;
  overflow:hidden;
}
.mg-home-mag-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.mg-home-mag-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
}
.mg-home-mag-copy small{
  color:var(--mg-orange-dark);
  font-size:10px;
  font-style:normal;
  font-weight:800;
}
.mg-home-mag-copy strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:4px 0;
  font-size:13px;
  line-height:1.5;
}
.mg-home-mag-copy em{
  color:#868c95;
  font-size:10.5px;
  font-style:normal;
}

/* Smart article reader */
.mg-reading-progress{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:9999;
  height:3px;
  background:transparent;
}
.mg-reading-progress span{
  display:block;
  width:0;
  height:100%;
  background:var(--mg-orange);
}
.mg-reader-head{
  padding:62px 0 70px;
  background:
    radial-gradient(circle at 15% 0,rgba(255,140,58,.13),transparent 32%),
    linear-gradient(135deg,#090c12,#151b27);
  color:#fff;
}
.mg-reader-head-inner{
  max-width:1050px;
}
.mg-breadcrumb{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:24px;
  color:rgba(255,255,255,.52);
  font-size:11px;
}
.mg-breadcrumb strong{
  color:#ffb176;
}
.mg-reader-kicker{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#ffb176;
  font-size:12px;
  font-weight:800;
}
.mg-reader-head h1{
  max-width:980px;
  margin:10px 0 12px;
  font-size:clamp(36px,4.4vw,62px);
  line-height:1.3;
}
.mg-reader-excerpt{
  max-width:800px;
  margin:0;
  color:rgba(255,255,255,.69);
  font-size:15px;
}
.mg-reader-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:14px;
  margin-top:21px;
  color:rgba(255,255,255,.62);
  font-size:11px;
}
.mg-reader-meta span{
  display:inline-flex;
  align-items:center;
  gap:5px;
}
.mg-reader-body{
  padding:0 0 70px;
  background:#f7f8fa;
}
.mg-reader-cover{
  position:relative;
  z-index:2;
  max-width:1180px;
  height:590px;
  margin:-38px auto 26px;
  border:7px solid #fff;
  border-radius:24px;
  overflow:hidden;
  background:#e9ebee;
}
.mg-reader-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.mg-reader-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:24px;
  align-items:start;
}
.mg-reader-article{
  min-width:0;
}
.mg-reader-sidebar{
  position:sticky;
  top:20px;
  display:grid;
  gap:17px;
}
.mg-reader-widget{
  background:#fff;
  border:1px solid #e6e9ee;
  border-radius:18px;
  padding:17px;
}
.mg-toc-widget header{
  position:relative;
}
.mg-toc-toggle{
  margin-inline-start:auto;
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:8px;
  background:#f5f6f8;
  color:#646a74;
}
.mg-auto-toc{
  display:grid;
  gap:3px;
  max-height:360px;
  overflow:auto;
}
.mg-auto-toc a{
  display:block;
  padding:8px 10px;
  border-inline-start:2px solid transparent;
  color:#616771;
  font-size:11.5px;
  line-height:1.5;
}
.mg-auto-toc a[data-level="h3"]{
  padding-inline-start:21px;
  font-size:11px;
}
.mg-auto-toc a:hover,
.mg-auto-toc a.is-active{
  border-color:var(--mg-orange);
  background:#fff7f1;
  color:#22272f;
}
.mg-toc-widget.is-collapsed .mg-auto-toc{
  display:none;
}
.mg-reader-info{
  margin:0;
}
.mg-reader-info>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  padding:9px 0;
  border-bottom:1px solid #edf0f3;
}
.mg-reader-info>div:last-child{
  border-bottom:0;
}
.mg-reader-info dt{
  color:#7b818b;
  font-size:11px;
}
.mg-reader-info dd{
  margin:0;
  font-size:11.5px;
  font-weight:800;
}
.mg-reader-mini-posts{
  display:grid;
  gap:11px;
}
.mg-reader-mini-posts>a{
  display:grid;
  grid-template-columns:70px 1fr;
  gap:10px;
  align-items:center;
}
.mg-reader-mini-posts>a>span{
  height:58px;
  border-radius:10px;
  overflow:hidden;
}
.mg-reader-mini-posts img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.mg-reader-mini-posts strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:11.5px;
  line-height:1.45;
}
.mg-reader-mini-posts small{
  color:#8a9099;
  font-size:10px;
}
.mg-reader .mg-content-card{
  border-radius:20px;
  box-shadow:none;
}
.mg-reader .mg-prose{
  font-size:17px;
  line-height:1.95;
}
.mg-reader .mg-prose>p:first-of-type{
  font-size:18px;
  color:#333842;
}
.mg-reader .mg-prose h2{
  margin-top:1.75em;
  font-size:27px;
  scroll-margin-top:30px;
}
.mg-reader .mg-prose h3{
  margin-top:1.45em;
  font-size:21px;
  scroll-margin-top:30px;
}

/* Dynamic service CTA */
.mg-smart-service{
  display:grid;
  gap:12px;
  border:1px solid #ffd7b8;
  border-radius:18px;
  background:linear-gradient(135deg,#fff8f2,#fff);
}
.mg-smart-service--sidebar{
  grid-template-columns:43px 1fr;
  padding:16px;
}
.mg-smart-service--inline{
  grid-template-columns:54px 1fr;
  margin:28px 0;
  padding:20px;
}
.mg-smart-service-icon{
  width:43px;
  height:43px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:var(--mg-orange);
  color:#171717;
}
.mg-smart-service--inline .mg-smart-service-icon{
  width:54px;
  height:54px;
}
.mg-smart-service-copy small{
  color:var(--mg-orange-dark);
  font-size:10.5px;
  font-weight:900;
}
.mg-smart-service-copy h2{
  margin:3px 0 5px !important;
  font-size:16px !important;
}
.mg-smart-service--inline h2{
  font-size:20px !important;
}
.mg-smart-service-copy p{
  margin:0 0 12px !important;
  color:#6e747e;
  font-size:11.5px !important;
  line-height:1.65 !important;
}
.mg-smart-service-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.mg-smart-service-primary,
.mg-smart-service-secondary{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border-radius:10px;
  padding:7px 11px;
  font-size:11px;
  font-weight:900;
  text-decoration:none !important;
}
.mg-smart-service-primary{
  background:var(--mg-orange);
  color:#171717 !important;
}
.mg-smart-service-secondary{
  border:1px solid #e5e8ed;
  background:#fff;
  color:#333842 !important;
}

/* Share + navigation */
.mg-reader-share{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:18px;
  padding:15px 17px;
  border:1px solid #e6e9ee;
  border-radius:16px;
  background:#fff;
}
.mg-reader-share>div{
  display:flex;
  align-items:center;
  gap:8px;
}
.mg-reader-share nav{
  display:flex;
  gap:7px;
}
.mg-reader-share nav a,
.mg-reader-share nav button{
  width:37px;
  height:37px;
  display:grid;
  place-items:center;
  border:1px solid #e5e8ed;
  border-radius:10px;
  background:#fff;
  color:var(--mg-orange-dark);
}
.mg-reader-share nav button.is-copied{
  background:#eaf8e9;
  color:#258326;
}
.mg-post-navigation{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px;
  margin-top:18px;
}
.mg-post-navigation>div>a{
  min-height:88px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:14px;
  border:1px solid #e6e9ee;
  border-radius:15px;
  background:#fff;
}
.mg-post-navigation small{
  color:var(--mg-orange-dark);
  font-size:10px;
}
.mg-post-navigation strong{
  margin-top:4px;
  font-size:12px;
}
.mg-reader-related{
  margin-top:48px;
}
.mg-mag-post-grid--related{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

/* Pagination */
.mg-pagination ul{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:7px;
  list-style:none;
  margin:28px 0 0;
  padding:0;
}
.mg-pagination a,
.mg-pagination span{
  min-width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid #e2e5ea;
  border-radius:9px;
  background:#fff;
}
.mg-pagination .current{
  border-color:var(--mg-orange);
  background:var(--mg-orange);
  color:#171717;
  font-weight:900;
}

/* Responsive */
@media(max-width:1100px){
  .mg-mag-featured-grid{
    grid-template-columns:1fr;
  }
  .mg-feature-side{
    grid-template-columns:1fr 1fr;
  }
  .mg-mag-card--compact{
    min-height:230px;
  }
  .mg-mag-layout{
    grid-template-columns:minmax(0,1fr) 290px;
  }
  .mg-home-mag-grid{
    grid-template-columns:1fr;
  }
  .mg-home-mag-list{
    grid-template-columns:1fr 1fr;
  }
  .mg-reader-layout{
    grid-template-columns:minmax(0,1fr) 285px;
  }
}
@media(max-width:850px){
  .mg-mag-layout,
  .mg-reader-layout{
    grid-template-columns:1fr;
  }
  .mg-mag-sidebar,
  .mg-reader-sidebar{
    position:static;
  }
  .mg-mag-sidebar{
    grid-template-columns:1fr 1fr;
  }
  .mg-reader-sidebar{
    grid-template-columns:1fr 1fr;
  }
  .mg-smart-service--sidebar,
  .mg-toc-widget{
    grid-column:span 2;
  }
  .mg-reader-cover{
    height:430px;
  }
  .mg-mag-post-grid--related{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:620px){
  .mg-mag-hero{
    padding-top:52px;
  }
  .mg-mag-search{
    grid-template-columns:auto 1fr;
    padding:7px 12px;
  }
  .mg-mag-search button{
    grid-column:span 2;
  }
  .mg-feature-main-image{
    height:420px;
  }
  .mg-feature-main-copy{
    inset-inline:18px;
    bottom:18px;
  }
  .mg-feature-side{
    grid-template-columns:1fr;
  }
  .mg-mag-card--compact{
    grid-template-columns:120px 1fr;
    min-height:200px;
  }
  .mg-mag-post-grid,
  .mg-mag-post-grid--related,
  .mg-home-mag-list{
    grid-template-columns:1fr;
  }
  .mg-mag-sidebar,
  .mg-reader-sidebar{
    grid-template-columns:1fr;
  }
  .mg-smart-service--sidebar,
  .mg-toc-widget{
    grid-column:auto;
  }
  .mg-home-lead>a{
    height:420px;
  }
  .mg-reader-head{
    padding:46px 0 56px;
  }
  .mg-reader-head h1{
    font-size:34px;
  }
  .mg-reader-cover{
    height:285px;
    margin-top:-25px;
    border-width:5px;
    border-radius:18px;
  }
  .mg-reader .mg-prose{
    font-size:16px;
  }
  .mg-reader .mg-prose h2{
    font-size:24px;
  }
  .mg-smart-service--inline{
    grid-template-columns:1fr;
  }
  .mg-reader-share{
    align-items:flex-start;
    flex-direction:column;
  }
  .mg-post-navigation{
    grid-template-columns:1fr;
  }
}


/* ==========================================
   Reader image placement correction — v3.8
========================================== */

/* The reading section now starts normally; no floating image between sections. */
.mg-reader-body{
  padding:38px 0 70px;
}

/* Unified article card: image and content are one component. */
.mg-reader-article-card{
  overflow:hidden;
  border:1px solid #e6e9ee;
  border-radius:20px;
  background:#fff;
}

/* Featured image is now part of the article, not a separate page section. */
.mg-reader-inline-cover{
  position:relative;
  width:100%;
  height:480px;
  margin:0;
  overflow:hidden;
  border-bottom:1px solid #e8ebef;
  background:#eef0f3;
}
.mg-reader-inline-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Article text begins directly below the image. */
.mg-reader-content{
  padding:32px 36px 38px;
}

/* Remove the previous external-cover presentation completely. */
.mg-reader-cover{
  display:none !important;
}

/* The content card no longer needs a second nested border/card. */
.mg-reader .mg-reader-content{
  border:0;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}

/* Sidebar aligns with the top of the article card. */
.mg-reader-layout{
  align-items:start;
}

/* Cleaner opening paragraph after the featured image. */
.mg-reader-content>p:first-of-type{
  margin-top:0;
}

/* Image caption support. */
.mg-reader-inline-cover figcaption{
  position:absolute;
  right:14px;
  bottom:12px;
  max-width:calc(100% - 28px);
  padding:6px 9px;
  border-radius:8px;
  background:rgba(5,7,11,.68);
  color:#fff;
  font-size:10px;
  backdrop-filter:blur(7px);
}

@media(max-width:850px){
  .mg-reader-body{
    padding-top:26px;
  }
  .mg-reader-inline-cover{
    height:400px;
  }
  .mg-reader-content{
    padding:27px 28px 32px;
  }
}

@media(max-width:620px){
  .mg-reader-body{
    padding-top:18px;
  }
  .mg-reader-article-card{
    border-radius:16px;
  }
  .mg-reader-inline-cover{
    height:250px;
  }
  .mg-reader-content{
    padding:22px 18px 27px;
  }
}


/* ==========================================
   Static, legal and company pages — v3.9
========================================== */

.mg-static-page{
  background:#f7f8fa;
}

/* Header */
.mg-static-head{
  position:relative;
  overflow:hidden;
  padding:54px 0 62px;
  background:
    radial-gradient(circle at 12% 0,rgba(255,140,58,.15),transparent 31%),
    linear-gradient(135deg,#090c12,#151b27);
  color:#fff;
}
.mg-static-head::after{
  content:"";
  position:absolute;
  left:-80px;
  bottom:-180px;
  width:420px;
  height:420px;
  border:1px solid rgba(255,255,255,.04);
  border-radius:50%;
}
.mg-static-head .mg-breadcrumb{
  margin-bottom:28px;
}
.mg-static-head-grid{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
}
.mg-static-head-copy{
  max-width:850px;
}
.mg-static-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#ffb176;
  font-size:12px;
  font-weight:900;
}
.mg-static-kicker .mg-icon{
  width:18px;
  height:18px;
}
.mg-static-head h1{
  margin:9px 0 9px;
  font-size:clamp(36px,4vw,58px);
  line-height:1.28;
}
.mg-static-head-copy>p{
  max-width:740px;
  margin:0;
  color:rgba(255,255,255,.68);
  font-size:15px;
}
.mg-static-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
  color:rgba(255,255,255,.55);
  font-size:11px;
}
.mg-static-meta span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.mg-static-head-actions button{
  min-height:43px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:11px;
  background:rgba(255,255,255,.07);
  color:#fff;
  padding:8px 14px;
  font-family:inherit;
  font-size:12px;
  font-weight:800;
  backdrop-filter:blur(10px);
}
.mg-static-head-actions button:hover{
  border-color:rgba(255,140,58,.5);
  background:rgba(255,140,58,.15);
}

/* Main layout */
.mg-static-body{
  padding:38px 0 70px;
}
.mg-static-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 315px;
  gap:24px;
  align-items:start;
}
.mg-static-layout--full{
  grid-template-columns:1fr;
}
.mg-static-article{
  min-width:0;
}
.mg-static-article-card{
  overflow:hidden;
  border:1px solid #e5e8ed;
  border-radius:20px;
  background:#fff;
}
.mg-static-cover{
  width:100%;
  height:420px;
  margin:0;
  overflow:hidden;
  border-bottom:1px solid #e6e9ee;
  background:#edf0f3;
}
.mg-static-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.mg-page-content{
  padding:35px 40px 42px;
  color:#292e36;
  font-size:16px;
  line-height:1.9;
}
.mg-page-content>p:first-child{
  margin-top:0;
  font-size:17px;
  color:#353a43;
}
.mg-page-content h2,
.mg-page-content h3{
  position:relative;
  scroll-margin-top:30px;
}
.mg-page-content h2{
  margin:1.75em 0 .65em;
  padding-inline-start:16px;
  font-size:26px;
  line-height:1.45;
}
.mg-page-content h2::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  top:.25em;
  width:4px;
  height:1.05em;
  border-radius:99px;
  background:var(--mg-orange);
}
.mg-page-content h3{
  margin:1.45em 0 .55em;
  font-size:20px;
}
.mg-page-content ul,
.mg-page-content ol{
  padding-inline-start:24px;
}
.mg-page-content li{
  margin:.4em 0;
}
.mg-page-content a{
  color:var(--mg-orange-dark);
  text-decoration:underline;
  text-underline-offset:3px;
}
.mg-page-content blockquote{
  display:grid;
  grid-template-columns:4px 1fr;
  gap:16px;
  margin:25px 0;
  padding:18px 20px;
  border:0;
  border-radius:14px;
  background:#fff7f1;
}
.mg-page-content blockquote::before{
  content:"";
  border-radius:99px;
  background:var(--mg-orange);
}
.mg-page-content table{
  width:100%;
  margin:24px 0;
  border-collapse:separate;
  border-spacing:0;
  border:1px solid #e4e7ec;
  border-radius:13px;
  overflow:hidden;
  font-size:13px;
}
.mg-page-content th,
.mg-page-content td{
  padding:12px 14px;
  border-bottom:1px solid #e8ebef;
  text-align:start;
}
.mg-page-content th{
  background:#f7f8fa;
  font-weight:900;
}
.mg-page-content tr:last-child td{
  border-bottom:0;
}
.mg-page-content hr{
  height:1px;
  margin:32px 0;
  border:0;
  background:#e8ebef;
}
.mg-page-content .wp-block-button__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border-radius:11px;
  background:var(--mg-orange);
  color:#171717;
  padding:8px 16px;
  font-weight:900;
  text-decoration:none;
}

/* Legal presentation */
.mg-static-page--legal .mg-static-head{
  background:
    radial-gradient(circle at 14% 0,rgba(255,140,58,.12),transparent 30%),
    linear-gradient(135deg,#0a0d13,#171b24);
}
.mg-static-page--legal .mg-page-content h2{
  font-size:24px;
}
.mg-legal-note{
  display:flex;
  align-items:flex-start;
  gap:11px;
  margin:0 40px 36px;
  padding:16px 17px;
  border:1px solid #ffe0c8;
  border-radius:13px;
  background:#fff8f2;
  color:#5c493b;
}
.mg-legal-note .mg-icon{
  flex:0 0 auto;
  color:var(--mg-orange-dark);
}
.mg-legal-note p{
  margin:0;
  font-size:12px;
  line-height:1.7;
}

/* Support and company accents */
.mg-static-page--support .mg-static-kicker{
  color:#8cc9ff;
}
.mg-static-page--support .mg-page-content h2::before{
  background:#2e91e8;
}
.mg-static-page--company .mg-static-head{
  background:
    radial-gradient(circle at 12% 0,rgba(255,140,58,.18),transparent 31%),
    linear-gradient(135deg,#090c12,#202631);
}

/* Sidebar */
.mg-page-sidebar{
  position:sticky;
  top:20px;
  display:grid;
  gap:17px;
}
.mg-page-widget{
  padding:17px;
  border:1px solid #e5e8ed;
  border-radius:18px;
  background:#fff;
}
.mg-page-widget>header{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:14px;
  padding-bottom:11px;
  border-bottom:1px solid #edf0f3;
}
.mg-page-widget>header>span{
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#fff1e5;
  color:var(--mg-orange-dark);
}
.mg-page-widget h2{
  margin:0;
  font-size:15px;
}
.mg-page-widget .mg-toc-toggle{
  margin-inline-start:auto;
}
.mg-page-info-list{
  margin:0;
}
.mg-page-info-list>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 0;
  border-bottom:1px solid #edf0f3;
}
.mg-page-info-list>div:last-child{
  border-bottom:0;
}
.mg-page-info-list dt{
  color:#7d838d;
  font-size:11px;
}
.mg-page-info-list dd{
  margin:0;
  font-size:11.5px;
  font-weight:900;
}
.mg-page-important-links{
  display:grid;
  gap:7px;
}
.mg-page-important-links a{
  min-height:41px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  border-radius:10px;
  background:#f7f8fa;
  color:#4e545e;
  font-size:12px;
  font-weight:800;
}
.mg-page-important-links a>span{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.mg-page-important-links a>span .mg-icon{
  color:var(--mg-orange-dark);
}
.mg-page-important-links a>.mg-icon{
  width:14px;
  height:14px;
}
.mg-page-important-links a:hover{
  background:#fff2e7;
  color:#2a2f37;
}
.mg-page-support-card{
  padding:20px;
  border:1px solid #ffd7b8;
  border-radius:18px;
  background:linear-gradient(135deg,#fff7f0,#fff);
}
.mg-page-support-card>span{
  width:43px;
  height:43px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:var(--mg-orange);
  color:#171717;
}
.mg-page-support-card h2{
  margin:13px 0 5px;
  font-size:17px;
}
.mg-page-support-card p{
  margin:0 0 14px;
  color:#6e747e;
  font-size:11.5px;
  line-height:1.7;
}
.mg-page-support-card a{
  min-height:39px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  border-radius:10px;
  background:var(--mg-orange);
  color:#171717;
  padding:7px 12px;
  font-size:11.5px;
  font-weight:900;
}
.mg-page-empty{
  padding:45px 20px;
  text-align:center;
}
.mg-page-empty>.mg-icon{
  width:42px;
  height:42px;
  color:var(--mg-orange-dark);
}
.mg-page-empty h2{
  padding:0;
}
.mg-page-empty h2::before{
  display:none;
}

/* Print */
@media print{
  .mg-topbar,
  .mg-footer,
  .mg-static-head-actions,
  .mg-page-sidebar{
    display:none !important;
  }
  .mg-static-head{
    padding:20px 0;
    background:#fff !important;
    color:#000;
  }
  .mg-static-head-copy>p,
  .mg-static-meta{
    color:#444;
  }
  .mg-static-body{
    padding:0;
    background:#fff;
  }
  .mg-static-layout{
    display:block;
  }
  .mg-static-article-card{
    border:0;
  }
  .mg-page-content{
    padding:20px 0;
  }
}

/* Responsive */
@media(max-width:950px){
  .mg-static-layout{
    grid-template-columns:minmax(0,1fr) 280px;
  }
  .mg-page-content{
    padding:30px 31px 36px;
  }
}
@media(max-width:800px){
  .mg-static-head-grid{
    align-items:flex-start;
    flex-direction:column;
  }
  .mg-static-layout{
    grid-template-columns:1fr;
  }
  .mg-page-sidebar{
    position:static;
    grid-template-columns:1fr 1fr;
  }
  .mg-page-sidebar .mg-toc-widget,
  .mg-page-support-card{
    grid-column:span 2;
  }
  .mg-static-cover{
    height:350px;
  }
}
@media(max-width:580px){
  .mg-static-head{
    padding:43px 0 48px;
  }
  .mg-static-head h1{
    font-size:34px;
  }
  .mg-static-head-copy>p{
    font-size:13.5px;
  }
  .mg-static-body{
    padding:18px 0 52px;
  }
  .mg-static-article-card{
    border-radius:16px;
  }
  .mg-static-cover{
    height:240px;
  }
  .mg-page-content{
    padding:23px 18px 28px;
    font-size:15px;
  }
  .mg-page-content h2{
    font-size:22px;
  }
  .mg-page-content table{
    display:block;
    overflow-x:auto;
    white-space:nowrap;
  }
  .mg-legal-note{
    margin:0 18px 24px;
  }
  .mg-page-sidebar{
    grid-template-columns:1fr;
  }
  .mg-page-sidebar .mg-toc-widget,
  .mg-page-support-card{
    grid-column:auto;
  }
}


/* ==========================================
   Migrago Contact & Partnerships — v4.0
========================================== */

.mg-contact-page{background:#f7f8fa}
.mg-contact-hero{
  padding:72px 0 78px;
  background:
    radial-gradient(circle at 10% 0,rgba(255,140,58,.19),transparent 31%),
    radial-gradient(circle at 92% 20%,rgba(60,116,255,.10),transparent 25%),
    linear-gradient(135deg,#080b11,#151b27);
  color:#fff;
}
.mg-contact-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);
  gap:35px;
  align-items:center;
}
.mg-contact-hero-copy>span,
.mg-contact-network-grid>div>span{
  display:inline-flex;align-items:center;gap:8px;color:#ffb176;font-size:12px;font-weight:900
}
.mg-contact-hero-copy h1{max-width:820px;margin:10px 0 12px;font-size:clamp(39px,4.6vw,66px);line-height:1.22}
.mg-contact-hero-copy>p{max-width:760px;margin:0;color:rgba(255,255,255,.7);font-size:16px}
.mg-contact-quick{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.mg-contact-quick>a{
  min-height:55px;display:flex;align-items:center;gap:10px;padding:9px 14px;border:1px solid rgba(255,255,255,.13);
  border-radius:14px;background:rgba(255,255,255,.06);backdrop-filter:blur(10px)
}
.mg-contact-quick>a>.mg-icon{width:22px;height:22px;color:#ffad70}
.mg-contact-quick span{display:flex;flex-direction:column}
.mg-contact-quick small{color:rgba(255,255,255,.54);font-size:10px}
.mg-contact-quick strong{font-size:12px}
.mg-contact-hero-panel{
  padding:25px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.065);backdrop-filter:blur(13px)
}
.mg-contact-hero-panel>span{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:var(--mg-orange);color:#171717}
.mg-contact-hero-panel>span .mg-icon{width:27px;height:27px}
.mg-contact-hero-panel h2{margin:16px 0 12px;font-size:21px}
.mg-contact-hero-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mg-contact-hero-panel li{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.72);font-size:12px}
.mg-contact-hero-panel li .mg-icon{color:#72d57a}

.mg-contact-topics{padding:58px 0 32px;background:#fff}
.mg-contact-section-head{max-width:760px;margin-bottom:24px}
.mg-contact-section-head>span{color:var(--mg-orange-dark);font-size:11px;font-weight:900}
.mg-contact-section-head h2{margin:4px 0;font-size:clamp(27px,3vw,40px)}
.mg-contact-section-head p{margin:0;color:#707680}
.mg-contact-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mg-contact-topic{
  min-height:182px;text-align:start;padding:18px;border:1px solid #e5e8ed;border-radius:17px;background:#fff;color:#242a32;transition:.2s
}
.mg-contact-topic>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff1e5;color:var(--mg-orange-dark)}
.mg-contact-topic strong{display:block;margin:13px 0 5px;font-size:15px}
.mg-contact-topic p{margin:0;color:#767c86;font-size:11.5px;line-height:1.65}
.mg-contact-topic:hover,.mg-contact-topic.is-active{transform:translateY(-2px);border-color:#ffca9f;background:#fffaf6}
.mg-contact-topic.is-active>span{background:var(--mg-orange);color:#171717}

.mg-contact-main{padding:38px 0 70px}
.mg-contact-main-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.mg-contact-form-card{padding:24px;border:1px solid #e5e8ed;border-radius:21px;background:#fff}
.mg-contact-form-card>header{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.mg-contact-form-card>header>span{width:45px;height:45px;display:grid;place-items:center;border-radius:13px;background:#fff1e5;color:var(--mg-orange-dark)}
.mg-contact-form-card>header small{color:var(--mg-orange-dark);font-weight:900}
.mg-contact-form-card>header h2{margin:1px 0 0;font-size:23px}
.mg-contact-fields{display:grid;gap:13px}
.mg-contact-fields--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mg-contact-fields--3{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:13px}
.mg-contact-fields label{min-width:0;display:flex;flex-direction:column;gap:6px}
.mg-contact-fields label>span{color:#5d636d;font-size:11px;font-weight:800}
.mg-contact-fields input,.mg-contact-fields select,.mg-contact-fields textarea{
  width:100%;min-width:0;border:1px solid #e3e6eb;border-radius:11px;background:#fafbfc;color:#222831;padding:10px 12px;font-family:inherit;font-size:13px;outline:0
}
.mg-contact-fields input,.mg-contact-fields select{height:46px}
.mg-contact-fields textarea{resize:vertical;line-height:1.65}
.mg-contact-fields input:focus,.mg-contact-fields select:focus,.mg-contact-fields textarea:focus{
  border-color:rgba(255,140,58,.8);background:#fff;box-shadow:0 0 0 4px rgba(255,140,58,.08)
}
.mg-field-full{grid-column:1/-1}
.mg-dynamic-fields[hidden]{display:none!important}
.mg-upload-field{margin-top:4px;padding:14px;border:1px dashed #d9dde3;border-radius:12px;background:#fbfbfc}
.mg-upload-field>span{display:flex!important;align-items:center;gap:7px}
.mg-upload-field input{height:auto;padding:7px;background:#fff}
.mg-upload-field small{color:#858b95;font-size:10px}
.mg-contact-consent{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:9px!important;margin-top:5px}
.mg-contact-consent input{width:17px;height:17px;flex:0 0 auto;margin-top:2px;accent-color:var(--mg-orange)}
.mg-contact-submit{
  min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:17px;border:0;border-radius:12px;
  background:linear-gradient(135deg,#ffa35d,var(--mg-orange));color:#171717;padding:0 24px;font-family:inherit;font-weight:900
}
.mg-contact-submit:hover{filter:brightness(.98);transform:translateY(-1px)}
.mg-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.mg-contact-notice{display:flex;align-items:flex-start;gap:11px;margin-bottom:18px;padding:15px;border-radius:13px}
.mg-contact-notice--success{border:1px solid #cde9ce;background:#f2fbf2;color:#275f2a}
.mg-contact-notice--error{border:1px solid #f1c9c9;background:#fff5f5;color:#7e2828}
.mg-contact-notice h2{margin:0 0 3px;font-size:16px}.mg-contact-notice p{margin:0;font-size:12px}

.mg-contact-side{position:sticky;top:20px;overflow:hidden;border:1px solid #e5e8ed;border-radius:20px;background:#fff}
.mg-contact-side>section{padding:22px;background:linear-gradient(135deg,#121722,#222a37);color:#fff}
.mg-contact-side>section>span{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;background:var(--mg-orange);color:#171717}
.mg-contact-side h2{margin:14px 0 6px;font-size:18px}
.mg-contact-side p{margin:0;color:rgba(255,255,255,.66);font-size:11.5px}
.mg-contact-side dl{margin:0;padding:6px 19px}
.mg-contact-side dl>div{padding:13px 0;border-bottom:1px solid #edf0f3}
.mg-contact-side dt{color:#858b95;font-size:10.5px}
.mg-contact-side dd{margin:3px 0 0;font-size:12px;font-weight:800}
.mg-contact-whatsapp{display:flex;align-items:center;justify-content:center;gap:7px;margin:14px 18px 18px;min-height:43px;border-radius:11px;background:#e9f8eb;color:#207329;font-size:12px;font-weight:900}

.mg-contact-network{padding:55px 0;background:linear-gradient(135deg,#090c12,#1b2230);color:#fff}
.mg-contact-network-grid{display:flex;align-items:center;justify-content:space-between;gap:25px}
.mg-contact-network h2{max-width:760px;margin:7px 0;font-size:clamp(29px,3.4vw,45px)}
.mg-contact-network p{max-width:780px;margin:0;color:rgba(255,255,255,.67)}
.mg-contact-network button{min-height:49px;display:inline-flex;align-items:center;gap:8px;border:0;border-radius:12px;background:var(--mg-orange);color:#171717;padding:0 18px;font-family:inherit;font-weight:900;white-space:nowrap}

.mg-contact-trust{padding:64px 0;background:#fff}
.mg-contact-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.mg-contact-trust-grid article{padding:20px;border:1px solid #e5e8ed;border-radius:17px;background:#fff}
.mg-contact-trust-grid article>.mg-icon{width:35px;height:35px;padding:8px;border-radius:10px;background:#fff1e5;color:var(--mg-orange-dark)}
.mg-contact-trust-grid h3{margin:12px 0 5px;font-size:16px}
.mg-contact-trust-grid p{margin:0;color:#747a84;font-size:11.5px}
@media(max-width:980px){
  .mg-contact-hero-grid,.mg-contact-main-grid{grid-template-columns:1fr}
  .mg-contact-side{position:static}
  .mg-contact-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .mg-contact-hero{padding:50px 0 56px}
  .mg-contact-hero-copy h1{font-size:38px}
  .mg-contact-quick{flex-direction:column}
  .mg-contact-topic-grid,.mg-contact-fields--2,.mg-contact-fields--3,.mg-contact-trust-grid{grid-template-columns:1fr}
  .mg-contact-form-card{padding:16px}
  .mg-contact-network-grid{align-items:flex-start;flex-direction:column}
  .mg-contact-network button,.mg-contact-submit{width:100%}
  .mg-field-full{grid-column:auto}
}


/* ==========================================
   Contact conversion flow — v4.1
========================================== */

.mg-ltr{
  direction:ltr;
  unicode-bidi:isolate;
  text-align:left;
  white-space:nowrap;
}
.mg-ltr bdi{direction:ltr;unicode-bidi:isolate}
[data-contact-intro-stage][hidden],
[data-contact-form-stage][hidden]{display:none!important}
.mg-contact-intro-stage,
.mg-contact-form-stage{animation:mgContactStageIn .28s ease both}
@keyframes mgContactStageIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.mg-contact-topic-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.mg-contact-topic{
  position:relative;
  min-height:220px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  overflow:hidden;
  padding:22px;
  border-radius:20px;
  background:
    radial-gradient(circle at 100% 0,rgba(255,140,58,.11),transparent 36%),
    #fff;
}
.mg-contact-topic::after{
  content:"";
  position:absolute;
  inset:auto -35px -55px auto;
  width:130px;
  height:130px;
  border:1px solid rgba(255,140,58,.12);
  border-radius:50%;
}
.mg-contact-topic>span{
  width:48px;
  height:48px;
  border-radius:14px;
}
.mg-contact-topic strong{
  margin-top:16px;
  font-size:16px;
}
.mg-contact-topic p{
  flex:1;
  font-size:12px;
}
.mg-contact-topic em{
  position:relative;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:15px;
  color:var(--mg-orange-dark);
  font-size:11px;
  font-style:normal;
  font-weight:900;
}
.mg-contact-topic em .mg-icon{width:14px;height:14px}
.mg-contact-topic:hover{
  transform:translateY(-5px);
  border-color:#ffc89b;
  background:
    radial-gradient(circle at 100% 0,rgba(255,140,58,.18),transparent 39%),
    #fffaf6;
}
.mg-contact-topic:hover>span{
  background:var(--mg-orange);
  color:#171717;
}

.mg-contact-form-stage{
  padding-top:34px;
  scroll-margin-top:15px;
}
.mg-contact-form-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:17px;
}
.mg-contact-back{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:1px solid #e1e5ea;
  border-radius:11px;
  background:#fff;
  color:#4f5660;
  padding:8px 13px;
  font-family:inherit;
  font-size:11.5px;
  font-weight:900;
}
.mg-contact-back:hover{
  border-color:#ffcda8;
  background:#fff7f1;
  color:#8e460f;
}
.mg-contact-selected-topic{
  min-width:0;
  display:flex;
  align-items:center;
  gap:11px;
  margin-inline-start:auto;
}
.mg-contact-selected-topic>span{
  width:43px;
  height:43px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#fff1e5;
  color:var(--mg-orange-dark);
}
.mg-contact-selected-topic div{min-width:0}
.mg-contact-selected-topic small{
  display:block;
  color:#8a9099;
  font-size:10px;
}
.mg-contact-selected-topic strong{
  display:block;
  font-size:14px;
}
.mg-contact-selected-topic p{
  max-width:520px;
  margin:2px 0 0;
  color:#777d87;
  font-size:10.5px;
}

.mg-contact-side>section{
  background:
    radial-gradient(circle at 100% 0,rgba(255,140,58,.16),transparent 38%),
    linear-gradient(135deg,#121722,#222a37);
}
.mg-contact-trust-grid article>.mg-icon{
  width:41px;
  height:41px;
}

@media(max-width:980px){
  .mg-contact-form-top{align-items:flex-start;flex-direction:column}
  .mg-contact-selected-topic{margin-inline-start:0}
}
@media(max-width:680px){
  .mg-contact-topic-grid{grid-template-columns:1fr}
  .mg-contact-topic{min-height:190px}
  .mg-contact-form-top{margin-bottom:14px}
  .mg-contact-selected-topic p{max-width:none}
}


/* ==========================================
   Migrago Help Center — v4.2
========================================== */

.mg-help-page,
.mg-help-article{background:#f7f8fa}
.mg-help-hero{
  padding:68px 0 72px;
  background:
    radial-gradient(circle at 12% 0,rgba(255,140,58,.18),transparent 31%),
    radial-gradient(circle at 88% 15%,rgba(69,121,255,.09),transparent 27%),
    linear-gradient(135deg,#080b11,#151b27);
  color:#fff;
}
.mg-help-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr);
  gap:34px;
  align-items:center;
}
.mg-help-hero-copy>span{
  display:inline-flex;align-items:center;gap:8px;color:#ffb176;font-size:12px;font-weight:900
}
.mg-help-hero-copy h1{
  max-width:850px;margin:9px 0 10px;font-size:clamp(39px,4.5vw,64px);line-height:1.23
}
.mg-help-hero-copy>p{max-width:720px;margin:0;color:rgba(255,255,255,.7);font-size:15px}
.mg-help-search{
  max-width:780px;min-height:61px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;
  margin-top:25px;padding:7px 8px 7px 16px;border:1px solid rgba(255,255,255,.15);border-radius:16px;
  background:rgba(255,255,255,.08);backdrop-filter:blur(12px)
}
.mg-help-search>.mg-icon{color:#ffad70}
.mg-help-search input{
  min-width:0;border:0;outline:0;background:transparent;color:#fff;font-family:inherit;font-size:14px
}
.mg-help-search input::placeholder{color:rgba(255,255,255,.52)}
.mg-help-search button{
  min-height:46px;border:0;border-radius:11px;background:var(--mg-orange);color:#171717;padding:0 24px;font-family:inherit;font-weight:900
}
.mg-help-quick-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}
.mg-help-quick-links a{
  padding:6px 11px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.72);font-size:10.5px;font-weight:800
}
.mg-help-quick-links a:hover{border-color:rgba(255,140,58,.5);color:#fff}
.mg-help-hero-panel{
  padding:24px;border:1px solid rgba(255,255,255,.12);border-radius:21px;background:rgba(255,255,255,.06);backdrop-filter:blur(12px)
}
.mg-help-hero-panel>span{
  width:50px;height:50px;display:grid;place-items:center;border-radius:14px;background:var(--mg-orange);color:#171717
}
.mg-help-hero-panel h2{margin:15px 0 6px;font-size:20px}
.mg-help-hero-panel>p{margin:0 0 15px;color:rgba(255,255,255,.67);font-size:11.5px}
.mg-help-hero-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.mg-help-hero-panel li{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.72);font-size:11.5px}
.mg-help-hero-panel li .mg-icon{color:#78d67f}

.mg-help-section-head{max-width:780px;margin-bottom:24px}
.mg-help-section-head>span{color:var(--mg-orange-dark);font-size:11px;font-weight:900}
.mg-help-section-head h2{margin:4px 0;font-size:clamp(27px,3vw,39px)}
.mg-help-section-head p{margin:0;color:#747a84}
.mg-help-categories{padding:58px 0;background:#fff}
.mg-help-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.mg-help-category-card{
  position:relative;min-height:210px;display:flex;flex-direction:column;overflow:hidden;padding:21px;border:1px solid #e4e8ed;
  border-radius:19px;background:radial-gradient(circle at 100% 0,rgba(255,140,58,.11),transparent 37%),#fff;transition:.22s
}
.mg-help-category-card::after{
  content:"";position:absolute;right:-45px;bottom:-65px;width:150px;height:150px;border:1px solid rgba(255,140,58,.12);border-radius:50%
}
.mg-help-category-card>span{
  width:47px;height:47px;display:grid;place-items:center;border-radius:14px;background:#fff1e5;color:var(--mg-orange-dark)
}
.mg-help-category-card h3{position:relative;z-index:2;margin:15px 0 5px;font-size:17px}
.mg-help-category-card p{position:relative;z-index:2;flex:1;margin:0;color:#757b85;font-size:11.5px;line-height:1.7}
.mg-help-category-card em{
  position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;margin-top:15px;color:var(--mg-orange-dark);
  font-size:10.5px;font-style:normal;font-weight:900
}
.mg-help-category-card:hover{transform:translateY(-4px);border-color:#ffc99e;background:radial-gradient(circle at 100% 0,rgba(255,140,58,.18),transparent 40%),#fffaf6}
.mg-help-category-card:hover>span{background:var(--mg-orange);color:#171717}

.mg-help-popular{padding:62px 0;background:#f7f8fa}
.mg-help-popular-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.mg-help-popular-card>a{
  height:100%;display:flex;flex-direction:column;padding:19px;border:1px solid #e4e8ed;border-radius:17px;background:#fff;transition:.2s
}
.mg-help-popular-card>a>span{width:39px;height:39px;display:grid;place-items:center;border-radius:11px;background:#fff1e5;color:var(--mg-orange-dark)}
.mg-help-popular-card small{margin-top:12px;color:var(--mg-orange-dark);font-size:10px;font-weight:900}
.mg-help-popular-card h3{margin:4px 0 6px;font-size:15px;line-height:1.55}
.mg-help-popular-card p{flex:1;margin:0;color:#777d87;font-size:11.5px}
.mg-help-popular-card em{display:inline-flex;align-items:center;gap:6px;margin-top:13px;color:var(--mg-orange-dark);font-size:10.5px;font-style:normal;font-weight:900}
.mg-help-popular-card>a:hover{transform:translateY(-3px);border-color:#ffc99e}

.mg-help-results{padding:50px 0;background:#fff}
.mg-help-results-head{display:flex;align-items:end;justify-content:space-between;gap:20px;max-width:none}
.mg-help-results-head>a{display:inline-flex;align-items:center;gap:6px;color:var(--mg-orange-dark);font-size:11px;font-weight:900}
.mg-help-result-list{display:grid;gap:12px}
.mg-help-result-card{
  display:grid;grid-template-columns:48px minmax(0,1fr) 38px;align-items:center;gap:14px;padding:17px;border:1px solid #e4e8ed;border-radius:15px;background:#fff
}
.mg-help-result-card>span{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:#fff1e5;color:var(--mg-orange-dark)}
.mg-help-result-card small{color:var(--mg-orange-dark);font-size:10px;font-weight:900}
.mg-help-result-card h2{margin:2px 0 4px;font-size:16px}
.mg-help-result-card p{margin:0;color:#777d87;font-size:11.5px}
.mg-help-result-open{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#f7f8fa;color:#525963}
.mg-help-empty{padding:50px 20px;border:1px dashed #d9dde3;border-radius:17px;text-align:center;background:#fbfcfd}
.mg-help-empty>.mg-icon{width:40px;height:40px;color:var(--mg-orange-dark)}
.mg-help-empty h2{margin:12px 0 4px}.mg-help-empty p{margin:0;color:#777d87}
.mg-help-empty a{display:inline-flex;margin-top:15px;padding:9px 14px;border-radius:10px;background:var(--mg-orange);color:#171717;font-weight:900}

.mg-help-faq{padding:62px 0;background:#fff}
.mg-help-faq-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:34px;align-items:start}
.mg-help-faq-list{display:grid;gap:9px}
.mg-help-faq-list details{border:1px solid #e4e8ed;border-radius:14px;background:#fff;overflow:hidden}
.mg-help-faq-list summary{
  min-height:57px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;cursor:pointer;
  list-style:none;font-size:13px;font-weight:900
}
.mg-help-faq-list summary::-webkit-details-marker{display:none}
.mg-help-faq-list summary .mg-icon{transition:.2s}
.mg-help-faq-list details[open] summary .mg-icon{transform:rotate(-90deg);color:var(--mg-orange-dark)}
.mg-help-faq-list details>div{padding:0 16px 16px;border-top:1px solid #edf0f3}
.mg-help-faq-list p{margin:13px 0 9px;color:#6f7580;font-size:12px;line-height:1.75}
.mg-help-faq-list a{display:inline-flex;align-items:center;gap:5px;color:var(--mg-orange-dark);font-size:10.5px;font-weight:900}

.mg-help-contact{padding:0 0 65px;background:#fff}
.mg-help-contact-card{
  display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:17px;padding:24px;
  border:1px solid #ffd6b6;border-radius:20px;background:linear-gradient(135deg,#fff7f0,#fff)
}
.mg-help-contact-card>span{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;background:var(--mg-orange);color:#171717}
.mg-help-contact-card small{color:var(--mg-orange-dark);font-size:10px;font-weight:900}
.mg-help-contact-card h2{margin:2px 0 4px;font-size:21px}
.mg-help-contact-card p{margin:0;color:#707680;font-size:12px}
.mg-help-contact-card>a{min-height:44px;display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border-radius:11px;background:var(--mg-orange);color:#171717;font-size:11.5px;font-weight:900}

.mg-help-article-head{
  padding:54px 0 60px;background:radial-gradient(circle at 12% 0,rgba(255,140,58,.15),transparent 31%),linear-gradient(135deg,#080b11,#151b27);color:#fff
}
.mg-help-article-head .mg-breadcrumb{margin-bottom:25px}
.mg-help-article-kicker{display:inline-flex;align-items:center;gap:8px;color:#ffb176;font-size:11.5px;font-weight:900}
.mg-help-article-head h1{max-width:930px;margin:9px 0 10px;font-size:clamp(35px,4vw,55px);line-height:1.3}
.mg-help-article-head>div>p{max-width:790px;margin:0;color:rgba(255,255,255,.68);font-size:14px}
.mg-help-article-meta{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px;color:rgba(255,255,255,.55);font-size:10.5px}
.mg-help-article-meta span{display:inline-flex;align-items:center;gap:5px}
.mg-help-article-body{padding:38px 0 68px}
.mg-help-article-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}
.mg-help-article-card{overflow:hidden;border:1px solid #e4e8ed;border-radius:20px;background:#fff}
.mg-help-article-card>figure{height:430px;margin:0;overflow:hidden;border-bottom:1px solid #e7eaee}
.mg-help-article-card>figure img{width:100%;height:100%;object-fit:cover}
.mg-help-article-content{padding:34px 38px 40px;font-size:16px;line-height:1.9}
.mg-help-article-content h2{position:relative;padding-inline-start:15px;font-size:26px;scroll-margin-top:25px}
.mg-help-article-content h2::before{content:"";position:absolute;inset-inline-start:0;top:.25em;width:4px;height:1.05em;border-radius:99px;background:var(--mg-orange)}
.mg-help-article-sidebar{position:sticky;top:20px;display:grid;gap:17px}
.mg-help-related-list{display:grid;gap:5px}
.mg-help-related-list a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border-radius:9px;background:#f7f8fa}
.mg-help-related-list strong{font-size:11.5px;line-height:1.5}
.mg-help-sidebar-contact{padding:19px;border:1px solid #ffd6b6;border-radius:17px;background:linear-gradient(135deg,#fff7f0,#fff)}
.mg-help-sidebar-contact>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--mg-orange);color:#171717}
.mg-help-sidebar-contact h2{margin:13px 0 5px;font-size:16px}
.mg-help-sidebar-contact p{margin:0 0 13px;color:#707680;font-size:11px}
.mg-help-sidebar-contact a{display:inline-flex;padding:8px 11px;border-radius:9px;background:var(--mg-orange);color:#171717;font-size:10.5px;font-weight:900}
.mg-help-solved{
  display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:17px;padding:17px;border:1px solid #dce9dc;border-radius:15px;background:#f6fbf6
}
.mg-help-solved>div{display:flex;align-items:center;gap:11px}
.mg-help-solved>div>span{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:#e4f5e4;color:#34813a}
.mg-help-solved h2{margin:0;font-size:15px}.mg-help-solved p{margin:3px 0 0;color:#68716a;font-size:11px}
.mg-help-solved>a{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:9px;background:#2f8535;color:#fff;font-size:10.5px;font-weight:900;white-space:nowrap}

@media(max-width:980px){
  .mg-help-hero-grid,.mg-help-article-layout{grid-template-columns:1fr}
  .mg-help-article-sidebar{position:static;grid-template-columns:1fr 1fr}
  .mg-help-article-sidebar .mg-toc-widget{grid-column:span 2}
}
@media(max-width:800px){
  .mg-help-category-grid,.mg-help-popular-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mg-help-faq-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .mg-help-hero{padding:48px 0 54px}
  .mg-help-hero-copy h1{font-size:37px}
  .mg-help-search{grid-template-columns:auto 1fr;padding:8px 12px}
  .mg-help-search button{grid-column:span 2;width:100%}
  .mg-help-category-grid,.mg-help-popular-grid{grid-template-columns:1fr}
  .mg-help-result-card{grid-template-columns:42px minmax(0,1fr)}
  .mg-help-result-open{display:none}
  .mg-help-contact-card{grid-template-columns:46px 1fr}
  .mg-help-contact-card>a{grid-column:1/-1;justify-content:center}
  .mg-help-article-card>figure{height:250px}
  .mg-help-article-content{padding:24px 18px 29px;font-size:15px}
  .mg-help-article-content h2{font-size:22px}
  .mg-help-article-sidebar{grid-template-columns:1fr}
  .mg-help-article-sidebar .mg-toc-widget{grid-column:auto}
  .mg-help-solved{align-items:flex-start;flex-direction:column}
  .mg-help-solved>a{width:100%;justify-content:center}
}


/* ==========================================
   Migrago Footer refinement — v4.3
========================================== */

.mg-number-ltr,
.mg-number-ltr bdi{
  direction:ltr;
  unicode-bidi:isolate;
  text-align:left;
  white-space:nowrap;
}
.mg-footer-v3{
  background:
    radial-gradient(circle at 13% -5%,rgba(255,140,58,.15),transparent 31%),
    radial-gradient(circle at 91% 16%,rgba(84,132,255,.055),transparent 27%),
    linear-gradient(145deg,var(--mg-footer-bg),#07090e);
}
.mg-footer-v3::before{
  opacity:.72;
  background-size:48px 48px;
}
.mg-footer-v3 .mg-footer-accent{
  height:2px;
  background:linear-gradient(90deg,transparent 5%,var(--mg-orange) 30%,#ffc08f 50%,var(--mg-orange) 70%,transparent 95%);
}
.mg-footer-v3 .mg-footer-cta-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:11px;
  padding-top:28px;
}
.mg-footer-v3 .mg-footer-cta{
  min-height:82px;
  border-radius:16px;
  border-color:rgba(255,255,255,.09);
  background:linear-gradient(145deg,rgba(255,255,255,.066),rgba(255,255,255,.022));
  box-shadow:none;
}
.mg-footer-v3 .mg-footer-cta:hover{
  transform:translateY(-3px);
  border-color:rgba(255,140,58,.5);
  background:linear-gradient(145deg,rgba(255,140,58,.12),rgba(255,255,255,.025));
}
.mg-footer-v3 .mg-footer-cta.is-whatsapp{
  border-color:rgba(37,211,102,.25);
  background:linear-gradient(145deg,rgba(37,211,102,.12),rgba(255,255,255,.025));
}
.mg-footer-v3 .mg-footer-cta.is-whatsapp:hover{
  border-color:rgba(37,211,102,.6);
  background:linear-gradient(145deg,rgba(37,211,102,.2),rgba(255,255,255,.03));
}
.mg-footer-v3 .mg-footer-cta.is-whatsapp .mg-footer-cta-icon{
  color:#5ae487;
  border-color:rgba(37,211,102,.25);
  background:rgba(37,211,102,.11);
}
.mg-footer-v3 .mg-footer-cta.is-whatsapp .mg-footer-cta-arrow{
  color:#5ae487;
}
.mg-footer-v3 .mg-footer-cta-copy strong{
  font-size:12.5px;
}
.mg-footer-v3 .mg-footer-main-grid{
  grid-template-columns:1.32fr .88fr .88fr 1.16fr;
  gap:39px;
  padding:48px 0 42px;
}
.mg-footer-v3 .mg-footer-brand-v2{
  align-items:center;
}
.mg-footer-v3 .mg-footer-mark{
  border-radius:15px;
  background:linear-gradient(145deg,rgba(255,140,58,.16),rgba(255,140,58,.045));
}
.mg-footer-v3 .mg-footer-custom-logo img{
  display:block;
  max-width:155px;
  max-height:62px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.mg-footer-availability{
  width:max-content;
  max-width:100%;
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:17px;
  padding:7px 10px;
  border:1px solid rgba(89,220,119,.16);
  border-radius:999px;
  background:rgba(89,220,119,.07);
  color:#c8f4d1;
  font-size:10.5px;
  font-weight:800;
}
.mg-footer-availability i{
  width:7px;
  height:7px;
  flex:0 0 auto;
  border-radius:50%;
  background:#58dc77;
  box-shadow:0 0 0 4px rgba(88,220,119,.09);
}
.mg-footer-v3 .mg-footer-description{
  margin-top:14px!important;
  max-width:440px;
}
.mg-footer-social-block{
  margin-top:19px;
}
.mg-footer-social-block>strong{
  display:block;
  margin-bottom:9px;
  color:var(--mg-footer-text);
  font-size:11px;
}
.mg-footer-v3 .mg-footer-socials-v2{
  margin-top:0;
}
.mg-footer-v3 .mg-footer-socials-v2 a{
  position:relative;
  width:40px;
  height:40px;
  border-radius:11px;
}
.mg-footer-v3 .mg-footer-socials-v2 a.is-whatsapp{
  color:#63e78f;
  border-color:rgba(37,211,102,.23);
  background:rgba(37,211,102,.08);
}
.mg-footer-v3 .mg-footer-socials-v2 a.is-whatsapp:hover{
  color:#fff;
  border-color:#25d366;
  background:#25d366;
}
.mg-footer-v3 .mg-icon--whatsapp{
  stroke-width:1.75;
}
.mg-footer-v3 .mg-footer-column h2{
  margin-bottom:15px;
  padding-bottom:11px;
}
.mg-footer-v3 .mg-footer-link-list{
  gap:3px!important;
}
.mg-footer-v3 .mg-footer-link-list a{
  position:relative;
  min-height:37px;
  padding:6px 7px;
}
.mg-footer-v3 .mg-footer-link-list a>i{
  margin-inline-start:auto;
  opacity:0;
  color:var(--mg-orange);
  transform:translateX(5px);
  transition:.18s;
}
.mg-footer-v3 .mg-footer-link-list a>i .mg-icon{
  width:13px!important;
  height:13px!important;
}
.mg-footer-v3 .mg-footer-link-list a:hover{
  transform:none;
  padding-inline-start:11px;
}
.mg-footer-v3 .mg-footer-link-list a:hover>i{
  opacity:1;
  transform:none;
}
.mg-footer-v3 .mg-footer-detail{
  padding:9px 0;
}
.mg-footer-v3 .mg-footer-detail a.mg-number-ltr{
  display:inline-block;
  width:max-content;
  max-width:100%;
  overflow-wrap:normal;
}
.mg-footer-whatsapp-button{
  min-height:45px;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 18px;
  align-items:center;
  gap:9px;
  margin-top:14px;
  padding:6px 10px;
  border:1px solid rgba(37,211,102,.24);
  border-radius:12px;
  background:linear-gradient(135deg,rgba(37,211,102,.14),rgba(37,211,102,.06));
  color:#d9fbe5;
  transition:.2s;
}
.mg-footer-whatsapp-button>span{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#25d366;
  color:#fff;
}
.mg-footer-whatsapp-button strong{
  font-size:11.5px;
}
.mg-footer-whatsapp-button>.mg-icon{
  width:15px;
  height:15px;
  color:#6ee995;
}
.mg-footer-whatsapp-button:hover{
  transform:translateY(-2px);
  border-color:rgba(37,211,102,.55);
  background:linear-gradient(135deg,rgba(37,211,102,.22),rgba(37,211,102,.09));
  color:#fff;
}
.mg-footer-v3 .mg-footer-bottom-v2 .mg-container{
  min-height:66px;
  display:grid;
  grid-template-columns:auto 1fr 38px;
  align-items:center;
  gap:22px;
}
.mg-footer-v3 .mg-footer-legal{
  justify-content:center;
}
.mg-footer-to-top{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.1);
  border-radius:11px;
  background:rgba(255,255,255,.04);
  color:var(--mg-orange);
  transition:.2s;
}
.mg-footer-to-top .mg-icon{
  width:16px;
  height:16px;
  transform:rotate(-90deg);
}
.mg-footer-to-top:hover{
  transform:translateY(-2px);
  border-color:rgba(255,140,58,.42);
  background:rgba(255,140,58,.1);
}
.mg-contact-whatsapp{
  border:1px solid rgba(37,211,102,.2);
}
.mg-contact-whatsapp .mg-icon--whatsapp,
.mg-smart-service-secondary .mg-icon--whatsapp{
  color:#25a94f;
}

@media(max-width:1150px){
  .mg-footer-v3 .mg-footer-cta-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .mg-footer-v3 .mg-footer-main-grid{
    grid-template-columns:1.2fr 1fr 1fr;
  }
  .mg-footer-v3 .mg-footer-contact-column{
    grid-column:1/-1;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .mg-footer-v3 .mg-footer-whatsapp-button{
    grid-column:1/-1;
    max-width:430px;
  }
}
@media(max-width:760px){
  .mg-footer-v3 .mg-footer-cta-grid{
    grid-template-columns:1fr;
  }
  .mg-footer-v3 .mg-footer-main-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:29px;
  }
  .mg-footer-v3 .mg-footer-about{
    grid-column:1/-1;
  }
  .mg-footer-v3 .mg-footer-contact-column{
    grid-template-columns:1fr;
  }
  .mg-footer-v3 .mg-footer-whatsapp-button{
    grid-column:auto;
    max-width:none;
  }
  .mg-footer-v3 .mg-footer-bottom-v2 .mg-container{
    grid-template-columns:1fr auto;
    align-items:start;
    padding-top:17px;
    padding-bottom:17px;
  }
  .mg-footer-v3 .mg-footer-legal{
    grid-column:1/-1;
    grid-row:2;
    justify-content:flex-start;
  }
}
@media(max-width:520px){
  .mg-footer-v3 .mg-footer-main-grid{
    grid-template-columns:1fr;
    gap:26px;
  }
  .mg-footer-v3 .mg-footer-about{
    grid-column:auto;
  }
  .mg-footer-v3 .mg-footer-cta{
    min-height:76px;
  }
  .mg-footer-v3 .mg-footer-bottom-v2 .mg-container{
    grid-template-columns:1fr 38px;
  }
  .mg-footer-v3 .mg-footer-legal{
    gap:10px 14px;
  }
}


/* ==========================================
   Responsive hero and mobile search — v4.4
========================================== */

body.mg-search-open{
  overflow:hidden;
  overscroll-behavior:none;
}
.mg-mobile-brand{
  display:none;
}
.mg-mobile-service-hint{
  display:none;
}
.mg-search-panel[hidden]{
  display:none!important;
}
.mg-search-drawer-head,
.mg-mobile-search-backdrop{
  display:none;
}

/* Interactive desktop/tablet home hero */
.mg-hero--interactive .mg-service-pill{
  font-family:inherit;
}
.mg-hero--interactive .mg-search-drawer{
  width:100%;
}
.mg-hero--interactive .mg-search-panels{
  width:100%;
}
.mg-hero--interactive .mg-search-panel{
  width:100%;
}

/* Balanced tablet layout before switching to the native-style drawer */
@media (min-width:861px) and (max-width:1180px){
  .mg-hero--interactive{
    height:880px;
  }
  .mg-hero--interactive .mg-hero-copy{
    padding-top:125px;
  }
  .mg-hero--interactive .mg-service-pills{
    max-width:820px;
    margin-inline:auto;
  }
  .mg-hero--interactive .mg-search-floating{
    bottom:25px;
  }
}

/* Mobile and small tablet */
@media(max-width:860px){
  :root{
    --mg-container:min(100% - 24px,760px);
  }

  /* Header */
  .mg-topbar-grid{
    min-height:72px;
    grid-template-columns:52px 1fr;
    direction:ltr;
    gap:12px;
  }
  .mg-mobile-menu-button{
    grid-column:1;
    justify-self:start;
    width:46px;
    height:46px;
    border-radius:14px;
    background:rgba(4,9,16,.58);
    backdrop-filter:blur(12px);
  }
  .mg-mobile-brand{
    grid-column:2;
    display:flex;
    align-items:center;
    justify-self:end;
    max-width:170px;
    height:50px;
    color:#fff;
    direction:ltr;
  }
  .mg-mobile-brand span{
    color:#fff;
    font-size:20px;
    font-weight:900;
    letter-spacing:.07em;
  }
  .mg-mobile-brand-logo{
    width:auto;
    max-width:160px;
    max-height:48px;
    object-fit:contain;
  }

  /* The homepage no longer reserves a thousand-pixel hero for a hidden form. */
  .mg-hero--interactive,
  .mg-hero--interactive.mg-hero--flights,
  .mg-hero--interactive.mg-hero--compact,
  .mg-hero--interactive.mg-hero--compact.mg-hero--flights{
    height:calc(100svh - 0px);
    min-height:650px;
    max-height:790px;
    overflow:hidden;
    background-position:center center;
  }
  .mg-hero--interactive .mg-hero-overlay{
    background:
      linear-gradient(180deg,rgba(1,5,11,.42),rgba(1,5,11,.08) 44%,rgba(1,5,11,.54)),
      radial-gradient(circle at 50% 38%,transparent 0,rgba(0,0,0,.09) 58%,rgba(0,0,0,.38) 100%);
  }
  .mg-hero--interactive .mg-hero-copy,
  .mg-hero--interactive.mg-hero--compact .mg-hero-copy{
    width:min(100% - 26px,620px);
    padding-top:122px;
  }
  .mg-hero--interactive .mg-hero-logo{
    display:none;
  }
  .mg-hero--interactive .mg-hero-copy h1{
    max-width:620px;
    font-size:clamp(34px,8.5vw,47px);
    line-height:1.3;
    text-shadow:0 7px 24px rgba(0,0,0,.32);
  }
  .mg-hero--interactive .mg-hero-copy p{
    max-width:580px;
    margin-top:8px;
    padding-inline:12px;
    color:rgba(255,255,255,.84);
    font-size:clamp(13px,3.5vw,16px);
  }
  .mg-hero--interactive .mg-mobile-service-hint{
    position:absolute;
    z-index:7;
    left:50%;
    bottom:302px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transform:translateX(-50%);
    min-width:max-content;
    padding:6px 11px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:999px;
    background:rgba(4,10,18,.42);
    color:rgba(255,255,255,.78);
    font-size:10.5px;
    font-weight:800;
    backdrop-filter:blur(10px);
  }

  /* Six service buttons distributed on a real arc. */
  .mg-hero--interactive .mg-service-pills{
    position:absolute;
    z-index:8;
    inset:auto 0 32px;
    display:block;
    width:min(100%,720px);
    height:260px;
    margin:0 auto;
    padding:0;
    overflow:visible;
  }
  .mg-hero--interactive .mg-service-pills::before{
    content:"";
    position:absolute;
    left:5%;
    right:5%;
    bottom:20px;
    height:160px;
    border:1.5px solid rgba(255,140,58,.72);
    border-bottom:0;
    border-radius:50% 50% 0 0 / 100% 100% 0 0;
    box-shadow:0 -1px 18px rgba(255,140,58,.09);
    pointer-events:none;
  }
  .mg-hero--interactive .mg-service-pill{
    position:absolute;
    width:68px;
    min-height:80px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:6px;
    margin:0;
    padding:8px 5px;
    border:1px solid rgba(255,140,58,.62);
    border-radius:19px;
    background:linear-gradient(145deg,rgba(6,14,24,.86),rgba(8,18,30,.66));
    color:#fff;
    font-size:10.5px;
    line-height:1.25;
    font-weight:800;
    text-align:center;
    backdrop-filter:blur(12px);
    box-shadow:0 10px 24px rgba(0,0,0,.17);
    transform:translateX(-50%);
    transition:transform .2s,border-color .2s,background .2s,color .2s;
  }
  .mg-hero--interactive .mg-service-pill .mg-icon{
    width:23px;
    height:23px;
    color:#ffad70;
  }
  .mg-hero--interactive .mg-service-pill span{
    display:block;
    max-width:60px;
    white-space:normal;
  }
  .mg-hero--interactive .mg-service-pill:hover{
    transform:translateX(-50%) translateY(-3px);
    background:linear-gradient(145deg,rgba(18,31,47,.94),rgba(8,18,30,.76));
  }
  .mg-hero--interactive:not(.has-selection) .mg-service-pill.is-active{
    background:linear-gradient(145deg,rgba(6,14,24,.86),rgba(8,18,30,.66));
    color:#fff;
  }
  .mg-hero--interactive:not(.has-selection) .mg-service-pill.is-active .mg-icon{
    color:#ffad70;
  }
  .mg-hero--interactive .mg-service-pill.is-active{
    border-color:var(--mg-orange);
    background:linear-gradient(145deg,#ff9b52,var(--mg-orange));
    color:#171717;
    box-shadow:0 13px 28px rgba(255,140,58,.28);
  }
  .mg-hero--interactive .mg-service-pill.is-active .mg-icon{
    color:#171717;
  }

  .mg-hero--interactive .mg-service-pill--visa{left:8%;bottom:24px}
  .mg-hero--interactive .mg-service-pill--cars{left:24%;bottom:82px}
  .mg-hero--interactive .mg-service-pill--insurance{left:40%;bottom:122px}
  .mg-hero--interactive .mg-service-pill--esim{left:60%;bottom:122px}
  .mg-hero--interactive .mg-service-pill--hotels{left:76%;bottom:82px}
  .mg-hero--interactive .mg-service-pill--flights{left:92%;bottom:24px}

  .mg-hero--interactive .mg-hero-curve{
    height:76px;
    border-top-left-radius:50% 100%;
    border-top-right-radius:50% 100%;
  }

  /* Search opens only after choosing a service, as a native-style bottom sheet. */
  .mg-hero--interactive .mg-search-floating{
    position:fixed;
    z-index:1250;
    inset:0;
    width:100%;
    max-width:none;
    margin:0;
    pointer-events:none;
  }
  .mg-hero--interactive .mg-mobile-search-backdrop{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    border:0;
    background:rgba(1,5,10,.62);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .25s,visibility .25s;
    backdrop-filter:blur(3px);
  }
  .mg-hero--interactive .mg-search-drawer{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    width:100%;
    max-height:min(88dvh,780px);
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:0 13px max(14px,env(safe-area-inset-bottom));
    border-radius:28px 28px 0 0;
    background:#fff;
    box-shadow:0 -20px 55px rgba(0,0,0,.23);
    transform:translateY(104%);
    visibility:hidden;
    pointer-events:auto;
    transition:transform .32s cubic-bezier(.22,.8,.22,1),visibility .32s;
  }
  .mg-hero--interactive .mg-search-floating.is-open{
    pointer-events:auto;
  }
  .mg-hero--interactive .mg-search-floating.is-open .mg-mobile-search-backdrop{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }
  .mg-hero--interactive .mg-search-floating.is-open .mg-search-drawer{
    transform:none;
    visibility:visible;
  }
  .mg-search-drawer-head{
    position:sticky;
    top:0;
    z-index:20;
    min-height:72px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:12px 2px 10px;
    border-bottom:1px solid #edf0f3;
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(12px);
  }
  .mg-search-drawer-head::before{
    content:"";
    position:absolute;
    top:6px;
    left:50%;
    width:42px;
    height:4px;
    transform:translateX(-50%);
    border-radius:99px;
    background:#d9dde3;
  }
  .mg-search-drawer-head>div{
    display:flex;
    align-items:center;
    gap:10px;
    padding-top:5px;
  }
  .mg-search-drawer-icon{
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:#fff1e5;
    color:var(--mg-orange-dark);
  }
  .mg-search-drawer-icon .mg-icon{
    width:21px;
    height:21px;
  }
  .mg-search-drawer-head small{
    display:block;
    color:#8a9099;
    font-size:9.5px;
  }
  .mg-search-drawer-head strong{
    display:block;
    color:#20252d;
    font-size:14px;
  }
  .mg-search-drawer-close{
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border:1px solid #e2e5e9;
    border-radius:12px;
    background:#f7f8fa;
    color:#505760;
  }
  .mg-search-panels{
    padding-top:13px;
  }
  .mg-hero--interactive .mg-search-box,
  .mg-hero--interactive .mg-search-box--esim{
    width:100%;
    padding:0;
    border:0;
    border-radius:0;
    background:#fff;
    box-shadow:none!important;
  }

  /* Compact form toolbar */
  .mg-hero--interactive .mg-query-toolbar{
    min-height:0;
    margin:0 0 12px;
    overflow:visible;
  }
  .mg-hero--interactive .mg-query-title{
    padding:4px 2px;
    font-size:12px;
  }
  .mg-hero--interactive .mg-query-tabs{
    width:100%;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:4px;
    padding:4px;
    border-radius:14px;
  }
  .mg-hero--interactive .mg-query-tab{
    min-width:0;
  }
  .mg-hero--interactive .mg-query-tab span{
    width:100%;
    min-height:40px;
    padding:5px 4px;
    font-size:10.5px;
    line-height:1.25;
    text-align:center;
  }

  /* All mobile forms use a clean two-column segmented grid. */
  .mg-hero--interactive .mg-query-line,
  .mg-hero--interactive .mg-query-line--flights,
  .mg-hero--interactive .mg-query-line--hotels,
  .mg-hero--interactive .mg-query-line--cars,
  .mg-hero--interactive .mg-query-line--insurance,
  .mg-hero--interactive .mg-query-line--esim,
  .mg-hero--interactive .mg-query-line--visa{
    position:relative;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    min-height:0;
    border:1px solid #dfe3e8;
    border-radius:17px;
    overflow:hidden;
    background:#fff;
  }
  .mg-hero--interactive .mg-query-segment{
    min-width:0;
    min-height:74px;
    padding:10px 12px;
    border-inline-start:0;
    border-bottom:1px solid #e8ebef;
    background:#fff;
  }
  .mg-hero--interactive .mg-query-segment:nth-child(even){
    border-inline-start:1px solid #e8ebef;
  }
  .mg-hero--interactive .mg-query-segment:hover,
  .mg-hero--interactive .mg-query-segment:focus-within{
    background:#fffaf6;
  }
  .mg-hero--interactive .mg-query-label{
    font-size:10px;
  }
  .mg-hero--interactive .mg-query-label .mg-icon{
    width:15px;
    height:15px;
  }
  .mg-hero--interactive .mg-query-segment input,
  .mg-hero--interactive .mg-query-segment select{
    height:30px;
    font-size:12.5px;
  }
  .mg-hero--interactive .mg-query-segment--location{
    grid-column:1/-1;
    border-inline-start:0!important;
  }
  .mg-hero--interactive .mg-query-swap{
    display:none;
  }
  .mg-hero--interactive .mg-query-submit{
    grid-column:1/-1;
    min-height:53px;
    border-radius:0;
    font-size:13px;
  }

  /* Service-specific spans */
  .mg-hero--interactive .mg-query-line--flights .mg-query-segment:nth-of-type(5),
  .mg-hero--interactive .mg-query-line--hotels .mg-query-segment:nth-of-type(4),
  .mg-hero--interactive .mg-query-line--insurance .mg-query-segment:nth-of-type(2),
  .mg-hero--interactive .mg-query-line--insurance .mg-query-segment:nth-of-type(5){
    grid-column:1/-1;
  }
  .mg-hero--interactive .mg-query-line--visa .mg-query-segment:nth-of-type(1),
  .mg-hero--interactive .mg-query-line--visa .mg-query-segment:nth-of-type(2){
    grid-column:1/-1;
  }

  .mg-hero--interactive .mg-query-options{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    min-height:0;
    margin-top:10px;
  }
  .mg-hero--interactive .mg-query-options label{
    min-height:42px;
    padding:8px 10px;
    border:1px solid #e5e8ed;
    border-radius:11px;
    background:#fafbfc;
    font-size:10.5px;
  }
  .mg-hero--interactive .mg-query-options input{
    width:16px;
    height:16px;
  }

  /* Homepage benefits become a compact swipe row instead of three tall blocks. */
  .mg-benefits{
    padding:18px 0;
    border-bottom:1px solid var(--mg-line);
    background:#fff;
    overflow:hidden;
  }
  .mg-benefits-grid{
    width:100%;
    display:flex;
    gap:11px;
    overflow-x:auto;
    padding:0 13px 5px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .mg-benefits-grid::-webkit-scrollbar{
    display:none;
  }
  .mg-benefits article{
    flex:0 0 min(78vw,330px);
    min-height:104px;
    justify-content:flex-start;
    gap:12px;
    padding:15px;
    border:1px solid #e7eaee!important;
    border-radius:16px;
    background:#fff;
    scroll-snap-align:center;
  }
  .mg-benefits article>.mg-icon{
    width:38px;
    height:38px;
    padding:9px;
    border-radius:12px;
    background:#fff1e5;
  }
  .mg-benefits strong{
    font-size:14px;
  }
  .mg-benefits span{
    font-size:11px;
  }
}

/* Narrow phones */
@media(max-width:420px){
  :root{
    --mg-container:calc(100% - 18px);
  }
  .mg-hero--interactive,
  .mg-hero--interactive.mg-hero--flights,
  .mg-hero--interactive.mg-hero--compact,
  .mg-hero--interactive.mg-hero--compact.mg-hero--flights{
    min-height:620px;
    max-height:740px;
  }
  .mg-hero--interactive .mg-hero-copy,
  .mg-hero--interactive.mg-hero--compact .mg-hero-copy{
    padding-top:110px;
  }
  .mg-hero--interactive .mg-hero-copy h1{
    font-size:32px;
  }
  .mg-hero--interactive .mg-mobile-service-hint{
    bottom:276px;
  }
  .mg-hero--interactive .mg-service-pills{
    bottom:28px;
    height:235px;
  }
  .mg-hero--interactive .mg-service-pills::before{
    bottom:18px;
    height:144px;
  }
  .mg-hero--interactive .mg-service-pill{
    width:54px;
    min-height:70px;
    gap:4px;
    padding:7px 3px;
    border-radius:16px;
    font-size:9px;
  }
  .mg-hero--interactive .mg-service-pill .mg-icon{
    width:20px;
    height:20px;
  }
  .mg-hero--interactive .mg-service-pill span{
    max-width:49px;
  }
  .mg-hero--interactive .mg-service-pill--visa{left:8%;bottom:22px}
  .mg-hero--interactive .mg-service-pill--cars{left:24%;bottom:72px}
  .mg-hero--interactive .mg-service-pill--insurance{left:40%;bottom:108px}
  .mg-hero--interactive .mg-service-pill--esim{left:60%;bottom:108px}
  .mg-hero--interactive .mg-service-pill--hotels{left:76%;bottom:72px}
  .mg-hero--interactive .mg-service-pill--flights{left:92%;bottom:22px}

  .mg-hero--interactive .mg-search-drawer{
    padding-inline:9px;
    border-radius:23px 23px 0 0;
  }
  .mg-hero--interactive .mg-query-line,
  .mg-hero--interactive .mg-query-line--flights,
  .mg-hero--interactive .mg-query-line--hotels,
  .mg-hero--interactive .mg-query-line--cars,
  .mg-hero--interactive .mg-query-line--insurance,
  .mg-hero--interactive .mg-query-line--esim,
  .mg-hero--interactive .mg-query-line--visa{
    grid-template-columns:1fr;
  }
  .mg-hero--interactive .mg-query-segment,
  .mg-hero--interactive .mg-query-segment:nth-child(even),
  .mg-hero--interactive .mg-query-segment--location{
    grid-column:1!important;
    border-inline-start:0!important;
  }
  .mg-hero--interactive .mg-query-options{
    grid-template-columns:1fr;
  }
  .mg-hero--interactive .mg-query-tab span{
    font-size:9.5px;
  }
}

/* Very short landscape phones: preserve access to services without an oversized hero. */
@media(max-width:860px) and (max-height:620px){
  .mg-hero--interactive,
  .mg-hero--interactive.mg-hero--flights{
    min-height:590px;
    height:590px;
  }
  .mg-hero--interactive .mg-hero-copy{
    padding-top:92px;
  }
  .mg-hero--interactive .mg-hero-copy h1{
    font-size:29px;
  }
  .mg-hero--interactive .mg-mobile-service-hint{
    display:none;
  }
}


/* ==========================================
   Mobile hero placement correction — v4.5
========================================== */

@media(max-width:860px){
  /* A compact hero instead of a full-page image. */
  .mg-hero--interactive,
  .mg-hero--interactive.mg-hero--flights,
  .mg-hero--interactive.mg-hero--compact,
  .mg-hero--interactive.mg-hero--compact.mg-hero--flights{
    width:100%;
    height:clamp(570px,76svh,640px);
    min-height:570px;
    max-height:640px;
    background-size:cover;
    background-position:center 48%;
    overflow:hidden;
  }

  /* Keep the heading in its own clean zone. */
  .mg-hero--interactive .mg-hero-copy,
  .mg-hero--interactive.mg-hero--compact .mg-hero-copy{
    position:relative;
    z-index:5;
    width:min(100% - 34px,620px);
    padding-top:112px;
    pointer-events:none;
  }
  .mg-hero--interactive .mg-hero-copy h1{
    max-width:100%;
    margin-bottom:7px;
    font-size:clamp(32px,8.4vw,45px);
  }
  .mg-hero--interactive .mg-hero-copy p{
    max-width:520px;
    margin-inline:auto;
    padding-inline:14px;
    font-size:clamp(12.5px,3.5vw,15px);
  }

  /* Tighter mobile logo so it never collides with a service button. */
  .mg-topbar-grid{
    min-height:66px;
  }
  .mg-mobile-brand{
    max-width:138px;
    height:42px;
  }
  .mg-mobile-brand-logo{
    max-width:136px;
    max-height:40px;
  }
  .mg-mobile-menu-button{
    width:43px;
    height:43px;
    border-radius:13px;
  }

  /* Clean white arc. Its geometry is now the source of truth. */
  .mg-hero--interactive .mg-hero-curve{
    z-index:6;
    left:0;
    right:0;
    bottom:-1px;
    width:100%;
    height:154px;
    border-radius:0;
    clip-path:ellipse(78% 100% at 50% 100%);
    background:#fff;
    transform:none;
  }

  /* Label sits immediately above the service arc. */
  .mg-hero--interactive .mg-mobile-service-hint{
    z-index:9;
    left:50%;
    bottom:183px;
    transform:translateX(-50%);
    padding:5px 10px;
    border-color:rgba(255,255,255,.16);
    background:rgba(4,9,16,.55);
    font-size:9.5px;
    white-space:nowrap;
  }

  /*
   * The navigation is now a direct child of the hero.
   * Every button follows the same ellipse as the white curve.
   */
  .mg-hero--interactive .mg-service-pills{
    position:absolute;
    z-index:10;
    inset:auto 0 0;
    display:block;
    width:100%;
    max-width:620px;
    height:170px;
    margin:0 auto;
    padding:0;
    overflow:visible;
    pointer-events:none;
  }
  .mg-hero--interactive .mg-service-pills::before{
    display:none;
  }
  .mg-hero--interactive .mg-service-pill{
    pointer-events:auto;
    width:clamp(54px,14.5vw,66px);
    min-width:0;
    height:clamp(68px,17vw,78px);
    min-height:0;
    padding:7px 4px;
    gap:4px;
    border:1px solid rgba(255,140,58,.7);
    border-radius:17px;
    background:linear-gradient(155deg,rgba(7,15,25,.95),rgba(11,22,35,.88));
    color:#fff;
    box-shadow:
      0 9px 20px rgba(6,11,18,.19),
      inset 0 1px 0 rgba(255,255,255,.06);
    backdrop-filter:blur(12px);
    transform:translateX(-50%);
  }
  .mg-hero--interactive .mg-service-pill:hover{
    transform:translateX(-50%) translateY(-2px);
  }
  .mg-hero--interactive .mg-service-pill .mg-icon{
    width:clamp(19px,5vw,23px);
    height:clamp(19px,5vw,23px);
  }
  .mg-hero--interactive .mg-service-pill span{
    max-width:100%;
    font-size:clamp(8.5px,2.45vw,10.5px);
    line-height:1.18;
    text-wrap:balance;
  }

  /*
   * Exact service positions on the white ellipse:
   * outer buttons are lower, center buttons rise with the arc.
   */
  .mg-hero--interactive .mg-service-pill--visa{
    left:9%;
    bottom:11px;
  }
  .mg-hero--interactive .mg-service-pill--cars{
    left:25.5%;
    bottom:46px;
  }
  .mg-hero--interactive .mg-service-pill--insurance{
    left:42%;
    bottom:74px;
  }
  .mg-hero--interactive .mg-service-pill--esim{
    left:58%;
    bottom:74px;
  }
  .mg-hero--interactive .mg-service-pill--hotels{
    left:74.5%;
    bottom:46px;
  }
  .mg-hero--interactive .mg-service-pill--flights{
    left:91%;
    bottom:11px;
  }

  /* No orange active state before the visitor actually selects a service. */
  .mg-hero--interactive:not(.has-selection) .mg-service-pill.is-active{
    border-color:rgba(255,140,58,.7);
    background:linear-gradient(155deg,rgba(7,15,25,.95),rgba(11,22,35,.88));
    color:#fff;
    box-shadow:
      0 9px 20px rgba(6,11,18,.19),
      inset 0 1px 0 rgba(255,255,255,.06);
  }
  .mg-hero--interactive:not(.has-selection) .mg-service-pill.is-active .mg-icon{
    color:#ffad70;
  }
  .mg-hero--interactive.has-selection .mg-service-pill.is-active{
    border-color:var(--mg-orange);
    background:linear-gradient(145deg,#ff9b52,var(--mg-orange));
    color:#171717;
    box-shadow:0 11px 24px rgba(255,140,58,.3);
  }

  /* The following section starts naturally after the compact hero. */
  .mg-benefits{
    position:relative;
    z-index:7;
    margin-top:0;
  }
}

@media(max-width:420px){
  .mg-hero--interactive,
  .mg-hero--interactive.mg-hero--flights,
  .mg-hero--interactive.mg-hero--compact,
  .mg-hero--interactive.mg-hero--compact.mg-hero--flights{
    height:590px;
    min-height:590px;
    max-height:590px;
    background-position:center 48%;
  }
  .mg-hero--interactive .mg-hero-copy,
  .mg-hero--interactive.mg-hero--compact .mg-hero-copy{
    padding-top:104px;
  }
  .mg-hero--interactive .mg-hero-copy h1{
    font-size:31px;
  }
  .mg-hero--interactive .mg-mobile-service-hint{
    bottom:174px;
  }
  .mg-hero--interactive .mg-hero-curve{
    height:146px;
  }
  .mg-hero--interactive .mg-service-pills{
    height:160px;
  }
  .mg-hero--interactive .mg-service-pill{
    width:52px;
    height:66px;
    border-radius:15px;
  }
  .mg-hero--interactive .mg-service-pill span{
    font-size:8.4px;
  }
  .mg-hero--interactive .mg-service-pill--visa{
    left:8.5%;
    bottom:9px;
  }
  .mg-hero--interactive .mg-service-pill--cars{
    left:25%;
    bottom:40px;
  }
  .mg-hero--interactive .mg-service-pill--insurance{
    left:41.5%;
    bottom:65px;
  }
  .mg-hero--interactive .mg-service-pill--esim{
    left:58.5%;
    bottom:65px;
  }
  .mg-hero--interactive .mg-service-pill--hotels{
    left:75%;
    bottom:40px;
  }
  .mg-hero--interactive .mg-service-pill--flights{
    left:91.5%;
    bottom:9px;
  }
}

@media(max-width:360px){
  .mg-hero--interactive .mg-service-pill{
    width:47px;
    height:62px;
    padding-inline:2px;
  }
  .mg-hero--interactive .mg-service-pill span{
    font-size:7.8px;
  }
  .mg-hero--interactive .mg-service-pill--visa{left:8%}
  .mg-hero--interactive .mg-service-pill--cars{left:24.8%}
  .mg-hero--interactive .mg-service-pill--insurance{left:41.5%}
  .mg-hero--interactive .mg-service-pill--esim{left:58.5%}
  .mg-hero--interactive .mg-service-pill--hotels{left:75.2%}
  .mg-hero--interactive .mg-service-pill--flights{left:92%}
}

/* Landscape phones use a shorter hero without pushing the arc over the heading. */
@media(max-width:860px) and (orientation:landscape) and (max-height:560px){
  .mg-hero--interactive,
  .mg-hero--interactive.mg-hero--flights{
    height:540px;
    min-height:540px;
    max-height:540px;
  }
  .mg-hero--interactive .mg-hero-copy{
    padding-top:82px;
  }
  .mg-hero--interactive .mg-hero-copy h1{
    font-size:28px;
  }
  .mg-hero--interactive .mg-mobile-service-hint{
    display:none;
  }
}


/* ==========================================
   Clean mobile homepage — v4.6
========================================== */

@media(max-width:860px){
  html,
  body{
    overflow-x:clip;
  }

  /*
   * Compact visual hero.
   * The image remains important without occupying the whole screen.
   */
  .mg-hero--interactive,
  .mg-hero--interactive.mg-hero--flights,
  .mg-hero--interactive.mg-hero--compact,
  .mg-hero--interactive.mg-hero--compact.mg-hero--flights{
    height:560px;
    min-height:560px;
    max-height:560px;
    background-position:center center;
  }

  .mg-hero--interactive .mg-hero-copy,
  .mg-hero--interactive.mg-hero--compact .mg-hero-copy{
    width:min(100% - 32px,600px);
    padding-top:104px;
  }

  .mg-hero--interactive .mg-hero-copy h1{
    margin:0 0 7px;
    font-size:clamp(31px,8vw,42px);
    line-height:1.27;
  }

  .mg-hero--interactive .mg-hero-copy p{
    max-width:500px;
    padding:0 10px;
    font-size:clamp(12px,3.35vw,14.5px);
    line-height:1.7;
  }

  /*
   * A shallow clean curve.
   * The previous white mountain consumed too much of the viewport.
   */
  .mg-hero--interactive .mg-hero-curve{
    height:106px;
    clip-path:ellipse(74% 100% at 50% 100%);
  }

  .mg-hero--interactive .mg-mobile-service-hint{
    display:none;
  }

  /*
   * Service navigation:
   * icon cards are now light, compact and readable.
   * The labels sit on the white curve instead of inside tiny dark boxes.
   */
  .mg-hero--interactive .mg-service-pills{
    height:116px;
    max-width:560px;
  }

  .mg-hero--interactive .mg-service-pill,
  .mg-hero--interactive:not(.has-selection) .mg-service-pill.is-active{
    width:52px;
    height:64px;
    min-height:0;
    padding:0;
    gap:4px;
    border:0;
    border-radius:0;
    background:transparent;
    color:#303640;
    box-shadow:none;
    backdrop-filter:none;
    overflow:visible;
  }

  .mg-hero--interactive .mg-service-pill:hover{
    transform:translateX(-50%) translateY(-2px);
    background:transparent;
  }

  .mg-hero--interactive .mg-service-pill .mg-icon,
  .mg-hero--interactive:not(.has-selection) .mg-service-pill.is-active .mg-icon{
    width:39px;
    height:39px;
    flex:0 0 auto;
    box-sizing:border-box;
    padding:9px;
    border:1px solid rgba(255,140,58,.72);
    border-radius:13px;
    background:linear-gradient(155deg,#0b1724,#101f30);
    color:#ffad70;
    box-shadow:0 7px 16px rgba(7,12,19,.18);
    transition:.2s;
  }

  .mg-hero--interactive .mg-service-pill span{
    width:60px;
    max-width:60px;
    color:#2f353e;
    font-size:8.6px;
    line-height:1.18;
    font-weight:900;
    text-shadow:none;
    white-space:normal;
    text-wrap:balance;
  }

  .mg-hero--interactive.has-selection .mg-service-pill.is-active{
    background:transparent;
    color:var(--mg-orange-dark);
    box-shadow:none;
  }

  .mg-hero--interactive.has-selection .mg-service-pill.is-active .mg-icon{
    border-color:var(--mg-orange);
    background:linear-gradient(145deg,#ff9b52,var(--mg-orange));
    color:#171717;
    box-shadow:0 9px 20px rgba(255,140,58,.28);
  }

  .mg-hero--interactive.has-selection .mg-service-pill.is-active span{
    color:var(--mg-orange-dark);
  }

  /*
   * Six exact points along the shallow curve.
   * Outer items remain inside the viewport even at 320px.
   */
  .mg-hero--interactive .mg-service-pill--visa{
    left:9%;
    bottom:3px;
  }

  .mg-hero--interactive .mg-service-pill--cars{
    left:25.4%;
    bottom:22px;
  }

  .mg-hero--interactive .mg-service-pill--insurance{
    left:41.8%;
    bottom:37px;
  }

  .mg-hero--interactive .mg-service-pill--esim{
    left:58.2%;
    bottom:37px;
  }

  .mg-hero--interactive .mg-service-pill--hotels{
    left:74.6%;
    bottom:22px;
  }

  .mg-hero--interactive .mg-service-pill--flights{
    left:91%;
    bottom:3px;
  }

  /*
   * Benefits: no clipped carousel cards.
   * On phones every card is complete and easy to read.
   */
  .mg-benefits{
    padding:14px 0 18px;
    overflow:visible;
  }

  .mg-benefits-grid{
    width:var(--mg-container);
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    overflow:visible;
    padding:0;
  }

  .mg-benefits article{
    width:100%;
    min-height:78px;
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    align-items:center;
    gap:12px;
    padding:12px 14px;
    border:1px solid #e5e8ed!important;
    border-radius:14px;
    background:#fff;
    scroll-snap-align:none;
  }

  .mg-benefits article>.mg-icon{
    width:38px;
    height:38px;
    padding:9px;
    border-radius:11px;
  }

  .mg-benefits strong{
    font-size:13.5px;
  }

  .mg-benefits span{
    margin-top:2px;
    font-size:10.5px;
    line-height:1.55;
  }

  /* Main page sections become tighter and cleaner on mobile. */
  .mg-section{
    padding:42px 0;
  }

  .mg-section-heading{
    align-items:flex-start;
    margin-bottom:18px;
  }

  .mg-section-heading span{
    font-size:10px;
  }

  .mg-section-heading h2{
    margin-top:4px;
    font-size:25px;
    line-height:1.35;
  }

  .mg-section-heading p{
    max-width:100%;
    margin-top:5px;
    font-size:11.5px;
    line-height:1.65;
  }

  /*
   * Destinations: a real grid rather than cards cut by the screen edges.
   */
  .mg-destination-track{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    overflow:visible;
    padding:0;
  }

  .mg-destination-card{
    min-width:0;
    width:100%;
    height:205px;
    border-radius:15px;
    scroll-snap-align:none;
    box-shadow:none;
  }

  .mg-destination-card>div{
    inset-inline:12px;
    bottom:11px;
  }

  .mg-destination-card small{
    font-size:9px;
  }

  .mg-destination-card h3{
    margin-bottom:2px;
    font-size:18px;
  }

  .mg-destination-card p{
    font-size:8.5px;
    line-height:1.45;
  }

  .mg-destination-card strong{
    margin-top:2px;
    font-size:11.5px;
  }
}

@media(min-width:521px) and (max-width:860px){
  .mg-benefits-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .mg-benefits article{
    min-height:125px;
    display:flex;
    align-items:flex-start;
    flex-direction:column;
  }

  .mg-destination-track{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:420px){
  .mg-hero--interactive,
  .mg-hero--interactive.mg-hero--flights,
  .mg-hero--interactive.mg-hero--compact,
  .mg-hero--interactive.mg-hero--compact.mg-hero--flights{
    height:510px;
    min-height:510px;
    max-height:510px;
  }

  .mg-hero--interactive .mg-hero-copy,
  .mg-hero--interactive.mg-hero--compact .mg-hero-copy{
    padding-top:91px;
  }

  .mg-hero--interactive .mg-hero-copy h1{
    font-size:29px;
  }

  .mg-hero--interactive .mg-hero-curve{
    height:96px;
  }

  .mg-hero--interactive .mg-service-pills{
    height:105px;
  }

  .mg-hero--interactive .mg-service-pill,
  .mg-hero--interactive:not(.has-selection) .mg-service-pill.is-active{
    width:48px;
    height:59px;
  }

  .mg-hero--interactive .mg-service-pill .mg-icon,
  .mg-hero--interactive:not(.has-selection) .mg-service-pill.is-active .mg-icon{
    width:35px;
    height:35px;
    padding:8px;
    border-radius:11px;
  }

  .mg-hero--interactive .mg-service-pill span{
    width:51px;
    max-width:51px;
    font-size:7.8px;
  }

  .mg-hero--interactive .mg-service-pill--visa{
    left:8.5%;
    bottom:2px;
  }

  .mg-hero--interactive .mg-service-pill--cars{
    left:25.1%;
    bottom:19px;
  }

  .mg-hero--interactive .mg-service-pill--insurance{
    left:41.7%;
    bottom:32px;
  }

  .mg-hero--interactive .mg-service-pill--esim{
    left:58.3%;
    bottom:32px;
  }

  .mg-hero--interactive .mg-service-pill--hotels{
    left:74.9%;
    bottom:19px;
  }

  .mg-hero--interactive .mg-service-pill--flights{
    left:91.5%;
    bottom:2px;
  }
}

@media(max-width:340px){
  .mg-hero--interactive .mg-service-pill,
  .mg-hero--interactive:not(.has-selection) .mg-service-pill.is-active{
    width:44px;
  }

  .mg-hero--interactive .mg-service-pill .mg-icon,
  .mg-hero--interactive:not(.has-selection) .mg-service-pill.is-active .mg-icon{
    width:32px;
    height:32px;
    padding:7px;
  }

  .mg-hero--interactive .mg-service-pill span{
    width:45px;
    max-width:45px;
    font-size:7.2px;
  }

  .mg-destination-track{
    grid-template-columns:1fr;
  }

  .mg-destination-card{
    height:220px;
  }
}
