/* ============================================================
   이사 견적 기준 안내소 — Design System (mq-main.css)
   movequote.zibsuri.com · Premium Information Platform
   ============================================================ */

:root{
  /* Brand tokens */
  --navy-900:#0A1C33;
  --navy-800:#0F2A4A;
  --navy-700:#1B3E6B;
  --blue-600:#2F80ED;
  --blue-500:#4C96F5;
  --blue-100:#E8F1FB;
  --yellow-400:#FFC845;
  --yellow-100:#FFF6DC;

  /* Neutrals */
  --white:#FFFFFF;
  --bg-50:#F5F8FC;
  --bg-100:#EDF2F8;
  --line:#E2E9F2;
  --line-strong:#C9D6E5;
  --ink-900:#14202E;
  --ink-700:#3C4A5B;
  --ink-500:#66788C;
  --ink-400:#8A9BAE;

  /* 8pt spacing scale */
  --sp-1:8px;  --sp-2:16px; --sp-3:24px; --sp-4:32px;
  --sp-5:40px; --sp-6:48px; --sp-7:56px; --sp-8:64px;
  --sp-10:80px; --sp-12:96px; --sp-14:112px; --sp-16:128px;

  /* Radius */
  --r-sm:8px; --r-md:14px; --r-lg:20px; --r-xl:28px; --r-full:999px;

  /* Shadow */
  --shadow-sm:0 1px 2px rgba(10,28,51,.06),0 2px 6px rgba(10,28,51,.05);
  --shadow-md:0 4px 12px rgba(10,28,51,.08),0 10px 24px rgba(10,28,51,.06);
  --shadow-lg:0 12px 32px rgba(10,28,51,.12),0 24px 56px rgba(10,28,51,.08);
  --shadow-blue:0 10px 24px rgba(47,128,237,.28);

  /* Type */
  --font-sans:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans KR","Apple SD Gothic Neo",sans-serif;
  --font-serif:"Noto Serif KR","Nanum Myeongjo",Georgia,"Times New Roman",serif;
  --text-base:16px;
  --text-sm:14px;
  --text-xs:13px;
  --lh-body:1.75;
  --lh-head:1.35;

  /* Motion */
  --t-fast:150ms ease;
  --t-med:220ms ease;
  --t-slow:300ms ease;

  --maxw:1180px;
  --maxw-narrow:780px;
}

/* ---------- Reset & base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font-sans);
  font-size:var(--text-base);
  line-height:var(--lh-body);
  color:var(--ink-900);
  background:var(--white);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue-600);text-decoration:none;transition:color var(--t-fast)}
a:hover{color:var(--navy-700)}
button{font-family:inherit}
:focus-visible{outline:3px solid rgba(47,128,237,.45);outline-offset:2px;border-radius:4px}

.mq-container{max-width:var(--maxw);margin:0 auto;padding:0 var(--sp-3)}
@media(min-width:768px){.mq-container{padding:0 var(--sp-4)}}

.mq-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.mq-sr-only:focus{position:fixed;top:0;left:0;width:auto;height:auto;padding:12px 18px;margin:0;overflow:visible;clip:auto;white-space:normal;background:var(--navy-800);color:#fff;font-weight:700;z-index:300;border-radius:0 0 12px 0;box-shadow:var(--shadow-md)}

/* ---------- Typography helpers ---------- */
.mq-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--blue-600);
  background:var(--blue-100);border:1px solid rgba(47,128,237,.18);
  padding:6px 14px;border-radius:var(--r-full);
}
.mq-h2{
  font-family:var(--font-serif);
  font-size:clamp(26px,3.4vw,40px);
  font-weight:700;line-height:var(--lh-head);
  color:var(--navy-800);letter-spacing:-.01em;margin:0;
}
.mq-h3{
  font-family:var(--font-serif);
  font-size:clamp(19px,2vw,24px);font-weight:700;
  color:var(--navy-800);line-height:1.4;margin:0;
}
.mq-lede{font-size:17px;line-height:1.8;color:var(--ink-700);margin:var(--sp-2) 0 0;max-width:640px}

/* ---------- Buttons ---------- */
.mq-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:48px;padding:0 24px;border-radius:var(--r-md);
  font-size:15px;font-weight:700;letter-spacing:-.01em;
  border:1px solid transparent;cursor:pointer;
  transition:transform var(--t-med),box-shadow var(--t-med),background var(--t-med),border-color var(--t-med);
  text-decoration:none;
}
.mq-btn:active{transform:translateY(1px) scale(.995)}
.mq-btn-primary{background:var(--navy-800);color:var(--white);box-shadow:var(--shadow-blue)}
.mq-btn-primary:hover{background:var(--navy-700);color:var(--white);transform:translateY(-2px);box-shadow:0 14px 30px rgba(47,128,237,.32)}
.mq-btn-accent{background:var(--yellow-400);color:var(--navy-900);box-shadow:0 10px 24px rgba(255,200,69,.35)}
.mq-btn-accent:hover{background:#ffd35e;color:var(--navy-900);transform:translateY(-2px)}
.mq-btn-ghost{background:var(--white);color:var(--navy-800);border-color:var(--line-strong)}
.mq-btn-ghost:hover{border-color:var(--blue-600);color:var(--blue-600);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.mq-btn-sm{min-height:44px;padding:0 16px;font-size:14px;border-radius:10px}

/* ---------- Header ---------- */
.mq-header{
  position:sticky;top:0;z-index:60;
  background:rgba(255,255,255,.86);
  backdrop-filter:saturate(1.4) blur(14px);
  border-bottom:1px solid var(--line);
}
.mq-header-inner{display:flex;align-items:center;gap:var(--sp-3);height:68px}
.mq-logo{display:inline-flex;align-items:center;gap:11px;min-height:44px;text-decoration:none;color:var(--navy-800)}
.mq-logo-mark{
  width:38px;height:38px;border-radius:12px;flex:none;
  background:linear-gradient(135deg,var(--navy-800),var(--blue-600));
  display:grid;place-items:center;color:#fff;box-shadow:var(--shadow-sm);
}
.mq-logo-mark svg{width:22px;height:22px}
.mq-logo-text{display:flex;flex-direction:column;line-height:1.2}
.mq-logo-text b{font-size:16px;font-weight:800;letter-spacing:-.02em;color:var(--navy-800)}
.mq-logo-text span{font-size:11px;font-weight:600;color:var(--ink-500);letter-spacing:.02em}
.mq-nav{display:none;align-items:center;gap:4px;margin-left:auto}
@media(min-width:900px){.mq-nav{display:flex}}
.mq-nav a{
  padding:10px 16px;border-radius:10px;color:var(--ink-700);
  font-size:15px;font-weight:600;text-decoration:none;
  transition:background var(--t-fast),color var(--t-fast);
}
.mq-nav a:hover{background:var(--bg-50);color:var(--navy-800)}
.mq-nav a.is-active{color:var(--blue-600);background:var(--blue-100)}
.mq-header-cta{display:flex;align-items:center;gap:12px;margin-left:auto}
@media(min-width:900px){.mq-header-cta{margin-left:0}}
.mq-header .mq-btn{min-height:44px;padding:0 18px}

/* Mobile nav */
.mq-burger{display:grid;place-items:center;width:44px;height:44px;min-width:44px;flex-shrink:0;border-radius:12px;border:1px solid var(--line);background:var(--white);cursor:pointer;margin-left:auto}
@media(min-width:900px){.mq-burger{display:none}}
.mq-drawer{
  position:fixed;inset:0;z-index:80;background:rgba(10,28,51,.4);
  opacity:0;pointer-events:none;transition:opacity var(--t-med);
}
.mq-drawer.open{opacity:1;pointer-events:auto}
.mq-drawer-panel{
  position:absolute;top:0;right:0;bottom:0;width:min(340px,86vw);
  background:var(--white);padding:24px;display:flex;flex-direction:column;gap:6px;
  transform:translateX(100%);transition:transform var(--t-med);
}
.mq-drawer.open .mq-drawer-panel{transform:none}
.mq-drawer a.mq-drawer-link{
  padding:14px 16px;border-radius:12px;color:var(--ink-900);font-weight:600;font-size:16px;text-decoration:none;
}
.mq-drawer a.mq-drawer-link:hover{background:var(--bg-50)}
.mq-drawer .mq-btn{margin-top:10px}

/* ---------- Hero ---------- */
.mq-hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(1100px 520px at 88% -10%,rgba(47,128,237,.14),transparent 60%),
    radial-gradient(900px 460px at -10% 110%,rgba(255,200,69,.12),transparent 55%),
    linear-gradient(180deg,var(--bg-50),#fff 78%);
  padding:var(--sp-10) 0 var(--sp-12);
}
@media(min-width:900px){.mq-hero{padding:var(--sp-16) 0 var(--sp-14)}}
.mq-hero-grid{display:grid;gap:var(--sp-6);align-items:center}
@media(min-width:900px){.mq-hero-grid{grid-template-columns:1.05fr .95fr;gap:var(--sp-8)}}
.mq-hero h1{
  font-family:var(--font-serif);
  font-size:clamp(34px,5.6vw,60px);
  font-weight:800;line-height:1.22;letter-spacing:-.02em;
  color:var(--navy-800);margin:var(--sp-3) 0 0;
}
.mq-hero h1 em{font-style:normal;color:var(--blue-600)}
.mq-hero .mq-lede{margin-top:var(--sp-3);font-size:17.5px}
.mq-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:var(--sp-4)}
.mq-hero-proof{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-5)}
.mq-proof-item{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-700);font-weight:600}
.mq-proof-item svg{width:20px;height:20px;color:var(--blue-600);flex:none}
.mq-hero-visual{position:relative}
.mq-hero-img{
  border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-lg);
  aspect-ratio:16/11;background:var(--bg-100);
}
.mq-hero-img img{width:100%;height:100%;object-fit:cover}
.mq-hero-card{
  position:absolute;left:-14px;bottom:-18px;
  background:var(--white);border-radius:var(--r-md);
  box-shadow:var(--shadow-lg);padding:14px 18px;
  display:flex;align-items:center;gap:12px;
}
.mq-hero-card .mq-hc-ic{width:40px;height:40px;border-radius:12px;background:var(--blue-100);color:var(--blue-600);display:grid;place-items:center;flex:none}
.mq-hero-card b{display:block;font-size:14px;color:var(--navy-800)}
.mq-hero-card span{font-size:12.5px;color:var(--ink-500)}
@media(max-width:899px){.mq-hero-card{left:10px;bottom:-14px}}

/* ---------- Sections ---------- */
.mq-section{padding:var(--sp-12) 0}
@media(min-width:900px){.mq-section{padding:var(--sp-14) 0}}
.mq-section-head{max-width:720px;margin-bottom:var(--sp-6)}
.mq-section-head.center{margin-left:auto;margin-right:auto;text-align:center}
.mq-section-head.center .mq-lede{margin-left:auto;margin-right:auto}

/* Feature cards */
.mq-feat-grid{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.mq-feat{
  background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:26px 24px;box-shadow:var(--shadow-sm);
  transition:transform var(--t-med),box-shadow var(--t-med),border-color var(--t-med);
}
.mq-feat:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--line-strong)}
.mq-feat-ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;margin-bottom:16px;color:#fff}
.mq-feat-ic svg{width:24px;height:24px}
.mq-feat-ic.navy{background:linear-gradient(135deg,var(--navy-800),var(--navy-700))}
.mq-feat-ic.blue{background:linear-gradient(135deg,var(--blue-600),var(--blue-500))}
.mq-feat-ic.yellow{background:linear-gradient(135deg,#e8a800,var(--yellow-400));color:var(--navy-900)}
.mq-feat-ic.teal{background:linear-gradient(135deg,#0E7490,#22A7C9)}
.mq-feat h3{font-size:17px;font-weight:800;color:var(--navy-800);margin:0 0 8px}
.mq-feat p{font-size:14px;line-height:1.7;color:var(--ink-700);margin:0}

/* Carousel cards */
.mq-carousel{display:grid;gap:var(--sp-3);grid-template-columns:1fr}
@media(min-width:900px){.mq-carousel{grid-template-columns:1fr 1fr}}
.mq-car-card{
  position:relative;border-radius:var(--r-xl);overflow:hidden;
  min-height:280px;display:flex;align-items:flex-end;
  box-shadow:var(--shadow-md);text-decoration:none;
  transition:transform var(--t-med),box-shadow var(--t-med);
  border:1px solid var(--line);
}
.mq-car-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.mq-car-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mq-car-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,28,51,0) 30%,rgba(10,28,51,.55) 78%,rgba(10,28,51,.72))}
.mq-car-body{position:relative;z-index:2;padding:26px;width:100%}
.mq-car-badge{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.02em;padding:5px 12px;border-radius:var(--r-full);margin-bottom:10px;background:rgba(255,255,255,.94);color:var(--navy-800)}
.mq-car-body h3{color:#fff;font-family:var(--font-serif);font-size:22px;font-weight:700;margin:0 0 6px}
.mq-car-body p{color:rgba(255,255,255,.88);font-size:14px;margin:0;line-height:1.6}
.mq-car-go{margin-top:12px;display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--yellow-400)}
.mq-car-go svg{width:16px;height:16px;transition:transform var(--t-med)}
.mq-car-card:hover .mq-car-go svg{transform:translateX(4px)}

/* Post grid */
.mq-post-grid{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(255px,1fr))}
.mq-post-card{
  display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r-lg);
  overflow:hidden;background:var(--white);text-decoration:none;color:inherit;
  transition:transform var(--t-med),box-shadow var(--t-med),border-color var(--t-med);
}
.mq-post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--line-strong)}
.mq-post-thumb{aspect-ratio:16/9;overflow:hidden;background:var(--bg-100);position:relative}
.mq-post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-slow)}
.mq-post-card:hover .mq-post-thumb img{transform:scale(1.05)}
.mq-post-body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.mq-post-body h3{font-size:16px;font-weight:800;color:var(--navy-800);line-height:1.45;margin:0}
.mq-post-body p{font-size:13.5px;color:var(--ink-500);line-height:1.65;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mq-post-meta{margin-top:auto;display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-400)}
.mq-post-meta .dot{width:3px;height:3px;border-radius:50%;background:var(--line-strong)}

/* Photo section */
.mq-photo-row{display:grid;gap:var(--sp-4);align-items:center}
@media(min-width:900px){.mq-photo-row{grid-template-columns:1.05fr .95fr}}
.mq-photo-stack{display:grid;gap:var(--sp-3)}
.mq-photo{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/10;box-shadow:var(--shadow-md)}
.mq-photo img{width:100%;height:100%;object-fit:cover}
.mq-photo figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:34px 20px 16px;
  background:linear-gradient(180deg,transparent,rgba(10,28,51,.68));
  color:#fff;font-size:13.5px;font-weight:600;
}
.mq-photo-grid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}

/* Info list */
.mq-list{list-style:none;margin:var(--sp-3) 0 0;padding:0;display:grid;gap:10px}
.mq-list li{position:relative;padding-left:30px;font-size:15px;color:var(--ink-700);line-height:1.7}
.mq-list li::before{
  content:"";position:absolute;left:0;top:5px;width:20px;height:20px;border-radius:50%;
  background:var(--blue-100);color:var(--blue-600);
}
.mq-list li svg{position:absolute;left:0;top:5px;width:20px;height:20px;color:var(--blue-600)}

/* ---------- Region widget ---------- */
.mq-widget{
  background:linear-gradient(180deg,var(--navy-800),var(--navy-700));
  border-radius:var(--r-xl);padding:28px;color:#fff;
  box-shadow:var(--shadow-lg);position:relative;overflow:hidden;
}
.mq-widget::before{
  content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,200,69,.28),transparent 65%);
}
.mq-widget .mq-w-head{position:relative;z-index:1;margin-bottom:20px}
.mq-widget .mq-w-head h3{font-family:var(--font-serif);font-size:22px;font-weight:700;margin:0 0 6px}
.mq-widget .mq-w-head p{font-size:13.5px;color:rgba(255,255,255,.75);margin:0;line-height:1.6}
.mq-widget .mq-w-badge{display:inline-block;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:var(--r-full);background:rgba(255,200,69,.16);color:var(--yellow-400);border:1px solid rgba(255,200,69,.35);margin-bottom:10px}
.mq-w-selects{position:relative;z-index:1;display:grid;gap:10px}
@media(min-width:640px){.mq-w-selects{grid-template-columns:1fr 1fr 1fr}}
.mq-w-selects label{display:block;font-size:12px;font-weight:700;color:rgba(255,255,255,.7);margin-bottom:5px;letter-spacing:.02em}
.mq-w-selects select{
  width:100%;min-height:46px;padding:0 38px 0 14px;border-radius:12px;
  border:1px solid rgba(255,255,255,.22);background:#fff;color:var(--ink-900);
  font-size:14.5px;font-weight:600;appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2366788C' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;
}
.mq-w-result{position:relative;z-index:1;margin-top:18px}
.mq-w-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:18px}
.mq-w-card h4{margin:0 0 12px;font-size:14px;font-weight:800;color:var(--yellow-400)}
.mq-w-code{
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px;
  font-size:13px;color:rgba(255,255,255,.9);
}
.mq-w-code .chip{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);padding:5px 10px;border-radius:8px;font-weight:600}
.mq-w-code .code10{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;color:var(--yellow-400);letter-spacing:.03em}
.mq-w-type{display:inline-block;font-size:12px;font-weight:700;padding:5px 12px;border-radius:var(--r-full);background:var(--yellow-400);color:var(--navy-900);margin-bottom:14px}
.mq-w-vars{display:grid;gap:10px}
.mq-w-var{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;font-size:13.5px}
.mq-w-var b{font-weight:600;color:rgba(255,255,255,.92)}
.mq-w-gauge{display:flex;gap:4px;align-items:center}
.mq-w-gauge i{width:22px;height:7px;border-radius:4px;background:rgba(255,255,255,.18)}
.mq-w-gauge i.on{background:var(--yellow-400)}
.mq-w-gauge em{font-style:normal;font-size:11.5px;color:rgba(255,255,255,.65);margin-left:6px;min-width:30px;text-align:right}
.mq-w-note{position:relative;z-index:1;margin-top:14px;font-size:12px;color:rgba(255,255,255,.55);line-height:1.6}
.mq-w-msg{position:relative;z-index:1;margin-top:14px;font-size:13.5px;color:var(--yellow-100);background:rgba(255,200,69,.1);border:1px dashed rgba(255,200,69,.4);border-radius:12px;padding:12px 14px;line-height:1.65}

/* ---------- CTA band ---------- */
.mq-cta{
  background:linear-gradient(120deg,var(--navy-800),var(--navy-700) 55%,#16396a);
  border-radius:var(--r-xl);padding:44px 32px;text-align:center;
  color:#fff;position:relative;overflow:hidden;box-shadow:var(--shadow-lg);
}
.mq-cta h2{font-family:var(--font-serif);font-size:clamp(22px,3vw,30px);font-weight:700;margin:0 0 10px}
.mq-cta p{color:rgba(255,255,255,.8);font-size:15px;margin:0 auto 22px;max-width:560px;line-height:1.7}
.mq-cta .mq-btn{min-height:50px}

/* ---------- FAQ (home) ---------- */
.mq-faq{display:grid;gap:12px;max-width:820px;margin:0 auto}
.mq-faq details{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
.mq-faq summary{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:18px 20px;cursor:pointer;font-weight:700;color:var(--navy-800);font-size:15.5px;
  list-style:none;
}
.mq-faq summary::-webkit-details-marker{display:none}
.mq-faq summary svg{flex:none;transition:transform var(--t-med);color:var(--blue-600)}
.mq-faq details[open] summary svg{transform:rotate(45deg)}
.mq-faq .mq-faq-body{padding:0 20px 18px;color:var(--ink-700);font-size:14.5px;line-height:1.75;border-top:1px dashed var(--line);margin-top:2px;padding-top:14px}

/* ---------- Footer ---------- */
.mq-footer{background:var(--navy-900);color:rgba(255,255,255,.78);margin-top:0}
.mq-footer-top{padding:var(--sp-10) 0 var(--sp-6);display:grid;gap:var(--sp-5)}
@media(min-width:900px){.mq-footer-top{grid-template-columns:1.4fr 1fr 1fr 1.2fr}}
.mq-footer h4{color:#fff;font-size:15px;font-weight:800;margin:0 0 14px}
.mq-footer .mq-logo-text b{color:#fff}
.mq-footer .mq-logo-text span{color:rgba(255,255,255,.55)}
.mq-footer-desc{font-size:13.5px;line-height:1.75;margin:16px 0 0;max-width:320px}
.mq-footer-links{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mq-footer-links a{color:rgba(255,255,255,.72);font-size:14px;text-decoration:none;display:block;padding:12px 2px;line-height:1.45}
.mq-footer-links a:hover{color:var(--yellow-400)}
.mq-footer-notices{
  border-top:1px solid rgba(255,255,255,.12);
  padding:20px 0;display:grid;gap:12px;
}
.mq-footer-notices p{margin:0;font-size:12.5px;line-height:1.7;color:rgba(255,255,255,.55)}
.mq-footer-notices .mq-notice-strong{color:rgba(255,255,255,.72);font-weight:600}
.mq-footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:18px 0;font-size:12.5px;color:rgba(255,255,255,.45);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}

/* ---------- Reveal on scroll ---------- */
.mq-reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.mq-reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
  html{scroll-behavior:auto}
  .mq-reveal{opacity:1;transform:none}
}

/* ============================================================
   Post / Page content (single post etc.)
   ============================================================ */
.mq-post-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--sp-3)}
@media(min-width:768px){.mq-post-wrap{padding:0 var(--sp-4)}}
.mq-article{max-width:var(--maxw-narrow);margin:0 auto;padding:var(--sp-8) 0 var(--sp-10)}
.mq-article-hero{border-radius:var(--r-xl);overflow:hidden;margin:var(--sp-4) 0 var(--sp-5);box-shadow:var(--shadow-md);aspect-ratio:16/7;background:var(--bg-100)}
.mq-article-hero img{width:100%;height:100%;object-fit:cover}
.mq-article h1{font-family:var(--font-serif);font-size:clamp(28px,4vw,40px);font-weight:800;line-height:1.3;letter-spacing:-.015em;color:var(--navy-800);margin:var(--sp-3) 0 var(--sp-2)}
.mq-article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:var(--ink-500);border-bottom:1px solid var(--line);padding-bottom:var(--sp-3);margin-bottom:var(--sp-4)}
.mq-article-meta .cat{color:var(--blue-600);font-weight:700}
.mq-article-content{font-size:16.5px;line-height:1.85;color:var(--ink-700)}
.mq-article-content > *{max-width:100%}
.mq-article-content p{margin:0 0 1.2em}
.mq-article-content h2{
  font-family:var(--font-serif);font-size:clamp(21px,2.6vw,27px);font-weight:700;
  color:var(--navy-800);line-height:1.4;margin:2.2em 0 .7em;padding-top:.4em;
  scroll-margin-top:96px;
}
.mq-article-content h3{font-size:19px;font-weight:800;color:var(--navy-700);margin:1.8em 0 .6em}
.mq-article-content ul,.mq-article-content ol{margin:0 0 1.4em;padding-left:0;display:grid;gap:8px}
.mq-article-content ul li,.mq-article-content ol li{list-style:none;position:relative;padding-left:28px}
.mq-article-content ul li::before{
  content:"";position:absolute;left:0;top:7px;width:18px;height:18px;border-radius:50%;
  background:var(--blue-100);
}
.mq-article-content ul li::after{
  content:"";position:absolute;left:5px;top:10px;width:8px;height:5px;
  border-left:2px solid var(--blue-600);border-bottom:2px solid var(--blue-600);
  transform:rotate(-45deg);
}
.mq-article-content ol{counter-reset:mqol}
.mq-article-content ol li{counter-increment:mqol;padding-left:40px}
.mq-article-content ol li::before{
  content:counter(mqol);position:absolute;left:0;top:2px;width:26px;height:26px;border-radius:50%;
  background:var(--navy-800);color:#fff;font-size:12.5px;font-weight:700;
  display:grid;place-items:center;
}
.mq-article-content a{text-decoration:underline;text-underline-offset:3px}
.mq-article-content img{border-radius:var(--r-md);margin:1.6em 0;box-shadow:var(--shadow-sm)}
.mq-article-content figure{margin:1.8em 0}
.mq-article-content figcaption{font-size:12.5px;color:var(--ink-500);text-align:center;margin-top:8px}

/* Tables */
.mq-article-content table{width:100%;border-collapse:separate;border-spacing:0;margin:1.6em 0;font-size:14.5px;line-height:1.65;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.mq-article-content thead th{background:var(--navy-800);color:#fff;font-weight:700;text-align:left;padding:12px 14px;font-size:13.5px;letter-spacing:.01em}
.mq-article-content tbody td{padding:12px 14px;border-top:1px solid var(--line);color:var(--ink-700);vertical-align:top}
.mq-article-content tbody tr:nth-child(even){background:var(--bg-50)}
.mq-article-content tbody tr:hover{background:var(--blue-100)}
.mq-table-scroll{overflow-x:auto;margin:1.6em 0;-webkit-overflow-scrolling:touch}
.mq-table-scroll table{margin:0}

/* Blockquote / callout */
.mq-article-content blockquote{
  margin:1.8em 0;padding:18px 22px;border-left:4px solid var(--blue-600);
  background:var(--bg-50);border-radius:0 var(--r-md) var(--r-md) 0;
  color:var(--ink-700);font-size:15px;line-height:1.8;
}
.mq-article-content blockquote p{margin:0}
.mq-callout{
  display:flex;gap:14px;align-items:flex-start;margin:1.8em 0;
  padding:18px 20px;border-radius:var(--r-md);border:1px solid rgba(47,128,237,.25);
  background:var(--blue-100);
}
.mq-callout .ic{flex:none;width:34px;height:34px;border-radius:10px;background:var(--blue-600);color:#fff;display:grid;place-items:center}
.mq-callout .ic svg{width:18px;height:18px}
.mq-callout strong{display:block;color:var(--navy-800);margin-bottom:4px;font-size:14.5px}
.mq-callout p{margin:0;font-size:14px;line-height:1.75;color:var(--ink-700)}
.mq-callout.yellow{background:var(--yellow-100);border-color:rgba(232,168,0,.35)}
.mq-callout.yellow .ic{background:var(--yellow-400);color:var(--navy-900)}

/* Inline CSS charts */
.mq-chart{margin:1.8em 0}
.mq-chart-title{font-size:13.5px;font-weight:800;color:var(--navy-800);margin-bottom:12px}
.mq-chart-row{display:grid;grid-template-columns:150px 1fr 46px;gap:12px;align-items:center;margin-bottom:10px;font-size:13.5px}
.mq-chart-row .label{color:var(--ink-700);font-weight:600;line-height:1.4}
.mq-chart-row .track{height:12px;border-radius:var(--r-full);background:var(--bg-100);overflow:hidden}
.mq-chart-row .bar{height:100%;border-radius:var(--r-full);background:linear-gradient(90deg,var(--navy-800),var(--blue-600));width:0;transition:width .9s cubic-bezier(.22,1,.36,1)}
.mq-chart-row .val{font-size:12.5px;color:var(--ink-500);font-weight:600;text-align:right}
.mq-chart-row .val em{font-style:normal;color:var(--ink-400)}
@media(max-width:560px){.mq-chart-row{grid-template-columns:96px 1fr 40px;gap:8px}}

/* Gauge chart */
.mq-gauge{display:grid;gap:12px;margin:1.8em 0}
.mq-gauge-item{display:grid;grid-template-columns:1fr;gap:6px}
.mq-gauge-item .g-top{display:flex;justify-content:space-between;align-items:center;font-size:13.5px;font-weight:600;color:var(--ink-700)}
.mq-gauge-item .g-top b{color:var(--navy-800)}
.mq-gauge-track{height:10px;border-radius:var(--r-full);background:var(--bg-100);overflow:hidden}
.mq-gauge-fill{height:100%;border-radius:var(--r-full);width:0;transition:width 1s ease}

/* Timeline */
.mq-timeline{position:relative;margin:1.8em 0;padding-left:26px}
.mq-timeline::before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:var(--line-strong)}
.mq-timeline .tl-item{position:relative;padding:0 0 22px 14px}
.mq-timeline .tl-item:last-child{padding-bottom:0}
.mq-timeline .tl-item::before{content:"";position:absolute;left:-25px;top:5px;width:16px;height:16px;border-radius:50%;background:var(--blue-600);border:3px solid var(--blue-100)}
.mq-timeline .tl-item b{display:block;color:var(--navy-800);font-size:15px;margin-bottom:4px}
.mq-timeline .tl-item p{margin:0;font-size:14px;color:var(--ink-700);line-height:1.7}
.mq-timeline .tl-item .tl-step{font-size:11.5px;font-weight:800;color:var(--blue-600);letter-spacing:.05em;display:block;margin-bottom:2px}

/* Key summary box */
.mq-summary{
  background:linear-gradient(180deg,var(--bg-50),#fff);
  border:1px solid var(--line);border-left:4px solid var(--yellow-400);
  border-radius:var(--r-md);padding:20px 22px;margin:0 0 var(--sp-4);
}
.mq-summary strong{display:block;color:var(--navy-800);margin-bottom:8px;font-size:15px}
.mq-summary ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.mq-summary li{font-size:14px;color:var(--ink-700);line-height:1.7;padding-left:22px;position:relative}
.mq-summary li::before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;border-radius:50%;background:var(--blue-600)}

/* TOC */
.mq-toc{background:var(--bg-50);border:1px solid var(--line);border-radius:var(--r-md);padding:18px 20px;margin:0 0 var(--sp-4)}
.mq-toc strong{display:block;color:var(--navy-800);margin-bottom:10px;font-size:14px}
.mq-toc ol{margin:0;padding-left:20px;display:grid;gap:6px}
.mq-toc li{font-size:13.5px}
.mq-toc a{color:var(--ink-700);text-decoration:none}
.mq-toc a:hover{color:var(--blue-600)}

/* Related posts */
.mq-related{margin-top:var(--sp-6);border-top:1px solid var(--line);padding-top:var(--sp-4)}
.mq-related h2{font-family:var(--font-serif);font-size:22px;color:var(--navy-800);margin:0 0 var(--sp-3)}
.mq-related-grid{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.mq-related-card{display:flex;gap:14px;align-items:center;border:1px solid var(--line);border-radius:var(--r-md);padding:12px;text-decoration:none;color:inherit;transition:transform var(--t-med),box-shadow var(--t-med)}
.mq-related-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.mq-related-card img{width:88px;height:60px;object-fit:cover;border-radius:8px;flex:none}
.mq-related-card b{font-size:13.5px;line-height:1.5;color:var(--navy-800)}

/* Legal / AI notices */
.mq-article-content .legal-notice,.mq-article-content .ai-notice{font-size:.85em!important;color:#6b7a8c!important;background:#f7f9fb;border-left:3px solid #cbd5e1;padding:12px 16px;margin:2em 0 0;border-radius:0 8px 8px 0;line-height:1.7}
.mq-article-content .legal-notice p{margin:5px 0}
.mq-article-content .ai-notice{background:transparent;border:none;padding:0;color:#94a3b8!important;margin-top:1em}

/* Pagination / archives */
.mq-archive{padding:var(--sp-10) 0}
.mq-archive h1{font-family:var(--font-serif);font-size:clamp(26px,3.6vw,38px);color:var(--navy-800);margin:0 0 8px}

/* Page shell (terms, consult, region) */
.mq-page{padding:var(--sp-8) 0 var(--sp-10)}
.mq-page-head{max-width:var(--maxw-narrow);margin:0 auto var(--sp-4)}
.mq-page-head h1{font-family:var(--font-serif);font-size:clamp(26px,3.6vw,38px);font-weight:800;color:var(--navy-800);margin:var(--sp-2) 0 0}
.mq-page-body{max-width:var(--maxw-narrow);margin:0 auto;font-size:16px;line-height:1.85;color:var(--ink-700)}
.mq-page-body h2{font-family:var(--font-serif);font-size:22px;color:var(--navy-800);margin:1.8em 0 .6em}
.mq-page-body p{margin:0 0 1.2em}
.mq-page-body ul,.mq-page-body ol{margin:0 0 1.4em}
.mq-page-wide{max-width:var(--maxw)}

/* Consult form */
.mq-form{display:grid;gap:16px}
.mq-form-row{display:grid;gap:16px}
@media(min-width:640px){.mq-form-row{grid-template-columns:1fr 1fr}}
.mq-field label{display:block;font-size:13.5px;font-weight:700;color:var(--navy-800);margin-bottom:6px}
.mq-field label .req{color:#E5484D}
.mq-field input,.mq-field select,.mq-field textarea{
  width:100%;min-height:48px;padding:12px 14px;border-radius:12px;
  border:1px solid var(--line-strong);background:#fff;font-size:15px;font-family:inherit;
  color:var(--ink-900);transition:border-color var(--t-fast),box-shadow var(--t-fast);
}
.mq-field textarea{min-height:120px;resize:vertical;line-height:1.6}
.mq-field input:focus,.mq-field select:focus,.mq-field textarea:focus{outline:none;border-color:var(--blue-600);box-shadow:0 0 0 3px rgba(47,128,237,.16)}
.mq-field .hint{font-size:12px;color:var(--ink-500);margin-top:5px;line-height:1.5}
.mq-consent{display:flex;gap:12px;align-items:flex-start;background:var(--bg-50);border:1px solid var(--line);border-radius:var(--r-md);padding:16px}
.mq-consent input{width:20px;height:20px;margin-top:3px;accent-color:var(--blue-600);flex:none}
.mq-consent div{font-size:13px;color:var(--ink-700);line-height:1.7}
.mq-form .mq-btn{width:100%}
.mq-form-status{display:none;border-radius:var(--r-md);padding:14px 18px;font-size:14.5px;line-height:1.7}
.mq-form-status.ok{display:block;background:#EAF7EE;color:#1D7A3F;border:1px solid #B7E3C5}
.mq-form-status.err{display:block;background:#FDECEC;color:#B42318;border:1px solid #F5C6C6}

/* Wordpress default overrides */
.wp-caption,img.aligncenter{margin-left:auto;margin-right:auto}
.aligncenter{text-align:center}

/* Print */
@media print{
  .mq-header,.mq-footer,.mq-cta,.mq-related{display:none!important}
  .mq-article{padding:0}
}
