.context-image{
  width:100%;
  margin:18px 0 35px;
  border-radius:16px;
  overflow:hidden;
  background:#f4f6f7;
  border:1px solid #e3e8ec;
  box-shadow:0 8px 24px rgba(20,45,65,.07); 
}
.context-image img{
  display:block;
  width:100%;
  height:300px;
  object-fit:cover;
  object-position:center 42%;
  transition:transform .35s ease;
}
.context-image:hover img{transform:scale(1.015)}
@media(max-width:768px){
  .context-image{
    margin-bottom:30px;
    border-radius:16px;
  }
  .context-image img{height:250px}
}
.card-grid{ display:grid; gap:20px;margin:40px 0px }
.card-grid--2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.card-grid--3{ grid-template-columns:repeat(3,minmax(0,1fr)); }

.card-grid--4{ grid-template-columns:repeat(4,minmax(0,1fr)); }
.info-card{
  background:linear-gradient(120deg, #122346, #1d3464);
  border:1px solid #fff;
  border-radius:20px;
  padding:26px;
  color:#fff;
  transition:transform .3s ease, box-shadow .3s ease;
}
.info-card:hover{ transform:translateY(-4px); box-shadow:0 18px 40px rgba(9,22,44,.22); }
.info-card h3{ font-family:'Instrument Serif', ui-serif, Georgia, serif; font-weight:400; font-size:23px; margin:0 0 10px; color:#fff; }
.info-card p{ margin:0; color:#fff !important; font-size:14px; }
.info-card--light{
  background:#fff; color:var(--ip-ink);
  border:1px solid #e2e9f0; box-shadow:0 2px 10px rgba(9,22,44,.05);
}
.info-card--light h3{ color:var(--ip-navy); }
.info-card--light p{ color:var(--ip-body); }

.form-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 50px;
    padding: 14px 26px;
    border: 0;
    border-radius: 999px;
    background: #0099cc;
    color: #fff;
    font-weight: 700;
    font-size: 15px;
    cursor: pointer;
    transition: transform .2s ease, background .2s ease;
}

.contact .contact-form{ display:grid; gap:18px; margin-top:28px; }
.contact .form-row{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.contact .contact-form .field label{ color:#42576b; }
.contact .contact-form .field input,
.contact .contact-form .field select,
.contact .contact-form .field textarea{
  background:#fff; color:#0b1220; border-color:#cfdbe6;
}

.contact .contact-form .field input::placeholder,
.contact .contact-form .field textarea::placeholder{ color:#8a99a8; }
.contact .contact-form .field .hint{ color:#6b7c8c; }
.contact .contact-form .field .error{ color:#c02626; }
.contact .contact-form .form-submit{ background:#09162c; color:#fff; justify-self:start; }
.contact .contact-form .form-submit:hover{ background:#1d3464; }
.contact .contact-form .form-status{ color:#0b7a53; }

 
.contact-strip > div{ background:#fff; padding:22px; }
.contact-strip span{
  display:block; font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:#6b7c8c; margin-bottom:6px;
}
.contact-strip a{ font-family:'Instrument Serif',Georgia,serif; font-size:22px; color:#09162c; text-decoration:none; }
 
.timing-table{ width:100%; border-collapse:collapse; margin-top:20px; }
.timing-table caption{
  text-align:left; font-size:14px; letter-spacing:.14em; text-transform:uppercase;
  color:#333; padding-bottom:15px; font-weight:600;
}
.timing-table th,.timing-table td{
  text-align:left; padding:16px 18px; border:1px solid #abb8c5; font-size:15px; color:#4a5563;
}
.timing-table thead th{
  background:#09162c; color:#fff; font-size:12px; letter-spacing:.14em; text-transform:uppercase; border:0;
}
.timing-table tbody th{ color:#0b1220; font-weight:600; }

@media (max-width:700px){
  .contact .form-row{ grid-template-columns:1fr; }
  .contact-strip{ grid-template-columns:1fr; }
  .timing-table thead{ display:none; }
  .timing-table tr{ display:block; border-bottom:1px solid #e4eaf0; padding:10px 0; }
  .timing-table th,.timing-table td{ display:block; border:0; padding:4px 0; }
}

.contact-strip a{ text-decoration:none; }

 
.contact-strip{
   display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2px;
 
}
.contact-strip > div{    background: linear-gradient(160deg, #ffffff 45%, #e0f7ff 100%);
    border: 1px solid #0284c7;
    border-radius: 14px;
    box-shadow: 0 4px 4px -1px rgba(0, 0, 0, 0.1);
    transition: transform .25s ease, box-shadow .25s ease;
    padding: 24px;margin:20px}
.contact-strip span{
  display:block; font-size:14px; letter-spacing:.14em; text-transform:uppercase; color:#000; margin-bottom:6px;
}
.contact-strip a{ font-family:'Instrument Serif',Georgia,serif; font-size:22px; color:#09162c; text-decoration:none !important; }
 
 @media (max-width:700px){
  .contact .form-row{ grid-template-columns:1fr; }
  .contact-strip{ grid-template-columns:1fr; }
  .timing-table thead{ display:none; }
  .timing-table tr{ display:block; border-bottom:1px solid #e4eaf0; padding:10px 0; }
  .timing-table th,.timing-table td{ display:block; border:0; padding:4px 0; }
}

 


 :root{
  --bg:#05080c; --bg-2:#080d13; --panel:#0d141c; --panel-2:#111a24;
  --ink:#f2f6f9; --ink-dim:#000; --line:rgba(255,255,255,.10);
  --accent:#0099cc; --accent-2:#5cc9ff; --alert:#e94b52; --gold:#0099cc;
    --r:16px; --r-lg:26px; 
}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
img{max-width:100%;display:block}
 .wrap{max-width:var(--maxw);margin:0 auto;padding:0 0px}
.mono{    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #0284c7 !important;
    margin-bottom: 12px;
    display: block;}
 
 .v2-hl {
    position: relative;
    padding: 30px;
    border-radius: 18px;
    background: linear-gradient(135deg, #333 0%, #123049 100%);
    color: #eef4fb;
    box-shadow: 0 24px 60px rgba(9, 22, 44, .18);
}
h1{   }
/* ---------- AI MESH BACKDROP ---------- */
.mesh{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.mesh span{position:absolute;border-radius:50%;filter:blur(90px);opacity:.30;animation:drift 22s ease-in-out infinite alternate}
.mesh span:nth-child(1){width:46vw;height:46vw;left:-10vw;top:-12vw;background:#0e6f78}
.mesh span:nth-child(2){width:40vw;height:40vw;right:-8vw;top:8vw;background:#1b3f8f;animation-delay:-6s}
.mesh span:nth-child(3){width:38vw;height:38vw;left:26vw;bottom:-16vw;background:#7a2530;animation-delay:-12s;opacity:.22}
@keyframes drift{to{transform:translate3d(4vw,-5vw,0) scale(1.15)}}
.grain{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.05;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E")}

/* ---------- HEADER ---------- */
 
.hero-actions{margin:20px 0px}
/* ---------- HERO ---------- */
.hero{position:relative;padding:88px 0 64px;overflow:hidden}
.hero .wrap{position:relative;z-index:2}
.hero h1{font-size:clamp(40px,6.4vw,76px);max-width:16ch}
.hero .lede{max-width:62ch;color:var(--ink-dim);font-size:18px;margin-top:20px}
 .btn-ghost{border-color: var(--accent);
  color: var(--accent);background:rgba(255,255,255,.04)}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.ecg{margin-top:44px;height:60px;width:100%;overflow:hidden}
.ecg path{fill:none;stroke:var(--accent);stroke-width:2;stroke-dasharray:1200;stroke-dashoffset:1200;animation:trace 4.5s linear infinite}
@keyframes trace{to{stroke-dashoffset:-1200}}

/* ---------- LAYOUT: left scroll + right sticky ---------- */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:48px;padding:56px 0 96px;align-items:start}
@media(max-width:1040px){.layout{grid-template-columns:1fr;gap:40px}}
.rail{position:sticky;top:104px;display:grid;gap:20px}
@media(max-width:1040px){.rail{position:static}}
.card{    box-shadow: 0 4px 4px -1px rgba(0, 0, 0, 0.1);       min-height: auto;   background: linear-gradient(160deg, #ffffff 45%, #e0f7ff 100%);   border: 1px solid #0284c7;border-radius:var(--r-lg);padding:25px}
.card h2, .card h3 {
    font-size: 22px;
    margin-bottom:15px;
    font-family: 'Instrument Serif', ui-serif, Georgia, serif;
    font-weight: 500;
    color: #000;
}
.prose h2 {
    font-family: 'Instrument Serif', ui-serif, Georgia, serif;
    font-weight: 400;
    font-size: clamp(28px, 3.4vw, 42px);
    line-height: 1.12;
    letter-spacing: -.01em;
    color: var(--ip-navy);
    margin:25px 0 15px;
}
.prose p {
    color:#333;
    font-size: 16px;
   margin-bottom:15px
}
.prose a {
    color: #0284c7;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.bento h3{
    font-size: 24px;
    margin-bottom: 12px;
    font-family: 'Instrument Serif', ui-serif, Georgia, serif;
    font-weight: 500;
    color: #000;
}
.prose ul, .prose ol {
    color: #333;
    padding-left: 22px;
    margin: 0;
}
.prose li {
    margin: 8px 0;
}
.field{display:grid;gap:6px;margin-bottom:14px}
.field label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim)}
.field input,.field select,.field textarea{width:100%;padding:12px 14px;border-radius:12px;    border: 1px solid #c2baba;background:#fff;color:#333;font:inherit;font-size:15px}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px rgba(127,231,212,.22)}
.err{color:#ffb4b7;font-size:13px;min-height:1em}
.form-status{margin-top:10px;font-size:14px;color:var(--accent)}
.linklist{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.linklist a{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:16px;color:var(--ink-dim)}
.linklist a:hover{color:var(--accent)}
.linklist a::after{content:"?";color:var(--accent)}

/* ---------- SECTIONS ---------- */
section[id]{scroll-margin-top:110px}

.block{margin:0px 0px 70px 0px}
.block>h2{    font-family: 'Instrument Serif', ui-serif, Georgia, serif;
    margin-bottom: 18px;
    font-size: 35px;
     font-weight: 500;}
	.bento2 h3{    font-family: 'Instrument Serif', ui-serif, Georgia, serif;
    margin-bottom: 15px;
    font-size: 22px;
 
    font-weight: 500;}
#sum-h {
    font-size: clamp(30px, 4vw, 46px);
    margin-bottom: 18px; font-family: 'Instrument Serif', ui-serif, Georgia, serif;  font-weight: 500;
}
.block p{color:#333;margin-bottom:10px}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}
.reveal.is-visible{ opacity:1; transform:none; }
.reveal.in{opacity:1;transform:none}
.visually-hidden{
  position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

/* --- RESPONSIVE FIXES FOR MIDDLE SECTIONS --- */

/* Bento Grids - Default to 1 column on mobile, increase based on screen width */
.bento, .bento1, .bento2 {
    display: grid;
    gap: 20px; /* Reduced from 30px for better fit on small screens */
    grid-template-columns: 1fr; /* Mobile first: 1 column */
}

@media(min-width: 600px) {
    .bento, .bento2 { grid-template-columns: repeat(2, 1fr); }
    .bento1 { grid-template-columns: repeat(2, 1fr); }
}

@media(min-width: 900px) {
    .bento { grid-template-columns: repeat(3, 1fr); }
    .bento1 { grid-template-columns: repeat(4, 1fr); }
    .bento2 { grid-template-columns: repeat(2, 1fr); }
}

/* Ensure images and containers inside grids are responsive */
.bento > *, .bento1 > *, .bento2 > * {
    padding: 20px;
    width: 100%;
    box-sizing: border-box; /* Crucial for preventing overflow */
}

/* Ensure images inside cards are fluid */
.tile img, .card img, .bento img {
    max-width: 100%;
    height: auto;
    display: block;
}
/* bento + stats */
.bento{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.bento1{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.bento2{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}

.bento>*{          background: linear-gradient(160deg, #ffffff 45%, #e0f7ff 100%);
    border: 1px solid #0284c7;
    border-radius: 14px;    box-shadow: 0 4px 4px -1px rgba(0, 0, 0, 0.1);
      transition: transform .25s ease, box-shadow .25s ease;
     padding:24px}
.bento .wide{grid-column:span 2}
.bento .tall{grid-row:span 2}

.quote .footer1 {
    font-size: 15px;
    color: #0284c7;
}
.bento2>*{          background: linear-gradient(160deg, #ffffff 45%, #e0f7ff 100%);
    border: 1px solid #0284c7;
    border-radius: 14px;    box-shadow: 0 4px 4px -1px rgba(0, 0, 0, 0.1);
      transition: transform .25s ease, box-shadow .25s ease;
     padding:24px; }


.bento1>*{          background: linear-gradient(160deg, #ffffff 45%, #e0f7ff 100%);
    border: 1px solid #0284c7;
    border-radius: 14px;    box-shadow: 0 4px 4px -1px rgba(0, 0, 0, 0.1);
      transition: transform .25s ease, box-shadow .25s ease;
     padding:24px; margin-bottom:30px}
 @media(max-width:900px){.bento{grid-template-columns:1fr 1fr}.bento .wide{grid-column:span 2}}
@media(max-width:560px){.bento{grid-template-columns:1fr}.bento .wide{grid-column:span 1}}
.stat b{display:block;font-family:var(--serif);font-size:46px;line-height:1;color:var(--accent)}
.stat span{font-size:13.5px;color:var(--ink-dim)}

/* filter chips */
.chips{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 26px;padding:0;list-style:none}
.chip{all:unset;cursor:pointer;padding:9px 16px;border:1px solid var(--accent);border-radius:999px;font-size:13.5px;color:var(--accent)}
.chip:hover{    border-color: var(--accent);
    color: #fff;background:var(--accent);}
.chip[aria-pressed="true"]{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}
.searchbar{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:rgba(0,0,0,.35);border-radius:999px;padding:12px 20px;margin-bottom:20px}
.searchbar input{all:unset;flex:1;font-size:15px;color:var(--ink);min-width:0}
.searchbar .mono{white-space:nowrap}

/* cards grid */
.grid{display:grid;gap:30px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.g2,.g3{grid-template-columns:1fr}}
.tile{    background: linear-gradient(160deg, #ffffff 45%, #e0f7ff 100%); text-align:center; font-size:16px;
    border: 1px solid #0284c7;
    border-radius: 14px;
    box-shadow: 0 4px 4px -1px rgba(0, 0, 0, 0.1);border-radius:var(--r-lg);overflow:hidden;transition:transform .35s ease,border-color .35s ease;display:flex;flex-direction:column}
.tile:hover{transform:translateY(-5px);border-color:rgba(127,231,212,.5); text-align:center}
.tile .body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}
.tile h3{font-size:20px;    font-family: 'Instrument Serif', ui-serif, Georgia, serif; font-weight:500
}
.tile p{font-size:15px;color:#333;margin:0}
.ratio{position:relative;aspect-ratio:16/9;background:#0b1219}
.ratio>iframe,.ratio>img{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}

/* quotes / carousel */
.rail-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(330px,1fr);gap:30px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:14px;scrollbar-width:thin;margin:50px 0px 0px 0px}
.rail-scroll>*{scroll-snap-align:start}
.quote{     background: linear-gradient(160deg, #ffffff 45%, #e0f7ff 100%);
    border: 1px solid #0284c7;
    border-radius: 14px;
    box-shadow: 0 4px 4px -1px rgba(0, 0, 0, 0.1);
    transition: transform .25s ease, box-shadow .25s ease;
    padding:15px 20px;margin:0;display:flex;flex-direction:column;gap:15px}
.quote p {
    /* font-family: var(--serif); */
    font-size: 16px;
      color:#000000;
    margin: 0;
}
.quote .footer{font-size:15px;  color:#333}
.carousel-nav{display:flex;gap:10px;margin-top:16px}
.carousel-nav button{all:unset;cursor:pointer;width:44px;height:44px;display:grid;place-items:center;border:1px solid #0284c7 ;border-radius:50%;color:#0284c7 }
.carousel-nav button:hover{border-color:var(--accent);color:var(--accent)}

/* accordion */
.acc{border-top:1px solid var(--line)}
.acc details{border-bottom:1px solid #0284c7;padding:20px 0}
.acc summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-family:var(--serif);font-size:21px;line-height:1.3; color:#000}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";color:var(--accent);font-family:var(--sans);font-size:24px;transition:transform .3s}
.acc details[open] summary::after{transform:rotate(45deg)}
.acc .content{padding-top:14px;color:var(--ink-dim);font-size:15px}
.acc .content a{color:var(--accent)}

/* timeline */
.tl{list-style:none;margin:50px 0px;padding:0 0 0 26px;border-left:1px solid #0284c7}
.tl li{position:relative;padding:0 0 30px 18px}
.tl li::before{content:"";position:absolute;left:-33px;top:8px;width:13px;height:13px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px rgba(127,231,212,.14)}
.tl h3 {
    font-size: 18px;
    margin-bottom: 10px;
}
.tl p{font-size:16px;color:var(--ink-dim);margin:0}

/* lightbox */
.lb{position:fixed;inset:0;background:rgba(3,6,9,.65);display:none;place-items:center;z-index:200;padding:24px}
.lb[open],.lb.show{display:grid}
.lb img{max-width:min(1100px,92vw);max-height:82vh;object-fit:contain;border-radius:12px}
.lb figcaption{color:var(--ink-dim);text-align:center;margin-top:14px;font-size:14px;max-width:70ch}
.lb button {
    position: absolute;
    top: 15px;
    right: 20px;
    cursor: pointer;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid #fff;
    color: #fff;
    border-radius: 50%;
    font-size: 22px;
    background: #0284c7;
}
.lb .prev,.lb .next{top:50%;transform:translateY(-50%);color:#fff;}
.lb .prev{left:20px;right:auto}
.lb .next{right:20px}

/* footer */
 .legal{border-top:1px solid var(--line);margin-top:40px;padding-top:22px;font-size:13px;color:var(--ink-dim);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.progress{position:fixed;top:0;left:0;height:3px;background:var(--accent);width:0;z-index:100}
.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}

.spy{position:sticky;top:70px}
.spy ol{list-style:none;margin:0;padding:0;display:grid;gap:2px;counter-reset:s;    border: solid 1px #d6d6d6;}
.spy a{    display: block;
    padding: 18px 0 18px 40px;
    position: relative;
    text-decoration: none;
    font-size: 15px;
    color: var(--ink-dim);
    border-left: 1px solid #0284c7;border-bottom: 1px solid #a6defb;}
.spy a::before {
    counter-increment: s;
    content: counter(s, decimal-leading-zero);
    position: absolute;
    left: 10px;
    font-family: var(--mono);
    font-size: 14px;
    top: 18px;
    color: var(--accent);
    opacity: .8;
}
.spy a:hover{color:var(--accent)}
.spy a[aria-current="true"]{color:var(--accent);border-left:2px solid var(--accent);    background: linear-gradient(90deg, rgb(71 214 255 / 12%), transparent);}
.split{display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;align-items:start;padding:48px 0 96px}
 
.exp-card ul li{    padding: 8px 0;
    color:#333;
    text-decoration: none;
    font-size: 15px;
    transition: all 0.25s ease-in-out;display:block}
.exp-card  ul li::before {
    content: "\f105";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
     color: #0099cc;
    transition: transform 0.25s ease-in-out;padding-right:10px;
}
@media(max-width:1200px){.split{grid-template-columns:minmax(0,1fr) 340px}.spy{display:none}}

@media(max-width:1000px){.split{grid-template-columns:1fr}}
.pullquote{font-family:var(--serif);font-size:clamp(26px,3.4vw,40px);line-height:1.2;border-left:3px solid var(--accent);padding-left:26px;margin:36px 0px !important;color:#fff}
.hero-figure{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:30px 0px; max-width: 90ch;}
.hero-figure div{          background: linear-gradient(160deg, #ffffff 45%, #e0f7ff 100%);
    border: 1px solid #0284c7;
    border-radius: 14px;
    padding: 20px;
    text-align: center;
    transition: transform .25s ease, box-shadow .25s ease;    box-shadow: 0 4px 4px -1px rgba(0, 0, 0, 0.1);
    color: #0284c7;}
.hero-figure b{display:block;font-family:var(--serif);font-size:35px;color:var(--accent);line-height:1;margin-bottom:15px}
.hero-figure span{font-size:16px;color:#333}
@media(max-width:700px){.hero-figure{grid-template-columns:1fr 1fr}}
 
.badge {
    display: inline-block;
    font-family: var(--mono);
    font-size: 11px;
    letter-spacing: .16em;
    text-transform: uppercase;
    border: 1px solid var(--line);
    border-radius: 999px;
    padding: 8px 9px;
    color: #fff;
    background: #0284c7;
    text-align: center;
}
/* ==========================================
   FINAL MOBILE RESPONSIVE & OVERFLOW FIX
   ========================================== */

@media (max-width: 768px) {
 
  /* 2. Fix Wrapper & Main Layout Containers */
  .wrap {
 
    width: 100% !important;
  }

  .layout, .split {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 20px 0 !important;
    gap: 20px !important;
  }

  /* 3. Make All Images & Media Fully Responsive */
  img, video, iframe, canvas, svg {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  .context-image img {
    height: 220px !important;
    object-fit: cover !important;
  }

  /* 4. Force Grids and Bento Layouts to Single Column */
  .bento, .bento1, .bento2, .hero-figure, .grid, .g2, .g3 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 15px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;margin-bottom:20px
  }

  /* 5. Fix Cards and Spacing */
  .card, .info-card, .bento > *, .bento1 > *, .bento2 > *, .hero-figure div, .tile {
    width: 100% !important;
    max-width: 100% !important;
    padding: 16px !important;
    margin: 0 !important;
  }

  /* 6. Hide Sidebar / Rail on Mobile to prevent overflow */
  .rail, .spy {
    display: none !important;
  }
}