/* ══════════════════════════════════════
   REVELIO INSPECTION — Shared Stylesheet
   ══════════════════════════════════════ */

/* ── VARIABLES ── */
:root{
  --noir:#080c10; --noir2:#0d1219; --or:#c9a84c; --or-clair:#e8c97a;
  --blanc:#f0ece4; --gris:#8a8880; --rouge:#c94c4c; --vert:#4ca87a;
  --bleu:#4c7ac9;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--noir);color:var(--blanc);font-family:'DM Sans',sans-serif;font-weight:300;overflow-x:hidden;}

/* grain overlay */
body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:999;opacity:0.25;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.4rem 4rem;
  display:flex;justify-content:space-between;align-items:center;
  background:linear-gradient(to bottom,rgba(8,12,16,0.97),rgba(8,12,16,0.6));}
.logo{text-decoration:none;display:flex;align-items:center;}
/* PNG has white bg — we invert it to look natural on dark nav */
.logo-img{
  height:58px;width:auto;display:block;
  transition:opacity 0.3s;
}
.logo:hover .logo-img{opacity:0.8;}
.footer-logo-wrap img{
  height:52px;width:auto;
}
nav ul{list-style:none;display:flex;gap:1.8rem;align-items:center;}
nav>ul>li>a{color:var(--gris);text-decoration:none;font-size:0.75rem;letter-spacing:0.1em;
  text-transform:uppercase;transition:color 0.3s;}
nav>ul>li>a:hover{color:var(--or);}
.nav-cta{border:1px solid var(--or)!important;color:var(--or)!important;
  padding:0.4rem 1rem;border-radius:0;background:transparent;}
.nav-cta:hover{background:var(--or)!important;color:var(--noir)!important;}

/* dropdown — click-based */
.has-drop{position:relative;}
.drop-arr{font-size:0.6rem;opacity:0.6;margin-left:0.2rem;transition:transform 0.25s;}
.dropdown{display:none;position:absolute;top:calc(100% + 0.8rem);left:50%;
  transform:translateX(-50%);background:rgba(8,12,16,0.98);
  border:1px solid rgba(201,168,76,0.18);min-width:260px;padding:0.5rem 0;
  z-index:200;backdrop-filter:blur(12px);}
.dropdown.drop-open{display:block;}
.dropdown::before{content:'';position:absolute;top:-5px;left:50%;
  transform:translateX(-50%) rotate(45deg);width:8px;height:8px;
  background:rgba(8,12,16,0.98);border-top:1px solid rgba(201,168,76,0.18);
  border-left:1px solid rgba(201,168,76,0.18);}
.dropdown a{display:flex;align-items:center;gap:0.7rem;padding:0.7rem 1.4rem;
  font-size:0.76rem;color:var(--gris);text-decoration:none;
  text-transform:none;letter-spacing:0.03em;transition:color 0.2s,background 0.2s;
  white-space:nowrap;}
.dropdown a:hover{color:var(--or);background:rgba(201,168,76,0.04);}
.di{color:rgba(201,168,76,0.35);font-size:0.65rem;}
.dd-avail{margin-left:auto;font-size:0.58rem;letter-spacing:0.1em;
  background:rgba(76,168,122,0.1);border:1px solid rgba(76,168,122,0.22);
  color:var(--vert);padding:0.1rem 0.45rem;}
.dd-soon{margin-left:auto;font-size:0.58rem;letter-spacing:0.1em;
  background:rgba(201,168,76,0.07);border:1px solid rgba(201,168,76,0.2);
  color:var(--or);padding:0.1rem 0.45rem;}

/* burger (mobile) */
.burger{display:none;background:none;border:1px solid rgba(201,168,76,0.25);
  color:var(--or);padding:0.4rem 0.7rem;font-size:1rem;cursor:pointer;}

/* ── BOUTONS ── */
.btn-or{display:inline-flex;align-items:center;gap:0.5rem;background:var(--or);
  color:var(--noir);border:none;padding:1rem 2rem;cursor:pointer;
  font-family:'DM Sans',sans-serif;font-size:0.82rem;letter-spacing:0.08em;
  text-transform:uppercase;text-decoration:none;transition:all 0.3s;white-space:nowrap;}
.btn-or:hover{background:var(--or-clair);transform:translateY(-2px);}
.btn-outline{display:inline-flex;align-items:center;gap:0.5rem;background:transparent;
  color:var(--blanc);border:1px solid rgba(240,236,228,0.25);padding:1rem 2rem;
  cursor:pointer;font-family:'DM Sans',sans-serif;font-size:0.82rem;
  letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;transition:all 0.3s;}
.btn-outline:hover{border-color:var(--or);color:var(--or);}
.btn-sm{padding:0.65rem 1.4rem;font-size:0.76rem;}

/* ── LAYOUT ── */
.sec{padding:6rem 4rem;}
.dark{background:var(--noir2);}
.lbl{font-size:0.68rem;letter-spacing:0.28em;text-transform:uppercase;
  color:var(--or);margin-bottom:1rem;display:block;}
.ttl{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4vw,3.2rem);
  font-weight:300;margin-bottom:2.5rem;max-width:600px;line-height:1.15;}
.ttl em{font-style:italic;color:var(--or);}
.page-hero{padding:9rem 4rem 5rem;min-height:40vh;position:relative;overflow:hidden;
  display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;}
.page-hero-bg{position:absolute;inset:0;}
.page-hero-content{position:relative;z-index:1;}

/* ── REVEAL ── */
.r{opacity:0;transform:translateY(20px);transition:opacity 0.65s ease,transform 0.65s ease;}
.r.on{opacity:1;transform:none;}

/* ── SERVICE CARDS (homepage) ── */
.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5px;
  background:rgba(201,168,76,0.08);}
.svc-card{background:var(--noir2);padding:3rem;position:relative;overflow:hidden;
  transition:background 0.3s;text-decoration:none;display:block;}
.svc-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:var(--or);transform:scaleX(0);transition:transform 0.5s;transform-origin:left;}
.svc-card:hover{background:#0e1620;}
.svc-card:hover::after{transform:scaleX(1);}
.svc-num{font-family:'Cormorant Garamond',serif;font-size:4rem;font-weight:300;
  color:rgba(201,168,76,0.08);line-height:1;margin-bottom:1.2rem;}
.svc-icon{font-size:1.6rem;margin-bottom:1rem;}
.svc-name{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:300;
  color:var(--blanc);margin-bottom:0.5rem;}
.svc-name em{font-style:italic;color:var(--or);}
.svc-desc{font-size:0.8rem;color:var(--gris);line-height:1.75;margin-bottom:1.2rem;max-width:380px;}
.svc-status{display:inline-block;font-size:0.62rem;letter-spacing:0.14em;
  text-transform:uppercase;padding:0.22rem 0.7rem;}
.svc-status.active{background:rgba(76,168,122,0.1);border:1px solid rgba(76,168,122,0.25);color:var(--vert);}
.svc-status.coming{background:rgba(201,168,76,0.06);border:1px solid rgba(201,168,76,0.18);color:var(--or);}
.svc-arrow{position:absolute;bottom:2rem;right:2rem;color:rgba(201,168,76,0.3);
  font-size:1.3rem;transition:all 0.3s;}
.svc-card:hover .svc-arrow{color:var(--or);transform:translate(4px,-4px);}

/* ── BADGE PROCHAINEMENT ── */
.badge-soon{display:inline-block;background:rgba(201,168,76,0.05);
  border:1px solid rgba(201,168,76,0.16);color:var(--or);
  font-size:0.63rem;letter-spacing:0.12em;text-transform:uppercase;
  padding:0.22rem 0.65rem;margin-bottom:1.4rem;}
.prochainement-box{background:rgba(201,168,76,0.04);border:1px solid rgba(201,168,76,0.15);
  padding:2.5rem 3rem;text-align:center;margin:2rem 0;}
.prochainement-box .icon{font-size:2.5rem;margin-bottom:1rem;}
.prochainement-box h3{font-family:'Cormorant Garamond',serif;font-size:1.8rem;
  font-weight:300;color:var(--or);margin-bottom:0.7rem;}
.prochainement-box p{font-size:0.82rem;color:var(--gris);line-height:1.75;max-width:480px;margin:0 auto;}

/* ── TARIFS ── */
.tgrid{display:flex;flex-direction:column;gap:1.5px;background:rgba(201,168,76,0.1);}
.titem{background:var(--noir);padding:1.7rem 2.1rem;}
.titem.feat{border:1px solid rgba(201,168,76,0.28);}
.trow{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.4rem;}
.tname{font-size:0.86rem;font-weight:500;}
.tprice{font-family:'Cormorant Garamond',serif;font-size:1.5rem;color:var(--or);}
.tdesc{font-size:0.75rem;color:var(--gris);line-height:1.5;}
.tbadge{font-size:0.63rem;color:var(--or);letter-spacing:0.1em;margin-top:0.4rem;}
.tnote{background:rgba(201,168,76,0.04);padding:0.85rem 2.1rem;
  font-size:0.7rem;color:var(--gris);font-style:italic;}

/* ── INSPECTION CARDS ── */
.sgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5px;
  background:rgba(201,168,76,0.1);margin-top:1rem;}
.scard{background:var(--noir2);padding:2.4rem 2rem;position:relative;overflow:hidden;transition:background 0.3s;}
.scard::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:var(--or);transform:scaleX(0);transition:transform 0.4s;transform-origin:left;}
.scard:hover{background:#101820;}
.scard:hover::after{transform:scaleX(1);}
.snum{font-family:'Cormorant Garamond',serif;font-size:3rem;font-weight:300;
  color:rgba(201,168,76,0.11);line-height:1;margin-bottom:1.1rem;}
.sname{font-size:0.93rem;font-weight:500;margin-bottom:0.55rem;}
.sdesc{font-size:0.8rem;color:var(--gris);line-height:1.7;margin-bottom:1.1rem;}
.sprice{font-family:'Cormorant Garamond',serif;font-size:1.35rem;color:var(--or);}

/* ── RAPPORT ── */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5px;
  background:rgba(255,255,255,0.06);margin-bottom:2rem;}
.pitem{background:var(--noir2);padding:1.8rem;display:flex;gap:0.9rem;}
.pdot{width:8px;height:8px;border-radius:50%;margin-top:5px;flex-shrink:0;}
.p1 .pdot{background:var(--rouge);box-shadow:0 0 7px rgba(201,76,76,0.5);}
.p2 .pdot{background:var(--or);box-shadow:0 0 7px rgba(201,168,76,0.5);}
.p3 .pdot{background:var(--vert);box-shadow:0 0 7px rgba(76,168,122,0.5);}
.ph{font-size:0.82rem;font-weight:500;margin-bottom:0.3rem;}
.pp{font-size:0.75rem;color:var(--gris);line-height:1.6;}

/* ── ZONES ── */
.vgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5px;background:rgba(255,255,255,0.05);}
.vcard{background:var(--noir2);padding:1.5rem 1.7rem;}
.vtag{font-size:0.6rem;letter-spacing:0.15em;text-transform:uppercase;margin-bottom:0.35rem;display:block;}
.vtag.main{color:var(--or);}
.vtag.other{color:var(--gris);}
.vname{font-size:0.92rem;font-weight:500;margin-bottom:0.2rem;}
.vsvc{font-size:0.68rem;color:var(--gris);}

/* ── CONTACT ── */
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;}
.cinfo{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem;}
.ci-lbl{font-size:0.62rem;letter-spacing:0.2em;text-transform:uppercase;
  color:var(--or);display:block;margin-bottom:0.2rem;}
.ci-val{font-size:0.88rem;color:var(--blanc);}
.ci-val a{color:var(--blanc);text-decoration:none;}
.cf{background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.06);padding:2.5rem;}
.cf-t{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:300;margin-bottom:0.3rem;}
.cf-s{font-size:0.78rem;color:var(--gris);margin-bottom:1.6rem;line-height:1.6;}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.cfg{margin-bottom:1rem;}
.cfg label{display:block;font-size:0.62rem;letter-spacing:0.15em;
  text-transform:uppercase;color:var(--gris);margin-bottom:0.3rem;}
.cfg input,.cfg select,.cfg textarea{width:100%;background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);color:var(--blanc);
  padding:0.75rem 0.9rem;font-family:'DM Sans',sans-serif;font-size:0.86rem;
  outline:none;transition:border 0.3s;appearance:none;}
.cfg select{background:rgba(8,12,16,0.95);}
.cfg input:focus,.cfg select:focus,.cfg textarea:focus{border-color:var(--or);}
.cfg textarea{resize:vertical;min-height:90px;}
.cf-sub-btn{width:100%;background:var(--or);color:var(--noir);border:none;
  padding:0.9rem;font-family:'DM Sans',sans-serif;font-size:0.8rem;
  letter-spacing:0.12em;text-transform:uppercase;cursor:pointer;
  transition:all 0.3s;margin-top:0.3rem;}
.cf-sub-btn:hover{background:var(--or-clair);}
.cf-ok{display:none;background:rgba(76,168,122,0.1);border:1px solid rgba(76,168,122,0.28);
  color:var(--vert);padding:0.75rem 1rem;font-size:0.78rem;margin-top:0.8rem;}
.cf-note{font-size:0.68rem;color:rgba(138,136,128,0.5);margin-top:0.9rem;line-height:1.5;}

/* ── PORTAL 3D ── */
.visite-layout{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;}
.vf-list{display:flex;flex-direction:column;gap:0.7rem;margin-bottom:1.8rem;}
.vf-item{display:flex;gap:0.6rem;font-size:0.8rem;color:var(--gris);}
.vf-item span{color:var(--or);}
.portal{background:var(--noir2);border:1px solid rgba(201,168,76,0.18);padding:2.3rem;position:relative;}
.portal::before{content:'ACCÈS SÉCURISÉ';position:absolute;top:-0.55rem;left:1.8rem;
  background:var(--noir2);padding:0 0.6rem;font-size:0.6rem;letter-spacing:0.2em;color:var(--or);}
.pt{font-family:'Cormorant Garamond',serif;font-size:1.45rem;margin-bottom:0.4rem;}
.ps{font-size:0.78rem;color:var(--gris);line-height:1.6;margin-bottom:1.6rem;}
.fg{margin-bottom:0.9rem;}
.fg label{display:block;font-size:0.65rem;letter-spacing:0.15em;
  text-transform:uppercase;color:var(--gris);margin-bottom:0.35rem;}
.fg input{width:100%;background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.09);color:var(--blanc);
  padding:0.75rem 0.9rem;font-family:'DM Sans',sans-serif;font-size:0.86rem;outline:none;transition:border 0.3s;}
.fg input:focus{border-color:var(--or);}
.abtn{width:100%;background:var(--or);color:var(--noir);border:none;
  padding:0.85rem;font-family:'DM Sans',sans-serif;font-size:0.78rem;
  letter-spacing:0.12em;text-transform:uppercase;cursor:pointer;transition:all 0.3s;margin-top:0.3rem;}
.abtn:hover{background:var(--or-clair);}
.aerr{color:var(--rouge);font-size:0.76rem;margin-top:0.5rem;display:none;}
.anote{font-size:0.7rem;color:var(--gris);margin-top:0.9rem;
  padding-top:0.9rem;border-top:1px solid rgba(255,255,255,0.05);}
.dbox{background:rgba(201,168,76,0.04);border:1px solid rgba(201,168,76,0.1);padding:1.1rem;margin-top:1.1rem;}
.dbox p{font-size:0.68rem;color:var(--gris);margin-bottom:0.55rem;}
.dr{display:flex;justify-content:space-between;font-size:0.74rem;
  padding:0.22rem 0;border-bottom:1px solid rgba(255,255,255,0.04);}
.dr code{font-family:monospace;color:var(--or);letter-spacing:0.08em;}
.dr span{color:var(--gris);font-size:0.68rem;}
.viewer{display:none;flex-direction:column;gap:1.1rem;}
.viewer.on{display:flex;}
.vtop{display:flex;justify-content:space-between;align-items:flex-start;}
.vtit{font-family:'Cormorant Garamond',serif;font-size:1.25rem;margin-bottom:0.18rem;}
.vadr{font-size:0.74rem;color:var(--gris);}
.vok{background:rgba(76,168,122,0.1);border:1px solid rgba(76,168,122,0.28);
  color:var(--vert);padding:0.22rem 0.65rem;font-size:0.66rem;letter-spacing:0.1em;text-transform:uppercase;}
.ebar{background:rgba(255,255,255,0.05);height:3px;border-radius:2px;overflow:hidden;}
.efill{height:100%;background:linear-gradient(to right,var(--or),var(--or-clair));}
.elbl{font-size:0.68rem;color:var(--gris);margin-top:0.28rem;}
.fw{width:100%;height:400px;border:1px solid rgba(201,168,76,0.14);
  background:#05080d;position:relative;overflow:hidden;}
.fw iframe{width:100%;height:100%;border:none;position:absolute;inset:0;}
.cbtn{background:transparent;border:1px solid rgba(255,255,255,0.09);
  color:var(--gris);padding:0.45rem 0.9rem;font-size:0.7rem;cursor:pointer;
  transition:all 0.3s;letter-spacing:0.1em;text-transform:uppercase;align-self:flex-start;}
.cbtn:hover{border-color:var(--rouge);color:var(--rouge);}

/* ── BLOG ── */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;}
.blog-card{background:var(--noir2);border:1px solid rgba(255,255,255,0.04);
  overflow:hidden;transition:border-color 0.3s;text-decoration:none;display:block;}
.blog-card:hover{border-color:rgba(201,168,76,0.25);}
.blog-img{height:180px;position:relative;overflow:hidden;}
.blog-cat{position:absolute;top:1rem;left:1rem;font-size:0.58rem;letter-spacing:0.15em;
  text-transform:uppercase;background:rgba(8,12,16,0.85);
  border:1px solid rgba(201,168,76,0.25);color:var(--or);padding:0.2rem 0.6rem;}
.blog-body{padding:1.6rem;}
.blog-date{font-size:0.65rem;color:var(--gris);letter-spacing:0.1em;margin-bottom:0.6rem;display:block;}
.blog-title{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:300;
  color:var(--blanc);margin-bottom:0.6rem;line-height:1.3;}
.blog-excerpt{font-size:0.76rem;color:var(--gris);line-height:1.65;}
.blog-more{display:inline-block;margin-top:0.8rem;font-size:0.7rem;
  letter-spacing:0.12em;color:var(--or);text-transform:uppercase;}

/* ── FEATURE BOXES ── */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5px;background:rgba(255,255,255,0.05);}
.feat-item{background:var(--noir2);padding:2rem;border-left:2px solid var(--or);}
.feat-icon{font-size:1.4rem;margin-bottom:0.8rem;}
.feat-t{font-size:0.88rem;font-weight:500;margin-bottom:0.35rem;}
.feat-d{font-size:0.78rem;color:var(--gris);line-height:1.7;}

/* ── WHY GRID ── */
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5px;background:rgba(255,255,255,0.05);}
.why-item{background:var(--noir2);padding:2rem 2.4rem;border-left:2px solid var(--or);}
.why-t{font-size:0.88rem;font-weight:500;margin-bottom:0.4rem;}
.why-d{font-size:0.78rem;color:var(--gris);line-height:1.7;}

/* ── FOOTER ── */
footer{background:var(--noir2);border-top:1px solid rgba(255,255,255,0.05);
  padding:3.5rem 4rem 2rem;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;
  gap:3rem;margin-bottom:2.5rem;}
.fc-brand .footer-logo{font-family:'Cormorant Garamond',serif;font-size:1.3rem;
  color:var(--or);letter-spacing:0.15em;margin-bottom:0.8rem;display:block;}
.fc-brand .footer-logo span{color:var(--blanc);font-style:italic;}
.fc-brand p{font-size:0.75rem;color:var(--gris);line-height:1.7;max-width:220px;}
.fc-links h4{font-size:0.62rem;letter-spacing:0.25em;text-transform:uppercase;
  color:var(--or);margin-bottom:1rem;}
.fc-links a{display:block;font-size:0.76rem;color:var(--gris);text-decoration:none;
  margin-bottom:0.55rem;transition:color 0.25s;}
.fc-links a:hover{color:var(--or);}
.fc-legal{border-left:1px solid rgba(255,255,255,0.05);padding-left:2rem;}
.fc-legal p{font-size:0.68rem;color:rgba(138,136,128,0.45);line-height:1.7;margin-bottom:0.25rem;}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.04);padding-top:1.4rem;
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:0.5rem;}
.footer-bottom p{font-size:0.65rem;color:rgba(138,136,128,0.3);}
.footer-bottom a{color:rgba(138,136,128,0.4);text-decoration:none;font-size:0.65rem;}
.footer-bottom a:hover{color:var(--or);}

/* ── ANIMATIONS ── */
@keyframes fu{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);}}
@keyframes fi{from{opacity:0;}to{opacity:1;}}
@keyframes spin{to{transform:rotate(360deg);}}
@keyframes spinR{to{transform:rotate(-360deg);}}

/* ── RESPONSIVE ── */
@media(max-width:920px){
  nav{padding:1.1rem 1.5rem;}
  nav>ul{display:none;position:fixed;top:0;left:0;right:0;bottom:0;
    background:rgba(8,12,16,0.98);flex-direction:column;align-items:center;
    justify-content:center;gap:2rem;z-index:90;}
  nav>ul.open{display:flex;}
  nav>ul>li>a{font-size:1rem;}
  .dropdown{position:static;transform:none;display:flex!important;flex-direction:column;
    background:none;border:none;padding:0.5rem 0 0 1rem;}
  .dropdown::before{display:none;}
  .burger{display:block;z-index:101;}
  .sec,#contact{padding:4rem 1.5rem;}
  .page-hero{padding:7rem 1.5rem 3rem;}
  .services-grid{grid-template-columns:1fr;}
  .sgrid,.pgrid,.vgrid,.feat-grid,.why-grid,.blog-grid{grid-template-columns:1fr;}
  .contact-layout,.visite-layout,.cf-row{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2rem;}
  .fc-legal{border-left:none;padding-left:0;}
  .footer-bottom{flex-direction:column;text-align:center;}
  /* 5-col grid → 2 col on mobile */
  [style*="grid-template-columns:repeat(5,1fr)"]{grid-template-columns:repeat(2,1fr)!important;}
  .vfx-band{grid-template-columns:1fr!important;}
  .vfx-band>div:first-child{border-right:none!important;border-bottom:1px solid rgba(201,168,76,0.15);}
}
@media(max-width:600px){
  .footer-grid{grid-template-columns:1fr;}
  .ttl{font-size:1.8rem;}
}
