/* ============================================================
   Abdulaziz Bin Thabit — PRO AV inspired design system
   Based on the attached PRO AV visual language: Manrope, Uber/Base neutrals,
   blue accent, generous white space, compact header, simple cards.
   ============================================================ */
:root{
  --bw-black:#000000;--bw-white:#ffffff;--bw-mono100:#ffffff;--bw-mono200:#fafafa;--bw-mono300:#f6f6f6;--bw-mono400:#eeeeee;--bw-mono500:#e2e2e2;--bw-mono600:#cbcbcb;--bw-mono700:#afafaf;--bw-mono800:#6b6b6b;--bw-mono900:#545454;--bw-mono1000:#333333;--bw-mono1100:#1f1f1f;
  --bw-accent:#276EF1;--bw-accent-hover:#1E54B7;--bw-accent-active:#174291;--bw-accent-soft:#EFF3FE;
  --bw-fg:var(--bw-black);--bw-fg-muted:var(--bw-mono800);--bw-fg-subtle:var(--bw-mono700);--bw-bg:var(--bw-white);--bw-bg-soft:var(--bw-mono200);--bw-bg-elevated:var(--bw-mono300);--bw-border:var(--bw-mono500);--bw-border-subtle:var(--bw-mono400);
  --radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;
  --font-display:"Manrope",-apple-system,BlinkMacSystemFont,sans-serif;--font-body:"Manrope",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;
  --s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-7:32px;--s-8:40px;--s-9:48px;--s-10:64px;--s-11:80px;--s-12:120px;
  --container:1440px;--container-narrow:1040px;--ease:cubic-bezier(.2,.8,.2,1);--dur-fast:150ms;--dur-base:240ms;--dur-slow:400ms;--shadow:0 18px 70px rgba(0,0,0,.10)
}
*,*::before,*::after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.5;color:var(--bw-fg);background:var(--bw-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}img,svg,video{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none}ul,ol{padding-left:1.2em}.skip-link{position:absolute;left:-999px;top:12px;background:#fff;color:#000;padding:12px 16px;border-radius:999px;z-index:1000}.skip-link:focus{left:12px}.progress{position:fixed;top:0;left:0;height:3px;background:var(--bw-accent);width:0;z-index:1000}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 clamp(20px,4vw,56px)}.container--narrow{max-width:var(--container-narrow);margin-left:auto;margin-right:auto}.section{padding:var(--s-12) 0}.section--sm{padding:var(--s-10) 0}.section--lg{padding:140px 0}.section--soft{background:var(--bw-bg-soft)}.divider{border:0;border-top:1px solid var(--bw-border-subtle);margin:0}
.eyebrow{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--bw-fg-muted);display:block}.eyebrow--accent{color:var(--bw-accent)}.text-blue{color:var(--bw-accent);}.h-display{font-family:var(--font-display);font-weight:700;font-size:clamp(42px,6.4vw,84px);line-height:1.02;letter-spacing:-.025em}.h-xxl{font-family:var(--font-display);font-weight:700;font-size:clamp(34px,4.5vw,56px);line-height:1.08;letter-spacing:-.02em}.h-xl{font-family:var(--font-display);font-weight:700;font-size:clamp(28px,3.2vw,40px);line-height:1.1;letter-spacing:-.015em}.h-lg{font-family:var(--font-display);font-weight:700;font-size:28px;line-height:1.15;letter-spacing:-.01em}.h-md{font-family:var(--font-display);font-weight:600;font-size:20px;line-height:1.25;letter-spacing:-.005em}.p-lg{font-size:18px;line-height:1.6;color:var(--bw-fg-muted)}.p-md{font-size:16px;line-height:1.6;color:var(--bw-fg-muted)}.p-sm{font-size:14px;line-height:1.55;color:var(--bw-fg-muted)}.mt-2{margin-top:var(--s-2)}.mt-3{margin-top:var(--s-3)}.mt-4{margin-top:var(--s-4)}.mt-5{margin-top:var(--s-5)}.mt-6{margin-top:var(--s-6)}.mt-7{margin-top:var(--s-7)}.mt-8{margin-top:var(--s-8)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);height:48px;padding:0 var(--s-6);border-radius:var(--radius-sm);font-weight:600;font-size:15px;letter-spacing:-.005em;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);white-space:nowrap}.btn:active{transform:scale(.98)}.btn--primary,.btn-primary{background:var(--bw-black);color:var(--bw-white)}.btn--primary:hover,.btn-primary:hover{background:var(--bw-mono1000)}.btn--accent{background:var(--bw-accent);color:var(--bw-white)}.btn--accent:hover{background:var(--bw-accent-hover)}.btn--secondary{background:var(--bw-mono300);color:var(--bw-black)}.btn--secondary:hover{background:var(--bw-mono400)}.btn--ghost,.btn-ghost{background:transparent;color:var(--bw-black);border:1px solid var(--bw-border)}.btn--ghost:hover,.btn-ghost:hover{border-color:var(--bw-black);background:var(--bw-mono200)}.btn--sm,.compact{height:38px;padding:0 16px;font-size:13px}.btn--lg{height:56px;padding:0 28px}.btn.full{width:100%;margin-top:18px}
.site-header{position:sticky;top:0;z-index:200;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--bw-border-subtle)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.nav__brand{display:flex;align-items:center;gap:12px;min-width:240px}.brand-mark{width:42px;height:42px;border-radius:12px;background:#000;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800;letter-spacing:.06em}.brand-text{display:block}.brand-text strong{font-size:15px;line-height:1;font-weight:800;letter-spacing:-.02em}.brand-text span{display:block;font-size:11px;color:var(--bw-fg-muted);margin-top:2px;font-weight:600}.nav__links{display:flex;align-items:center;gap:28px}.nav__link,.nav-link-button{font-size:14px;font-weight:700;color:var(--bw-fg);line-height:1}.nav__link:hover,.nav-link-button:hover{color:var(--bw-accent)}.nav__toggle{display:none}.nav__admin{opacity:.55}.nav__admin:hover{opacity:1}.footer-admin{font-size:12px;color:var(--bw-fg-subtle);text-decoration:underline;text-underline-offset:3px}
.hero-pro{position:relative;overflow:hidden;background:var(--bw-white);padding:92px 0 70px}.hero-pro:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(39,110,241,.08),transparent 38%),linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px;mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.82) 58%,transparent 100%);pointer-events:none}.hero-pro__grid{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}.hero-pro__sub{font-size:clamp(19px,2vw,25px);line-height:1.45;color:var(--bw-fg-muted);max-width:720px}.hero-pro__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.hero-card{background:var(--bw-bg-soft);border:1px solid var(--bw-border-subtle);border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 20px 64px rgba(0,0,0,.08)}.hero-card__image{height:410px;background:linear-gradient(135deg,#eef3ff,#fff);overflow:hidden}.hero-card__image img{width:100%;height:100%;object-fit:cover;object-position:center top}.hero-card__body{padding:28px 30px 32px}.hero-card__body h2{font-size:30px;line-height:1.1;letter-spacing:-.02em;margin-top:10px}.hero-card__body p{color:var(--bw-fg-muted);line-height:1.65;margin-top:12px}.pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.pills span{font-size:12px;font-weight:700;background:var(--bw-white);border:1px solid var(--bw-border-subtle);border-radius:999px;padding:8px 12px}.value-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--bw-border-subtle);border:1px solid var(--bw-border-subtle);border-radius:var(--radius-lg);overflow:hidden;transform:translateY(-30px);position:relative;z-index:2}.value-strip__item{background:#fff;padding:26px 28px}.value-strip__num{font-family:var(--font-mono);font-size:12px;color:var(--bw-accent);font-weight:600}.value-strip__title{margin-top:8px;font-weight:800;font-size:18px;letter-spacing:-.01em}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:86px}.section-head{max-width:920px}.section-head--wide{max-width:1100px}.profile-lead{font-size:clamp(22px,2.6vw,36px);line-height:1.24;letter-spacing:-.02em;font-weight:700}.facts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--bw-border-subtle);border:1px solid var(--bw-border-subtle);border-radius:var(--radius-lg);overflow:hidden}.fact{background:#fff;padding:24px}.fact span{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--bw-fg-muted)}.fact strong{display:block;margin-top:8px;font-size:19px;line-height:1.25}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.timeline-card{background:#fff;border:1px solid var(--bw-border-subtle);border-radius:var(--radius-lg);padding:28px;transition:transform var(--dur-base) var(--ease),box-shadow var(--dur-base) var(--ease),border-color var(--dur-base) var(--ease)}.timeline-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--bw-border)}.timeline-card time{font-family:var(--font-mono);font-size:12px;color:var(--bw-accent);font-weight:600}.timeline-card h3{font-size:24px;line-height:1.12;margin-top:18px;letter-spacing:-.02em}.timeline-card .company{font-weight:700;color:var(--bw-fg-muted);margin:8px 0 18px}.timeline-card ul{color:var(--bw-fg-muted);line-height:1.65;font-size:15px}.timeline-card li{margin:8px 0}.feature-section{background:#fff}.feature-row{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.feature-row__media{border-radius:var(--radius-xl);overflow:hidden;background:var(--bw-bg-elevated);border:1px solid var(--bw-border-subtle);min-height:420px}.feature-row__media img{width:100%;height:100%;object-fit:cover}.feature-list{display:grid;grid-template-columns:1fr;gap:1px;background:var(--bw-border-subtle);border:1px solid var(--bw-border-subtle);border-radius:var(--radius-lg);overflow:hidden}.feature-list__item{background:#fff;padding:26px}.feature-list__item span{font-family:var(--font-mono);font-size:12px;color:var(--bw-accent);font-weight:600}.feature-list__item h3{font-size:26px;line-height:1.12;margin:10px 0 8px}.tags{display:flex;flex-wrap:wrap;gap:10px}.tags span,.post-tags span{background:var(--bw-accent-soft);color:var(--bw-accent-active);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:700}.credentials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--bw-border-subtle);border:1px solid var(--bw-border-subtle);border-radius:var(--radius-lg);overflow:hidden}.credential{background:#fff;padding:30px}.credential span{font-family:var(--font-mono);font-size:12px;color:var(--bw-accent);font-weight:600}.credential h3{font-size:22px;line-height:1.15;margin:18px 0 8px}.contact-panel{background:#000;color:#fff;border-radius:var(--radius-xl);padding:58px;display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:start}.contact-panel .p-lg{color:#d8d8d8}.contact-links{display:grid;grid-template-columns:1fr;gap:1px;background:#333;border:1px solid #333;border-radius:var(--radius-lg);overflow:hidden}.contact-link{background:#111;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:18px}.contact-link:hover{background:#1b1b1b}.contact-link span{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#aaa}.contact-link strong{font-size:18px}.footer{padding:44px 0;background:#fff;border-top:1px solid var(--bw-border-subtle)}.footer-inner{display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap;color:var(--bw-fg-muted)}.footer strong{color:#000}.footer-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.footer-links a{text-decoration:underline;text-underline-offset:3px}
.page-hero{padding:92px 0 70px;background:linear-gradient(180deg,#fff,#fafafa);border-bottom:1px solid var(--bw-border-subtle)}.page-hero p:not(.eyebrow){max-width:760px}.search-wrap{max-width:620px;margin-top:34px}.text-input,.text-area{width:100%;border:1px solid var(--bw-border);border-radius:var(--radius-md);padding:15px 16px;font:inherit;background:#fff;color:#000}.text-area{min-height:110px}.text-input:focus,.text-area:focus,.rich-editor:focus{outline:3px solid rgba(39,110,241,.18);border-color:var(--bw-accent)}.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.post-card{background:#fff;border:1px solid var(--bw-border-subtle);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:transform var(--dur-base) var(--ease),box-shadow var(--dur-base) var(--ease)}.post-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.post-card img{width:100%;height:220px;object-fit:cover;background:#eee}.post-card__body{padding:24px;display:flex;flex-direction:column;gap:14px;flex:1}.post-card h2{font-size:26px;line-height:1.08;letter-spacing:-.02em}.post-card p{color:var(--bw-fg-muted);line-height:1.55}.post-card time,.post-reader time{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--bw-accent)}.post-reader{background:#fff;border:1px solid var(--bw-border-subtle);border-radius:var(--radius-xl);padding:42px;margin-top:34px;box-shadow:var(--shadow)}.post-reader h1{font-size:clamp(38px,5vw,74px);line-height:1.02;letter-spacing:-.03em;margin-top:14px}.post-reader .cover{width:100%;max-height:520px;object-fit:cover;border-radius:var(--radius-lg);margin:26px 0}.article-body{font-size:19px;line-height:1.8;color:#222}.article-body h2,.article-body h3{line-height:1.1;letter-spacing:-.02em;color:#000;margin:28px 0 12px}.article-body h2{font-size:38px}.article-body h3{font-size:28px}.article-body blockquote{border-left:4px solid var(--bw-accent);background:var(--bw-accent-soft);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:20px 24px;margin:28px 0;font-size:24px;font-weight:700;line-height:1.45}.article-body .highlight{background:#fff2b8;border-radius:6px;padding:2px 6px}.article-body img{max-width:100%;border-radius:var(--radius-lg)}.article-body hr{border:0;border-top:1px solid #ddd;margin:32px 0}.admin-body{background:#fafafa}.admin-hero{padding:92px 0 58px;background:#fff;border-bottom:1px solid var(--bw-border-subtle)}.admin-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.admin-head p:not(.eyebrow){max-width:760px}.admin-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:22px}.editor-panel,.posts-panel{background:#fff;border:1px solid var(--bw-border-subtle);border-radius:var(--radius-lg);padding:26px;box-shadow:0 10px 44px rgba(0,0,0,.05)}.form-row.two{display:grid;grid-template-columns:1fr 240px;gap:14px}.field-label{display:block;font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--bw-fg-muted);margin:16px 0 8px}.editor-toolbar{display:flex;flex-wrap:wrap;gap:8px;background:#f2f2f2;border-radius:var(--radius-lg);padding:10px;margin:22px 0}.editor-toolbar button,.editor-toolbar label{border:1px solid #ddd;background:#fff;border-radius:999px;padding:9px 12px;font-weight:700;cursor:pointer;font-size:13px}.rich-editor{min-height:430px;border:1px solid var(--bw-border);border-radius:var(--radius-lg);background:#fff;padding:24px;font-size:19px;line-height:1.75;outline:none}.rich-editor:empty:before{content:attr(data-placeholder);color:#999}.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.admin-post-list{display:grid;gap:12px;margin-top:18px}.admin-post-item{border:1px solid var(--bw-border-subtle);border-radius:var(--radius-md);background:#fff;padding:16px}.admin-post-item h3{margin:6px 0;font-size:19px;letter-spacing:-.01em}.admin-post-item time{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--bw-accent)}.item-actions{display:flex;gap:8px;margin-top:12px}.item-actions button{border:1px solid #ddd;background:#fff;border-radius:999px;padding:8px 12px;font-weight:700;cursor:pointer}.note-card{background:var(--bw-accent-soft);border:1px solid #d7e5ff;border-radius:var(--radius-md);padding:18px;margin-top:22px;color:#123}.login-dialog,.preview-dialog{border:0;border-radius:var(--radius-xl);padding:0;width:min(480px,calc(100% - 32px));box-shadow:var(--shadow)}.preview-dialog{width:min(960px,calc(100% - 32px));padding:20px}.login-dialog::backdrop,.preview-dialog::backdrop{background:rgba(0,0,0,.58)}.login-card{padding:32px}.login-card h2{margin:10px 0}.dialog-close{float:right;width:38px;height:38px;border:0;background:#eee;border-radius:999px;font-size:22px;cursor:pointer}.muted{color:var(--bw-fg-muted)}.form-message{font-weight:700;color:var(--bw-accent);margin-top:10px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s var(--ease),transform .6s var(--ease)}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:1080px){.hero-pro__grid,.split,.feature-row,.contact-panel,.admin-grid{grid-template-columns:1fr}.hero-card{max-width:620px}.timeline,.credentials-grid,.posts-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.nav__toggle{display:block;border:1px solid var(--bw-border);border-radius:999px;padding:10px 14px;font-weight:700}.nav__links{display:none;position:absolute;left:18px;right:18px;top:82px;background:#fff;border:1px solid var(--bw-border-subtle);border-radius:var(--radius-lg);padding:18px;flex-direction:column;align-items:flex-start;box-shadow:var(--shadow)}.nav__links.open,.nav__links.visible{display:flex}.value-strip{grid-template-columns:repeat(2,1fr);transform:none;margin-top:22px}.hero-pro{padding-top:70px}.admin-head{display:block}.form-row.two{grid-template-columns:1fr}}
@media(max-width:640px){.section{padding:76px 0}.hero-pro{padding:54px 0}.h-display{font-size:42px}.value-strip,.timeline,.credentials-grid,.posts-grid,.facts-grid{grid-template-columns:1fr}.hero-card__image{height:330px}.contact-panel{padding:32px}.footer-inner{display:block}.footer-links{margin-top:14px}.brand-text{display:none}.nav{height:68px}}
/* Centered admin login dialog */
.login-dialog[open],.preview-dialog[open]{
  position:fixed;
  inset:50% auto auto 50%;
  transform:translate(-50%,-50%);
  margin:0;
  max-height:calc(100dvh - 32px);
  overflow:auto;
}
.login-dialog{background:#fff;}
.login-card{position:relative;}
.dialog-close{position:absolute;top:20px;right:20px;float:none;}

/* === Aziz requested refinements: true timeline, full credentials, cleaner article typography, footer cleanup === */
#career.section--soft{background:#f7f7f7;}
#career .section-head{max-width:980px;}
#career .timeline{
  display:block;
  position:relative;
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
}
#career .timeline::before{
  content:"";
  position:absolute;
  top:10px;
  bottom:10px;
  left:50%;
  width:1px;
  background:linear-gradient(180deg,transparent,var(--bw-border),var(--bw-border),transparent);
}
#career .timeline-card{
  position:relative;
  width:calc(50% - 42px);
  margin:0 0 28px;
  padding:30px 32px;
  border-radius:14px;
  box-shadow:none;
}
#career .timeline-card:nth-child(odd){margin-right:auto;}
#career .timeline-card:nth-child(even){margin-left:auto;}
#career .timeline-card::before{
  content:"";
  position:absolute;
  top:34px;
  width:14px;
  height:14px;
  border-radius:999px;
  background:var(--bw-accent);
  border:4px solid #fff;
  box-shadow:0 0 0 1px var(--bw-border),0 8px 24px rgba(39,110,241,.24);
}
#career .timeline-card:nth-child(odd)::before{right:-50px;}
#career .timeline-card:nth-child(even)::before{left:-50px;}
#career .timeline-card::after{
  content:"";
  position:absolute;
  top:40px;
  width:32px;
  height:1px;
  background:var(--bw-border);
}
#career .timeline-card:nth-child(odd)::after{right:-33px;}
#career .timeline-card:nth-child(even)::after{left:-33px;}
#career .timeline-card h3{font-size:clamp(22px,2.2vw,30px);line-height:1.12;margin-top:16px;}
#career .timeline-card .company{font-size:15px;line-height:1.45;margin-bottom:18px;}
#career .timeline-card ul{font-size:15.5px;line-height:1.72;color:var(--bw-fg-muted);}
#career .timeline-card li{margin:10px 0;}

.credential-group{border-top:1px solid var(--bw-border-subtle);padding-top:28px;}
.credential-group__label{font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--bw-fg-muted);margin-bottom:18px;}
.credentials-grid--featured{grid-template-columns:repeat(3,1fr);}
.credentials-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--bw-border-subtle);border:1px solid var(--bw-border-subtle);border-radius:14px;overflow:hidden;}
.cert-row{background:#fff;padding:22px 24px;display:grid;grid-template-columns:70px 1fr;column-gap:18px;row-gap:6px;align-items:start;}
.cert-row span{grid-row:1 / span 2;font-family:var(--font-mono);font-size:12px;color:var(--bw-accent);font-weight:700;letter-spacing:.03em;}
.cert-row h3{font-size:18px;line-height:1.25;letter-spacing:-.01em;font-weight:800;}
.cert-row p{font-size:14px;line-height:1.45;color:var(--bw-fg-muted);}

.post-reader{max-width:1180px;margin-left:auto;margin-right:auto;padding:52px 56px;}
.post-reader h1{max-width:900px;font-size:clamp(40px,5.2vw,72px);line-height:1.05;letter-spacing:-.035em;}
.post-reader .post-excerpt,.post-reader>p{max-width:930px;font-size:19px;line-height:1.7;letter-spacing:0;word-spacing:normal;color:var(--bw-fg-muted);}
.article-body{max-width:980px;margin-top:34px;font-size:18px;line-height:1.78;letter-spacing:0;word-spacing:normal;color:#202020;}
.article-body p{margin:18px 0;line-height:1.78;letter-spacing:0;word-spacing:normal;}
.article-body h2{font-size:clamp(28px,3vw,42px);line-height:1.12;margin:34px 0 12px;letter-spacing:-.02em;}
.article-body h3{font-size:clamp(22px,2.2vw,30px);line-height:1.2;margin:28px 0 10px;letter-spacing:-.015em;}
.article-body blockquote{margin:28px 0;padding:22px 28px;border-left:4px solid var(--bw-accent);background:#f2f6ff;border-radius:0 10px 10px 0;font-size:22px;line-height:1.5;font-weight:700;letter-spacing:-.01em;}
.article-body ul,.article-body ol{margin:18px 0 18px 24px;line-height:1.75;}
.article-body img{border-radius:14px;margin:26px 0;max-height:560px;object-fit:cover;width:100%;}
.post-tags{margin:18px 0 0;}
.footer-links a[href="/"],.footer-links a[href="/blog"]{display:none!important;}

@media(max-width:900px){
  #career .timeline::before{left:8px;}
  #career .timeline-card,#career .timeline-card:nth-child(even),#career .timeline-card:nth-child(odd){width:auto;margin-left:38px;margin-right:0;}
  #career .timeline-card::before,#career .timeline-card:nth-child(even)::before,#career .timeline-card:nth-child(odd)::before{left:-37px;right:auto;}
  #career .timeline-card::after,#career .timeline-card:nth-child(even)::after,#career .timeline-card:nth-child(odd)::after{left:-22px;right:auto;width:22px;}
  .credentials-grid--featured,.credentials-list{grid-template-columns:1fr;}
  .cert-row{grid-template-columns:56px 1fr;padding:20px;}
  .post-reader{padding:32px 24px;}
}


/* === Logo and updated contact refinements === */
.brand-mark{display:none!important;}
.brand-logo{width:48px;height:48px;object-fit:contain;border-radius:10px;display:block;background:#fff;}
.nav__brand{min-width:260px;text-decoration:none;}
.footer-brand{display:flex;align-items:center;gap:12px;color:#000;}
.footer-logo{width:46px;height:46px;object-fit:contain;border-radius:10px;background:#fff;}
.contact-links{grid-template-columns:1fr;}
.contact-link strong{word-break:break-word;text-align:right;}
@media(max-width:640px){.brand-logo{width:42px;height:42px}.footer-logo{width:42px;height:42px}.contact-link{align-items:flex-start;flex-direction:column}.contact-link strong{text-align:left}}

/* === Header/footer logo refinements requested by Aziz === */
.nav__brand{min-width:auto;gap:0;}
.brand-logo{width:92px;height:56px;object-fit:contain;border-radius:0;background:transparent;display:block;}
.footer-brand--signature{display:flex;align-items:center;}
.footer-signature{width:260px;max-width:min(68vw,260px);height:auto;object-fit:contain;display:block;}
.footer-brand--signature strong{display:none;}
@media(max-width:720px){.brand-logo{width:78px;height:48px}.footer-signature{width:220px}}

/* === Final refinements: larger logo hierarchy + subtle career wave pattern === */
.site-header .nav{height:84px;}
.site-header .brand-logo{width:148px;height:68px;object-fit:contain;}
.footer-signature{width:240px;max-width:min(72vw,240px);max-height:54px;height:auto;object-fit:contain;}

#career .timeline{isolation:isolate;}
#career .timeline::after{
  content:"";
  position:absolute;
  inset:-42px -90px;
  z-index:-1;
  pointer-events:none;
  opacity:.42;
  background-image:url("data:image/svg+xml,%3Csvg width='760' height='180' viewBox='0 0 760 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 96 C 95 24, 190 24, 285 96 S 475 168, 570 96 S 665 24, 760 96' fill='none' stroke='%23276EF1' stroke-width='1.2' stroke-opacity='.13'/%3E%3Cpath d='M0 132 C 95 60, 190 60, 285 132 S 475 204, 570 132 S 665 60, 760 132' fill='none' stroke='%23000000' stroke-width='1' stroke-opacity='.045'/%3E%3C/svg%3E");
  background-size:760px 180px;
  background-repeat:repeat-y;
  background-position:center top;
  mask-image:linear-gradient(180deg,transparent 0%,#000 8%,#000 92%,transparent 100%);
}
#career .timeline::before{z-index:0;}
#career .timeline-card{z-index:1;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);}

@media(max-width:720px){
  .site-header .nav{height:76px;}
  .site-header .brand-logo{width:118px;height:58px;}
  .footer-signature{width:200px;max-width:min(70vw,200px);max-height:48px;}
  #career .timeline::after{inset:-24px -20px;background-size:560px 132px;opacity:.34;background-position:left top;}
}

/* === Blog/admin fixes requested: clean admin header, full preview image, post pages === */
.admin-body .site-header .nav__brand{min-width:auto;overflow:hidden;}
.admin-body .site-header .brand-logo{width:148px;height:68px;object-fit:contain;object-position:left center;}
.admin-body .brand-text{display:none!important;}
.post-card__image-link{display:block;overflow:hidden;background:#f3f3f3;}
.post-card__image-link img{transition:transform .35s var(--ease);}
.post-card:hover .post-card__image-link img{transform:scale(1.025);}
.post-card .btn{text-align:center;justify-content:center;text-decoration:none;}
.post-page-section{padding-top:58px;background:#fafafa;}
.back-link{display:inline-flex;margin-bottom:18px;font-weight:800;color:var(--bw-accent);text-decoration:none;}
.back-link:hover{text-decoration:underline;text-underline-offset:4px;}
.post-reader--page{margin-top:0;}
.post-reader .cover,.post-reader--page .cover{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  object-position:center;
  border-radius:14px;
  margin:30px 0 22px;
  background:#f4f4f4;
}
.preview-dialog[open]{
  width:min(1120px,calc(100vw - 48px));
  max-height:calc(100dvh - 56px);
  padding:0;
  overflow:hidden;
  border-radius:22px;
}
.preview-dialog .dialog-close{
  position:sticky;
  top:18px;
  float:right;
  margin:18px 18px 0 0;
  z-index:5;
  background:#fff;
  border:1px solid rgba(39,110,241,.45);
  box-shadow:0 8px 24px rgba(0,0,0,.10);
}
.preview-dialog .post-reader{
  margin:0;
  max-height:calc(100dvh - 56px);
  overflow:auto;
  border:0;
  border-radius:22px;
  box-shadow:none;
  padding:64px 70px 70px;
}
.preview-dialog .post-reader .cover{
  max-height:none;
  height:auto;
  object-fit:contain;
}
@media(max-width:720px){
  .admin-body .site-header .brand-logo{width:118px;height:58px;}
  .preview-dialog[open]{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);}
  .preview-dialog .post-reader{padding:52px 24px 36px;}
}


/* === Tag spacing + clickable filtering === */
.tags,.post-tags{display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.post-tags{margin:22px 0 28px;}
.tag-link,.tags a,.post-tags a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:var(--bw-accent-soft);color:var(--bw-accent-active);padding:9px 15px;border-radius:999px;font-size:13px;font-weight:800;line-height:1;border:1px solid rgba(39,110,241,.08);transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease);}
.tag-link:hover,.tags a:hover,.post-tags a:hover{background:#dfe8ff;color:#113f91;transform:translateY(-1px);}
.blog-filter-note{margin:0 0 24px;padding:16px 18px;border:1px solid var(--bw-border-subtle);border-radius:14px;background:#fff;display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap;color:var(--bw-fg-muted);}
.blog-filter-note strong{color:#000;}
.blog-filter-note a{font-weight:800;color:var(--bw-accent-active);text-decoration:none;}
.blog-filter-note a:hover{text-decoration:underline;text-underline-offset:3px;}

/* === Company logos in career timeline === */
.company-with-logos{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin:10px 0 20px;
}
.company-with-logos > span{
  display:block;
  font-weight:700;
  color:var(--bw-fg-muted);
  line-height:1.45;
  max-width:62%;
}
.company-logos{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex:1;
  min-width:160px;
  flex-wrap:wrap;
}
.company-logos img{
  display:block;
  object-fit:contain;
  background:#fff;
  border:1px solid var(--bw-border-subtle);
  border-radius:10px;
  padding:7px 9px;
  height:40px;
  width:auto;
  max-width:138px;
  filter:grayscale(.08);
}
.company-logos--single img{height:46px;max-width:178px;}
.company-logos--dual img{height:38px;max-width:132px;}
.company-logos--triple img{height:36px;max-width:118px;padding:6px 8px;}
#career .timeline-card .company-with-logos{font-size:15px;}
@media(max-width:900px){
  .company-with-logos{display:block;}
  .company-with-logos > span{max-width:none;}
  .company-logos{justify-content:flex-start;margin-top:12px;}
}
@media(max-width:520px){
  .company-logos img,.company-logos--single img,.company-logos--dual img,.company-logos--triple img{height:34px;max-width:118px;}
}

/* === Final career logo placement + header/tag refinements === */
.site-header .brand-logo{width:122px;height:58px;object-fit:contain;}
.admin-body .site-header .brand-logo{width:122px;height:58px;object-fit:contain;object-position:left center;}
@media(max-width:720px){.site-header .brand-logo,.admin-body .site-header .brand-logo{width:104px;height:50px;}}

.tags,.post-tags{gap:7px;}
.tag-link,.tags a,.post-tags a{padding:8px 13px;}

#career .timeline-card{position:relative;}
#career .timeline-card .company{max-width:100%;}
.company-with-logos,.company-logos{display:none!important;}
.career-logo-outside{
  position:absolute;
  top:128px;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  width:280px;
  min-height:58px;
  pointer-events:none;
}
#career .timeline-card:nth-child(odd) .career-logo-outside{left:calc(100% + 92px);}
#career .timeline-card:nth-child(even) .career-logo-outside{right:calc(100% + 92px);}
.career-logo-outside img{
  display:block;
  object-fit:contain;
  height:52px;
  max-width:190px;
  width:auto;
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
  padding:0!important;
  box-shadow:none!important;
  filter:none!important;
}
.career-logo-outside--dual{gap:22px;}
.career-logo-outside--dual img{height:48px;max-width:150px;}
.career-logo-outside--triple{gap:18px;flex-wrap:wrap;width:320px;}
.career-logo-outside--triple img{height:44px;max-width:125px;}
.career-logo-outside--single img{height:54px;max-width:210px;}

@media(max-width:1180px){
  .career-logo-outside{width:220px;gap:12px;}
  #career .timeline-card:nth-child(odd) .career-logo-outside{left:calc(100% + 58px);}
  #career .timeline-card:nth-child(even) .career-logo-outside{right:calc(100% + 58px);}
  .career-logo-outside img{height:42px;max-width:145px;}
  .career-logo-outside--dual img{height:40px;max-width:112px;}
  .career-logo-outside--triple{width:250px;gap:12px;}
  .career-logo-outside--triple img{height:36px;max-width:95px;}
}
@media(max-width:900px){
  .career-logo-outside{
    position:static;
    width:auto;
    min-height:0;
    justify-content:flex-start;
    margin:14px 0 4px;
    pointer-events:none;
  }
  .career-logo-outside img{height:36px;max-width:130px;}
  .career-logo-outside--dual img{height:34px;max-width:105px;}
  .career-logo-outside--triple img{height:32px;max-width:86px;}
}

/* Enhanced individual post page typography */
.post-page-section{padding-top:78px;background:linear-gradient(180deg,#fff 0%,#fafafa 100%);}
.back-link{display:inline-flex;align-items:center;margin-bottom:26px;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--bw-accent);text-decoration:none;font-weight:700;}
.post-reader--page{padding:0;max-width:1120px;background:transparent;border:none;box-shadow:none;}
.post-hero{padding:18px 0 34px;border-bottom:1px solid var(--bw-border-subtle);}
.post-date{display:block;font-family:var(--font-mono);font-size:13px;font-weight:700;letter-spacing:.14em;color:var(--bw-accent);margin-bottom:22px;}
.post-reader--page .post-title{max-width:980px;margin:0;font-size:clamp(46px,6.2vw,88px);line-height:.98;letter-spacing:-.055em;font-weight:800;color:#050505;text-wrap:balance;}
.post-reader--page .post-excerpt{max-width:860px;margin:24px 0 0;font-size:clamp(19px,1.55vw,25px);line-height:1.58;color:#6b6b6b;letter-spacing:-.008em;text-wrap:pretty;}
.post-reader--page .post-tags{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:30px;}
.post-cover{margin:38px 0 0;border-radius:18px;overflow:hidden;background:#f0f0f0;border:1px solid var(--bw-border-subtle);}
.post-cover .cover{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:0;margin:0;}
.post-reader--page .article-body{max-width:900px;margin-top:46px;font-size:20px;line-height:1.82;color:#202020;}
.post-reader--page .article-body p{line-height:1.82;margin:22px 0;}
@media(max-width:700px){.post-page-section{padding-top:52px}.post-reader--page .post-title{font-size:clamp(40px,12vw,58px)}.post-reader--page .post-excerpt{font-size:19px}.post-reader--page .article-body{font-size:18px}.post-cover{border-radius:14px}}

/* Final refinement: transparent, borderless career timeline logos + smaller header mark */
.site-header .brand-logo,
.admin-body .site-header .brand-logo{
  width:104px !important;
  height:50px !important;
  object-fit:contain !important;
  object-position:left center !important;
}

#career .timeline-card{position:relative;}
.career-logo-outside{
  position:absolute !important;
  top:122px !important;
  z-index:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:380px !important;
  min-height:86px !important;
  gap:28px !important;
  pointer-events:none !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
#career .timeline-card:nth-child(odd) .career-logo-outside{left:calc(100% + 86px) !important;right:auto !important;}
#career .timeline-card:nth-child(even) .career-logo-outside{right:calc(100% + 86px) !important;left:auto !important;}
.career-logo-outside img{
  display:block !important;
  object-fit:contain !important;
  width:auto !important;
  height:68px !important;
  max-width:260px !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
  filter:none !important;
}
.career-logo-outside--single img{height:76px !important;max-width:300px !important;}
.career-logo-outside--dual{width:420px !important;gap:34px !important;}
.career-logo-outside--dual img{height:62px !important;max-width:210px !important;}
.career-logo-outside--triple{width:500px !important;gap:26px 34px !important;flex-wrap:wrap !important;align-content:center !important;}
.career-logo-outside--triple img{height:56px !important;max-width:190px !important;}

@media(max-width:1180px){
  .site-header .brand-logo,.admin-body .site-header .brand-logo{width:96px !important;height:46px !important;}
  .career-logo-outside{width:300px !important;gap:20px !important;top:120px !important;}
  #career .timeline-card:nth-child(odd) .career-logo-outside{left:calc(100% + 56px) !important;}
  #career .timeline-card:nth-child(even) .career-logo-outside{right:calc(100% + 56px) !important;}
  .career-logo-outside img{height:54px !important;max-width:190px !important;}
  .career-logo-outside--single img{height:62px !important;max-width:240px !important;}
  .career-logo-outside--dual{width:310px !important;gap:22px !important;}
  .career-logo-outside--dual img{height:50px !important;max-width:150px !important;}
  .career-logo-outside--triple{width:330px !important;gap:16px 20px !important;}
  .career-logo-outside--triple img{height:42px !important;max-width:130px !important;}
}

@media(max-width:900px){
  .career-logo-outside{
    position:static !important;
    width:auto !important;
    min-height:0 !important;
    justify-content:flex-start !important;
    margin:18px 0 0 !important;
    gap:18px !important;
  }
  .career-logo-outside img,.career-logo-outside--single img{height:42px !important;max-width:160px !important;}
  .career-logo-outside--dual img{height:38px !important;max-width:130px !important;}
  .career-logo-outside--triple img{height:34px !important;max-width:110px !important;}
}

/* Blog image handling fixes */
.cover-preview{margin-top:12px;border:1px solid var(--bw-border-subtle);border-radius:14px;background:#f7f7f7;min-height:92px;display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--bw-fg-muted);font-size:14px}
.cover-preview img{width:100%;max-height:260px;object-fit:contain;background:#fff}
.post-card__image-link{height:260px;background:#f3f3f3;display:block;overflow:hidden}
.post-card__image-link img,.post-card img{width:100%;height:100%;object-fit:cover;background:#f3f3f3}
.post-cover{background:#fff;border:0;border-top:1px solid var(--bw-border-subtle);border-radius:0;overflow:visible;margin:42px 0 0;padding-top:34px}
.post-cover .cover{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:18px;background:#fff;margin:0 auto}
.article-image{margin:30px 0}
.article-image img,.article-body img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:18px;background:#fff;margin:0 auto}
.article-image figcaption{font-size:14px;color:var(--bw-fg-muted);margin-top:10px;text-align:center}
.preview-dialog .post-cover{margin-top:28px;padding-top:22px}
.preview-dialog .post-cover .cover{max-height:540px;object-fit:contain}
.form-message[data-type="error"]{color:#b00020}
@media(max-width:700px){.post-card__image-link{height:220px}.post-cover .cover,.article-image img,.article-body img{border-radius:14px}}

/* Header logo transparency fix: use transparent PNG asset, no background box, same visual size */
.site-header .brand-logo,
.admin-body .site-header .brand-logo{
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  width: 104px !important;
  height: 50px !important;
  object-fit: contain !important;
  object-position: left center !important;
}
.nav__brand{
  background: transparent !important;
}

/* Mobile image containment fix: prevent tall grey media box on narrow screens */
@media (max-width: 700px){
  .feature-row__media{
    min-height:0 !important;
    aspect-ratio:16 / 10;
    background:#fff;
  }
  .feature-row__media img{
    display:block;
    width:100%;
    height:100% !important;
    object-fit:cover;
    object-position:center center;
  }
}

/* === Education & Licenses logos === */
.credential--logo{
  position:relative;
  min-height:176px;
  padding-right:190px;
}
.credential-logo{
  position:absolute;
  right:28px;
  top:50%;
  transform:translateY(-50%);
  width:138px;
  max-height:56px;
  object-fit:contain;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  display:block;
}
.credential--logo h3,
.credential--logo p,
.credential--logo span{
  position:relative;
  z-index:1;
}
@media(max-width:900px){
  .credential--logo{padding-right:30px;padding-bottom:100px;min-height:230px;}
  .credential-logo{left:30px;right:auto;top:auto;bottom:28px;transform:none;width:150px;max-height:60px;}
}
@media(max-width:520px){
  .credential-logo{width:136px;}
  .credential--logo{min-height:220px;}
}


/* === Education logo layout fix: controlled, borderless, transparent, and balanced === */
.credentials-grid--featured{
  align-items:stretch;
}
.credential--logo{
  display:flex !important;
  flex-direction:column;
  justify-content:flex-start;
  min-height:260px !important;
  padding:34px 34px 32px !important;
  position:relative;
  overflow:hidden;
}
.credential-logo{
  position:static !important;
  transform:none !important;
  display:block !important;
  width:auto !important;
  max-width:260px !important;
  height:72px !important;
  max-height:72px !important;
  object-fit:contain !important;
  object-position:left center !important;
  margin:0 0 30px 0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.credential--logo:nth-child(2) .credential-logo,
.credential--logo:nth-child(3) .credential-logo{
  max-width:210px !important;
}
.credential--logo span{margin-top:auto;}
.credential--logo h3{margin-top:16px !important;}
@media(max-width:900px){
  .credential--logo{min-height:230px !important;padding:30px !important;}
  .credential-logo{height:64px !important;max-height:64px !important;max-width:240px !important;margin-bottom:26px !important;}
}
@media(max-width:520px){
  .credential--logo{min-height:220px !important;}
  .credential-logo{height:58px !important;max-height:58px !important;max-width:220px !important;}
}

/* Premium Notion-style publishing studio */
.editor-panel{padding:0;overflow:hidden}.editor-panel .form-row,.editor-panel>label,.editor-panel>.text-input,.editor-panel>.text-area,.editor-panel>.cover-preview,.editor-panel>.form-actions,.editor-panel>.form-message,.editor-panel>.note-card{margin-left:26px;margin-right:26px}.editor-panel .form-row{margin-top:26px}.editor-studio{margin-top:24px;border-top:1px solid var(--bw-border-subtle);background:#fbfbfb}.editor-studio__top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 10px}.editor-help{margin-top:8px;color:var(--bw-fg-muted);line-height:1.55;max-width:720px}.editor-toolbar--notion{position:sticky;top:76px;z-index:5;display:flex;gap:10px;align-items:center;background:rgba(250,250,250,.92);backdrop-filter:blur(14px);border-top:1px solid var(--bw-border-subtle);border-bottom:1px solid var(--bw-border-subtle);border-radius:0;margin:0;padding:12px 26px;box-shadow:0 10px 30px rgba(0,0,0,.035)}.toolbar-group{display:flex;align-items:center;gap:6px;padding:4px;background:#fff;border:1px solid var(--bw-border-subtle);border-radius:999px}.editor-toolbar--notion button,.editor-toolbar--notion label.upload-pill{height:34px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;border-radius:999px;padding:0 12px;font-size:12px;font-weight:800;color:#111;cursor:pointer;white-space:nowrap}.editor-toolbar--notion button:hover,.editor-toolbar--notion label.upload-pill:hover{background:var(--bw-accent-soft);color:#0f3e93}.editor-shell{position:relative;background:#fff;border-top:1px solid var(--bw-border-subtle)}.editor-side-rail{position:absolute;left:18px;top:26px;display:flex;flex-direction:column;gap:8px;color:#aaa;font-family:var(--font-mono);font-size:18px;z-index:2}.editor-side-rail span{width:28px;height:28px;display:grid;place-items:center;border-radius:8px}.editor-side-rail span:hover{background:#f1f1f1;color:#111}.notion-editor{min-height:560px;border:0;border-radius:0;padding:34px 46px 38px 70px;background:#fff;font-size:20px;line-height:1.85;color:#1f1f1f}.notion-editor:focus{outline:none;border:0}.notion-editor:empty:before{color:#a0a0a0}.notion-editor p{margin:0 0 16px}.notion-editor h2{font-size:38px;line-height:1.15;letter-spacing:-.025em;margin:36px 0 14px}.notion-editor h3{font-size:28px;line-height:1.2;letter-spacing:-.02em;margin:28px 0 12px}.notion-editor blockquote{border-left:4px solid var(--bw-accent);background:var(--bw-accent-soft);padding:18px 22px;border-radius:0 14px 14px 0;margin:26px 0;font-weight:750}.notion-editor ul,.notion-editor ol{padding-left:28px;margin:12px 0 22px}.notion-editor li{margin:8px 0}.notion-editor a{color:var(--bw-accent);text-decoration-thickness:1px;text-underline-offset:4px}.article-callout{background:#f6f8ff;border:1px solid #dbe7ff;border-left:4px solid var(--bw-accent);border-radius:14px;padding:18px 20px;margin:24px 0;color:#10233f}.article-image{margin:30px 0}.article-image img{display:block;width:100%;max-height:620px;object-fit:contain;background:#f4f4f4;border-radius:18px}.article-image figcaption{font-size:13px;color:var(--bw-fg-muted);margin-top:8px}.slash-menu{position:absolute;left:70px;top:72px;width:220px;background:#fff;border:1px solid var(--bw-border-subtle);border-radius:16px;box-shadow:var(--shadow);padding:8px;display:none;z-index:10}.slash-menu.open{display:grid;gap:4px}.slash-menu button{border:0;background:#fff;border-radius:10px;padding:10px 12px;text-align:left;font-weight:750;cursor:pointer}.slash-menu button:hover{background:var(--bw-accent-soft);color:#0f3e93}.editor-status{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 26px;border-top:1px solid var(--bw-border-subtle);font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--bw-fg-muted);background:#fafafa}.cover-preview{margin-top:10px;background:#f4f4f4;border:1px solid var(--bw-border-subtle);border-radius:18px;min-height:120px;display:grid;place-items:center;color:var(--bw-fg-muted);overflow:hidden}.cover-preview img{width:100%;height:auto;max-height:260px;object-fit:contain;display:block}.form-message[data-type="error"]{color:#b00020}.preview-dialog{width:min(1080px,calc(100% - 32px));max-height:86vh;overflow:auto}.preview-dialog .dialog-close{position:sticky;top:0;float:right;z-index:4}.preview-dialog .post-reader{box-shadow:none;margin:0;border:0}
@media(max-width:760px){.editor-studio__top{flex-direction:column}.editor-toolbar--notion{top:64px;overflow:auto;flex-wrap:nowrap}.toolbar-group{flex:0 0 auto}.notion-editor{padding:26px 22px 34px 48px;font-size:18px}.editor-side-rail{left:10px}.editor-status{flex-direction:column;align-items:flex-start}.form-row.two{grid-template-columns:1fr}}

/* === Social sharing and comments for post pages === */
.share-section{margin:58px 0 0;padding:28px;border:1px solid var(--bw-border-subtle);border-radius:22px;background:#f7f7f7}
.share-section__label{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--bw-fg-muted);margin-bottom:16px}
.share-buttons{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.share-btn{height:50px;border-radius:0;border:0;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:850;font-size:15px;color:#fff;background:#111;cursor:pointer;transition:transform .18s ease,opacity .18s ease}
.share-btn:hover{transform:translateY(-2px);opacity:.92}
.share-btn--facebook{background:#3b5998}.share-btn--x{background:#000}.share-btn--linkedin{background:#0077b5}.share-btn--whatsapp{background:#25d366;color:#071b0b}.share-btn--copy{background:#1f2937}
.comments-section{margin:62px 0 0;padding-top:42px;border-top:1px solid var(--bw-border-subtle)}
.comments-head h2{font-size:clamp(28px,3.6vw,44px);letter-spacing:-.025em;margin:10px 0 8px}.comments-head p:not(.eyebrow){color:var(--bw-fg-muted);font-size:18px}.required,.comment-form b{color:#d00000}.comment-form{margin-top:28px}.comment-textarea{min-height:190px;resize:vertical;background:#fff}.comment-form__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}.comment-form__grid label span{display:block;margin-bottom:8px;font-weight:750}.save-commenter{display:flex;align-items:center;gap:10px;margin:22px 0;color:var(--bw-fg-muted);line-height:1.45}.save-commenter input{width:18px;height:18px}.comment-submit{min-width:220px}.comments-list{display:grid;gap:14px;margin-top:34px}.comment-card{border:1px solid var(--bw-border-subtle);border-radius:18px;background:#fff;padding:20px}.comment-card__head{display:flex;justify-content:space-between;gap:18px;margin-bottom:10px}.comment-card__head time{font-family:var(--font-mono);font-size:12px;color:var(--bw-accent)}.comment-card p{color:#222;line-height:1.65}.comment-card a{color:var(--bw-accent);font-size:14px}.comments-empty{color:var(--bw-fg-muted);font-style:italic}
@media(max-width:800px){.share-buttons{grid-template-columns:1fr 1fr}.comment-form__grid{grid-template-columns:1fr}.share-section{padding:18px}.share-btn{height:46px}.comments-section{margin-top:42px}}

/* Related posts on article pages */
.related-posts{margin:64px 0 0;padding-top:42px;border-top:1px solid var(--bw-border-subtle)}
.related-posts__head{margin-bottom:22px}
.related-posts__head h2{font-size:clamp(30px,3.4vw,46px);letter-spacing:-.025em;line-height:1.08;margin:8px 0}
.related-posts__head p:not(.eyebrow){color:var(--bw-fg-muted);font-size:18px;line-height:1.6}
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.related-card{background:#fff;border:1px solid var(--bw-border-subtle);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .22s var(--ease),box-shadow .22s var(--ease)}
.related-card:hover{transform:translateY(-3px);box-shadow:0 22px 70px rgba(0,0,0,.08)}
.related-card__image{height:150px;display:block;background:#f3f3f3;overflow:hidden}
.related-card__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s var(--ease)}
.related-card:hover .related-card__image img{transform:scale(1.03)}
.related-card__body{padding:20px;display:flex;flex-direction:column;gap:12px;flex:1}
.related-card time{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--bw-accent);font-weight:800}
.related-card h3{font-size:22px;line-height:1.12;letter-spacing:-.018em;margin:0}
.related-card h3 a{color:#000;text-decoration:none}
.related-card h3 a:hover{color:var(--bw-accent)}
.related-card p{color:var(--bw-fg-muted);font-size:15px;line-height:1.55;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.post-tags--compact{gap:6px;margin-top:auto}
.post-tags--compact .tag-link{font-size:12px;padding:7px 11px}
@media(max-width:1100px){.related-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.related-grid{grid-template-columns:1fr}.related-card__image{height:190px}.related-posts{margin-top:44px;padding-top:32px}}

/* === Upgraded blog publishing studio: compact, Notion-like, HTML-preserving === */
.admin-body--studio{background:#f7f7f7;color:#111}.admin-topbar .nav{height:72px}.admin-studio-page .admin-hero--compact{padding:54px 0 34px;background:#fff}.admin-head--studio{align-items:center}.admin-head--studio .h-display{font-size:clamp(42px,5vw,72px);line-height:.98}.admin-head--studio .p-lg{max-width:840px;color:#666}.admin-section--studio{padding-top:26px}.admin-grid--studio{grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);align-items:start;gap:24px}.editor-panel--studio,.posts-panel--studio{padding:0;border-radius:22px;overflow:hidden;background:#fff;border:1px solid #e7e7e7;box-shadow:0 24px 90px rgba(0,0,0,.05)}.posts-panel--studio{position:sticky;top:92px;padding:26px;min-height:420px}.studio-card{padding:26px 30px;border-bottom:1px solid #ececec;background:#fff}.studio-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.studio-card__head h2{font-size:28px;line-height:1.05;letter-spacing:-.025em;margin-top:6px}.studio-chip{display:inline-flex;border:1px solid #e5e5e5;background:#fafafa;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;color:#555}.editor-panel--studio .form-row,.editor-panel--studio>label,.editor-panel--studio>.text-input,.editor-panel--studio>.text-area,.editor-panel--studio>.cover-preview,.editor-panel--studio>.form-actions,.editor-panel--studio>.form-message,.editor-panel--studio>.note-card{margin-left:0;margin-right:0}.editor-panel--studio .form-row{margin-top:0}.editor-panel--studio .text-input,.editor-panel--studio .text-area{border-radius:12px;background:#fff;border-color:#dedede;font-size:16px;padding:14px 15px}.editor-panel--studio .text-area{min-height:88px}.editor-panel--studio .field-label{font-size:11px;letter-spacing:.16em;margin:16px 0 8px;color:#777}.file-drop{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px dashed #cfcfcf;border-radius:14px;background:#fbfbfb;padding:14px 16px;cursor:pointer;transition:border-color .2s ease,background .2s ease}.file-drop:hover{border-color:var(--bw-accent);background:#f6f9ff}.file-drop span{font-weight:800}.file-drop small{color:#777}.file-drop input{display:none}.studio-card--media .cover-preview{margin-top:14px;min-height:130px;border-radius:16px;background:#f6f6f6}.editor-studio--premium{margin:0;background:#fff;border-top:0}.editor-studio--premium .editor-studio__top{padding:30px;border-bottom:1px solid #eee;background:linear-gradient(180deg,#fff,#fbfbfb)}.editor-studio--premium .editor-studio__top h2{font-size:34px;line-height:1.05;margin-top:8px}.editor-mode-card{display:flex;flex-direction:column;gap:10px;align-items:flex-end}.mode-toggle{display:flex;align-items:center;gap:9px;border:1px solid #e2e2e2;background:#fff;border-radius:999px;padding:10px 13px;font-size:13px;font-weight:800;white-space:nowrap}.mode-toggle input{width:16px;height:16px;accent-color:var(--bw-accent)}.editor-toolbar--notion{top:72px;padding:10px 18px;gap:8px;background:rgba(255,255,255,.94);border-color:#eee;box-shadow:0 12px 36px rgba(0,0,0,.04);overflow:auto;flex-wrap:nowrap}.toolbar-group{border-radius:14px;background:#f8f8f8;border-color:#e7e7e7;gap:3px;flex:0 0 auto}.editor-toolbar--notion button,.editor-toolbar--notion label.upload-pill{height:32px;font-size:12px;padding:0 10px;border-radius:10px}.editor-shell--premium{border-top:0;min-height:620px}.editor-side-rail{left:17px;top:27px}.notion-editor{min-height:620px;padding:38px 46px 48px 66px;font-size:19px;line-height:1.76;color:#202020}.notion-editor.hidden{display:none}.notion-editor h1,.article-body h1{font-size:46px;line-height:1.05;margin:34px 0 14px;letter-spacing:-.035em}.notion-editor h2{font-size:34px}.notion-editor h3{font-size:26px}.notion-editor table,.article-body table{width:100%;border-collapse:collapse;margin:26px 0;border:1px solid #e2e2e2;background:#fff;font-size:16px;line-height:1.5}.notion-editor th,.notion-editor td,.article-body th,.article-body td{border:1px solid #e5e5e5;padding:12px 14px;vertical-align:top}.notion-editor th,.article-body th{background:#f7f7f7;font-weight:800}.article-table-wrap{overflow-x:auto;margin:28px 0}.notion-editor pre,.article-body pre{background:#111;color:#fff;border-radius:16px;padding:18px;overflow:auto;font-size:14px}.html-source{display:none;width:100%;min-height:620px;border:0;border-top:1px solid #eee;background:#0d0d0d;color:#f6f6f6;font:14px/1.7 var(--font-mono);padding:30px 34px;resize:vertical;outline:none}.html-source.open{display:block}.html-actions{display:none;gap:10px;padding:14px 28px;border-top:1px solid #222;background:#101010}.html-actions.open{display:flex}.editor-status{padding:13px 30px}.form-actions--studio{padding:24px 30px;margin-top:0;border-top:1px solid #eee;background:#fff}.form-actions--studio .btn{min-width:150px;height:48px;padding:0 22px}.form-message{padding:0 30px}.note-card--compact{margin:0 30px 30px!important;padding:14px 16px!important;font-size:14px;line-height:1.45;border-radius:14px}.admin-post-list .muted{padding:14px 0}.admin-post-item{border-radius:16px;padding:18px;background:#fff}.admin-post-item h3{font-size:21px}.item-actions button{border-radius:12px}.preview-dialog{border-radius:24px}.preview-dialog .post-reader{padding:34px}.preview-dialog .dialog-close{position:sticky;top:14px;margin-left:auto;float:none;display:grid;place-items:center}
@media(max-width:1100px){.admin-grid--studio{grid-template-columns:1fr}.posts-panel--studio{position:static}.editor-mode-card{align-items:flex-start}.editor-studio--premium .editor-studio__top{flex-direction:column}.admin-head--studio{display:block}.admin-head--studio .btn{margin-top:20px}}
@media(max-width:760px){.admin-studio-page .admin-hero--compact{padding:36px 0 24px}.studio-card{padding:20px}.editor-studio--premium .editor-studio__top{padding:22px}.editor-toolbar--notion{top:64px}.notion-editor{padding:28px 18px 34px 46px;min-height:460px;font-size:17px}.html-source{min-height:460px;padding:22px 18px}.form-actions--studio{padding:20px}.form-actions--studio .btn{width:100%}.note-card--compact{margin:0 20px 22px!important}.admin-grid--studio{gap:18px}.file-drop{display:block}.file-drop small{display:block;margin-top:4px}}

/* === Final editor rebuild: smoother Notion-like workflow + HTML file upload === */
.admin-grid--studio{grid-template-columns:minmax(0,1.55fr) minmax(320px,.45fr)!important;gap:28px!important}.editor-panel--studio{border-radius:24px!important}.posts-panel--studio{border-radius:24px!important}.studio-card{padding:28px 34px!important}.studio-card__head h2{font-size:25px!important;letter-spacing:-.02em}.editor-mode-card--import{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important;gap:10px!important;max-width:470px}.html-upload-btn{cursor:pointer}.editor-help{font-size:15px!important;max-width:780px!important}.editor-studio--premium .editor-studio__top{padding:28px 34px!important;display:flex!important;align-items:flex-start!important;gap:26px!important}.editor-studio--premium .editor-studio__top h2{font-size:30px!important}.editor-toolbar--notion{padding:12px 18px!important;gap:9px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 14px 42px rgba(0,0,0,.045)!important}.toolbar-group{background:#fff!important;border:1px solid #e4e4e4!important;box-shadow:0 1px 0 rgba(0,0,0,.03)!important}.toolbar-group--advanced{margin-left:auto}.editor-toolbar--notion button,.editor-toolbar--notion label.upload-pill{height:36px!important;padding:0 12px!important;color:#151515!important}.editor-toolbar--notion button:hover,.editor-toolbar--notion label.upload-pill:hover{background:#eef4ff!important;color:#0f4bb8!important}.editor-shell--premium{min-height:560px!important;background:#fff!important}.notion-editor{min-height:560px!important;max-width:none!important;background:#fff!important}.notion-editor:focus{box-shadow:inset 3px 0 0 rgba(39,110,241,.75)}.notion-editor:empty:before{content:attr(data-placeholder);color:#9b9b9b}.html-source{background:#fff!important;color:#111!important;border-top:1px solid #e8e8e8!important;font-size:14px!important;line-height:1.65!important;min-height:420px!important}.html-source.open{box-shadow:inset 3px 0 0 rgba(39,110,241,.75)}.html-source::placeholder{color:#777}.html-actions{background:#fff!important;border-top:1px solid #e8e8e8!important;padding:16px 28px!important}.editor-status{background:#fafafa!important;padding:12px 34px!important}.form-actions--studio{padding:24px 34px!important}.note-card--compact{font-size:13px!important;line-height:1.45!important;margin:0 34px 30px!important;padding:13px 15px!important;background:#f5f8ff!important}.cover-preview{border-radius:14px!important;min-height:104px!important}.file-drop{min-height:64px!important}.selection-bubble{position:absolute;z-index:30;display:none;align-items:center;gap:3px;padding:6px;background:#111;color:#fff;border-radius:14px;box-shadow:0 18px 56px rgba(0,0,0,.22);transform:translateX(-50%);white-space:nowrap}.selection-bubble.open{display:flex}.selection-bubble button{height:30px;border:0;background:transparent;color:#fff;border-radius:9px;padding:0 9px;font-weight:800;font-size:12px;cursor:pointer}.selection-bubble button:hover{background:rgba(255,255,255,.16)}.slash-menu{border-radius:14px!important;box-shadow:0 22px 70px rgba(0,0,0,.14)!important}.admin-post-list{max-height:calc(100vh - 230px);overflow:auto;padding-right:4px}.admin-post-item{transition:background .18s ease, transform .18s ease}.admin-post-item:hover{background:#fafafa;transform:translateY(-1px)}
@media(max-width:1100px){.editor-mode-card--import{justify-content:flex-start!important}.toolbar-group--advanced{margin-left:0}.editor-studio--premium .editor-studio__top{flex-direction:column!important}.admin-grid--studio{grid-template-columns:1fr!important}.admin-post-list{max-height:none}}
@media(max-width:760px){.studio-card{padding:22px!important}.editor-studio--premium .editor-studio__top{padding:22px!important}.editor-mode-card--import{display:grid!important;grid-template-columns:1fr!important;width:100%}.mode-toggle,.html-upload-btn,.editor-mode-card--import .btn{width:100%;justify-content:center}.toolbar-group--advanced{margin-left:0}.selection-bubble{display:none!important}.note-card--compact{margin:0 20px 24px!important}.editor-toolbar--notion{top:64px!important}.notion-editor{min-height:480px!important}}

/* Exact uploaded HTML article blocks */
.html-document-embed{
  margin: 28px 0;
  border: 1px solid #e4e4e4;
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 18px 60px rgba(0,0,0,.05);
}
.html-document-embed__bar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:12px 16px;
  border-bottom:1px solid #ececec;
  background:linear-gradient(180deg,#fff,#fafafa);
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#666;
}
.html-document-embed__bar strong{color:#111;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;max-width:65%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.html-document-frame{
  display:block;
  width:100%;
  min-height:560px;
  border:0;
  background:#fff;
}
.notion-editor .html-document-embed{cursor:default;outline:0;}
.notion-editor .html-document-embed:focus-within{box-shadow:0 0 0 3px rgba(39,110,241,.16),0 18px 60px rgba(0,0,0,.05)}
.notion-editor .html-document-frame{pointer-events:auto;}
@media(max-width:700px){.html-document-frame{min-height:520px}.html-document-embed__bar{align-items:flex-start;flex-direction:column}}

/* === Exact HTML post display refinement: hide technical wrapper and align embedded article === */
.html-document-embed__bar{display:none!important;}
.post-reader--page .article-body--html-embed{
  max-width:min(1120px,100%)!important;
  width:100%!important;
  margin:46px auto 0!important;
}
.post-reader--page .article-body--html-embed .html-document-embed{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto 64px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  background:transparent!important;
}
.post-reader--page .article-body--html-embed .html-document-frame{
  width:100%!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
}
.preview-dialog .article-body--html-embed,
.notion-editor .article-body--html-embed{max-width:100%!important;}
.preview-dialog .html-document-embed,
.notion-editor .html-document-embed{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
@media(max-width:700px){
  .post-reader--page .article-body--html-embed{margin-top:32px!important;}
  .post-reader--page .article-body--html-embed .html-document-embed{margin-bottom:44px!important;}
}


/* --- Final blog/card/editor refinements --- */
.cover-controls{margin-top:14px;border:1px solid #e7e7e7;border-radius:16px;background:#fff;padding:14px 16px;display:grid;gap:12px}
.cover-controls__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid #eee;padding-bottom:10px}
.cover-controls__head strong{font-size:14px;letter-spacing:-.01em}.cover-controls__head span{font-size:12px;color:#777;max-width:360px;text-align:right}.cover-controls label{display:grid;grid-template-columns:160px 1fr;gap:14px;align-items:center;font-size:12px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:#777}.cover-controls input[type=range]{width:100%;accent-color:var(--bw-accent)}
.cover-preview{overflow:hidden;position:relative}.cover-preview img{width:100%;height:100%;min-height:160px;object-fit:cover!important;object-position:var(--cover-x,50%) var(--cover-y,50%)!important;transform:scale(var(--cover-zoom,1));transform-origin:var(--cover-x,50%) var(--cover-y,50%);transition:object-position .12s ease,transform .12s ease;border-radius:inherit}
.posts-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(255px,1fr))!important;gap:28px!important;align-items:start}.post-card{border-radius:16px!important;box-shadow:none!important}.post-card:hover{box-shadow:0 12px 34px rgba(0,0,0,.06)!important}.post-card__image-link{display:block;height:176px;background:#f1f1f1;overflow:hidden}.post-card__image-link img,.post-card img{height:100%!important;width:100%!important;object-fit:cover!important;object-position:var(--cover-x,50%) var(--cover-y,50%)!important;transform:scale(var(--cover-zoom,1));transform-origin:var(--cover-x,50%) var(--cover-y,50%);transition:transform .2s ease}.post-card__body{padding:20px!important;gap:12px!important}.post-card h2{font-size:22px!important;line-height:1.12!important}.post-card p{font-size:15px!important;line-height:1.5!important}.post-card .btn{height:42px!important;padding:0 16px!important;font-size:14px!important}.post-card time{font-size:11px!important;letter-spacing:.12em!important}.blog-empty{grid-column:1/-1;text-align:center;padding:80px 20px;color:#111}.blog-empty h2{font-size:clamp(28px,4vw,52px);line-height:1.05;letter-spacing:-.035em;max-width:780px;margin:auto}
.post-tags{display:flex!important;flex-wrap:wrap!important;gap:10px 18px!important;align-items:center!important}.tag-link,.post-tags a.tag-link{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;font-family:var(--font-mono)!important;font-size:13px!important;line-height:1.25!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--bw-accent)!important;font-weight:600!important;text-decoration:none!important}.tag-link:hover,.post-tags a.tag-link:hover{text-decoration:underline!important;text-underline-offset:5px!important;text-decoration-thickness:1px!important}.post-card .post-tags{gap:8px 14px!important;margin-top:2px}.post-card .tag-link{font-size:11px!important}.related-card .tag-link{font-size:11px!important}.post-hero .post-tags{margin-top:22px}.post-date:empty{display:none!important}
@media(max-width:900px){.posts-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important}.cover-controls label{grid-template-columns:1fr}.cover-controls__head{display:block}.cover-controls__head span{display:block;text-align:left;margin-top:5px}.post-card__image-link{height:190px}}
@media(max-width:620px){.posts-grid{grid-template-columns:1fr!important;gap:24px!important}.post-card__image-link{height:220px}.post-card h2{font-size:25px!important}.post-card p{font-size:17px!important}.post-card__body{padding:24px!important}}

/* --- Post page refinement: remove duplicate rules above cover image and tighten share spacing --- */
.post-reader--page .post-hero{
  border-bottom:0!important;
  padding-bottom:28px!important;
}
.post-reader--page .post-cover{
  border-top:0!important;
  margin-top:18px!important;
  padding-top:0!important;
}
.post-reader--page .post-cover .cover{
  margin-top:0!important;
}
.post-reader--page .article-body{
  margin-bottom:0!important;
}
.post-reader--page .share-section{
  margin-top:30px!important;
}
.post-reader--page .article-body--html-embed{
  margin-top:28px!important;
}
.post-reader--page .article-body--html-embed .html-document-embed{
  margin-bottom:22px!important;
}
@media(max-width:700px){
  .post-reader--page .post-cover{margin-top:14px!important;}
  .post-reader--page .share-section{margin-top:24px!important;}
}

/* === Blog card sizing, tag scale, and live cover-framing preview fixes === */
.cover-preview--full{min-height:160px!important;background:#f7f7f7!important;border-radius:16px!important;overflow:hidden!important;display:grid!important;place-items:center!important}
.cover-preview--full img{width:100%!important;height:auto!important;max-height:260px!important;min-height:0!important;object-fit:contain!important;object-position:center!important;transform:none!important;background:#fff!important;border-radius:14px!important}
.cover-card-preview{margin-top:18px;border:1px solid #e7e7e7;border-radius:18px;background:#fff;padding:16px;display:grid;gap:14px;box-shadow:0 8px 26px rgba(0,0,0,.035)}
.mini-card-label{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid #eee;padding-bottom:12px}
.mini-card-label strong{font-size:14px;letter-spacing:-.01em}.mini-card-label span{font-size:12px;color:#777;text-align:right;max-width:420px}
.post-card--mini{width:min(360px,100%);margin:0 auto!important;box-shadow:none!important;transform:none!important}
.post-card--mini .post-card__image-link{height:150px!important}
.post-card--mini .post-card__body{padding:18px!important;gap:10px!important}.post-card--mini h2{font-size:20px!important}.post-card--mini p{font-size:14px!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.btn--small-preview{height:38px!important;font-size:13px!important;margin-top:6px!important;pointer-events:none}.mini-card-empty{height:100%;display:grid;place-items:center;color:#777;font-size:13px;background:#f4f4f4}

.posts-grid{grid-template-columns:repeat(auto-fit,minmax(275px,340px))!important;justify-content:center!important;gap:24px!important;align-items:stretch!important}.post-card{width:100%!important;min-height:0!important;display:flex!important}.post-card__image-link{height:158px!important}.post-card__body{padding:18px 20px 20px!important;gap:10px!important;min-height:360px}.post-card h2{font-size:20px!important;line-height:1.13!important;letter-spacing:-.025em!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.post-card p{font-size:14px!important;line-height:1.48!important;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.post-card .btn{height:40px!important;font-size:13px!important;margin-top:auto!important}.post-card time{font-size:11px!important;line-height:1.2!important;letter-spacing:.14em!important}
.post-card .post-tags{gap:6px 12px!important;margin:4px 0 10px!important}.post-card .tag-link,.post-tags--compact .tag-link{font-size:11px!important;line-height:1.2!important;letter-spacing:.14em!important;font-weight:600!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;text-transform:uppercase!important;color:var(--bw-accent)!important;text-decoration:none!important}.post-card .tag-link:hover,.post-tags--compact .tag-link:hover{text-decoration:underline!important;text-underline-offset:4px!important}
.related-card .tag-link{font-size:11px!important}.post-hero .tag-link{font-size:13px!important}
@media(max-width:720px){.posts-grid{grid-template-columns:minmax(0,360px)!important;gap:22px!important}.post-card__image-link{height:160px!important}.post-card__body{min-height:auto!important}.post-card h2{font-size:21px!important}.post-card p{font-size:15px!important}.mini-card-label{display:block}.mini-card-label span{display:block;text-align:left;margin-top:4px}.post-card--mini{max-width:330px}.post-card--mini .post-card__image-link{height:145px!important}}

/* === Admin editor refinements: wrapped toolbar + searchable BP list === */
.editor-toolbar--notion{
  display:flex!important;
  flex-wrap:wrap!important;
  overflow:visible!important;
  white-space:normal!important;
  align-items:center!important;
  row-gap:10px!important;
  max-height:none!important;
}
.editor-toolbar--notion .toolbar-group{
  flex:0 0 auto!important;
  flex-wrap:wrap!important;
}
.editor-toolbar--notion .toolbar-group--advanced{margin-left:0!important;}
.post-manager-tools{display:grid;grid-template-columns:1fr;gap:10px;margin:12px 0 16px;}
.post-search-input,.post-sort-select{height:42px!important;border-radius:12px!important;font-size:13px!important;padding:10px 12px!important;}
.admin-post-list--table{display:block!important;margin-top:12px!important;}
.admin-post-table{display:grid;gap:8px;}
.admin-post-row{display:grid;grid-template-columns:128px 92px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e9e9e9;border-radius:14px;background:#fff;padding:12px 12px;}
.admin-post-row--head{background:#f7f7f7;color:#777;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;}
.bp-ref{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--bw-accent);font-weight:700;white-space:nowrap;}
.bp-date{font-family:var(--font-mono);font-size:11px;color:#666;white-space:nowrap;}
.bp-date em{font-style:normal;color:#aaa;}
.bp-title{min-width:0;display:block;}
.bp-title strong{display:block;font-size:14px;line-height:1.25;letter-spacing:-.01em;color:#111;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.bp-title small{display:block;color:#777;font-size:12px;line-height:1.35;margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.bp-actions{display:flex;gap:6px;}
.bp-actions button{height:34px;border:1px solid #ddd;background:#fff;border-radius:10px;padding:0 10px;font-weight:800;cursor:pointer;}
.bp-actions button:hover{border-color:#111;}
.posts-panel--studio .studio-card__head{margin-bottom:10px!important;}
@media(max-width:980px){.admin-post-row{grid-template-columns:1fr;align-items:start}.admin-post-row--head{display:none}.bp-actions{margin-top:4px}}
@media(max-width:760px){.editor-toolbar--notion{position:static!important}.editor-toolbar--notion .toolbar-group{width:100%;justify-content:flex-start}.editor-toolbar--notion button,.editor-toolbar--notion label.upload-pill{height:34px!important}}


/* === Final blog listing alignment and tag scale correction === */
.posts-grid{
  grid-template-columns:repeat(auto-fill,minmax(270px,320px))!important;
  justify-content:start!important;
  gap:22px!important;
  align-items:stretch!important;
}
.post-card{max-width:320px!important;}
.post-card__image-link{height:152px!important;}
.post-card__body{min-height:330px!important;padding:17px 18px 18px!important;}
.post-card time{font-size:11px!important;line-height:1.2!important;letter-spacing:.14em!important;}
.post-card .post-tags{gap:5px 11px!important;margin:3px 0 9px!important;}
.post-card .tag-link,.post-card .post-tags a.tag-link{
  font-size:11px!important;
  line-height:1.2!important;
  letter-spacing:.14em!important;
  font-weight:600!important;
}
.post-card h2{font-size:19px!important;line-height:1.13!important;}
.post-card p{font-size:13.5px!important;line-height:1.46!important;}
.post-card .btn{height:38px!important;font-size:13px!important;}
@media(max-width:720px){
  .posts-grid{grid-template-columns:minmax(0,340px)!important;justify-content:center!important;}
  .post-card{max-width:340px!important;}
  .post-card__body{min-height:auto!important;}
}

/* === Final admin Edit Later list fix: no sideways scrolling + chronological BP numbers === */
.posts-panel--studio{overflow:hidden!important;}
.posts-panel--studio .studio-card__body{overflow:hidden!important;}
.admin-post-list--table{overflow:visible!important;}
.admin-post-table{display:grid!important;gap:12px!important;min-width:0!important;overflow:visible!important;}
.admin-post-row--head{display:none!important;}
.admin-post-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "meta actions"
    "article actions"!important;
  gap:8px 12px!important;
  min-width:0!important;
  width:100%!important;
  align-items:center!important;
  padding:14px!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
.bp-ref,.bp-date{font-size:10px!important;line-height:1.2!important;letter-spacing:.12em!important;}
.bp-ref{grid-area:meta;display:inline!important;white-space:normal!important;overflow-wrap:anywhere!important;}
.bp-ref::after{content:"  ·  ";color:#aaa;}
.bp-date{grid-area:meta;margin-left:8px;color:#777!important;white-space:normal!important;}
.bp-title{grid-area:article;min-width:0!important;max-width:100%!important;}
.bp-title strong{font-size:13px!important;line-height:1.25!important;white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.bp-title small{font-size:11px!important;line-height:1.35!important;-webkit-line-clamp:2!important;}
.bp-actions{grid-area:actions;display:flex!important;flex-direction:column!important;gap:6px!important;align-items:stretch!important;justify-content:center!important;}
.bp-actions button{height:30px!important;border-radius:9px!important;padding:0 9px!important;font-size:12px!important;white-space:nowrap!important;}
.post-search-input{width:100%!important;min-width:0!important;}
.post-sort-select{width:100%!important;min-width:0!important;}
@media(max-width:760px){
  .admin-post-row{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"meta" "article" "actions"!important;}
  .bp-actions{flex-direction:row!important;justify-content:flex-start!important;margin-top:6px!important;}
}

/* === Fix Edit Later BP/date overlap === */
.admin-post-row{
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "meta actions"
    "article actions"!important;
}
.bp-meta{
  grid-area:meta!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:6px 10px!important;
  min-width:0!important;
  max-width:100%!important;
}
.bp-meta .bp-ref,
.bp-meta .bp-date{
  grid-area:auto!important;
  display:inline-block!important;
  margin-left:0!important;
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  line-height:1.3!important;
}
.bp-meta .bp-ref::after{content:none!important;}
.bp-dot{color:#aaa;font-family:var(--font-mono);font-size:10px;line-height:1;}
@media(max-width:760px){
  .admin-post-row{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"meta" "article" "actions"!important;}
  .bp-meta{gap:5px 8px!important;}
  .bp-meta .bp-ref,.bp-meta .bp-date{font-size:10px!important;letter-spacing:.08em!important;}
}

/* Admin comment visibility: public hides commenter identity; admin shows it here */
.bp-comments{margin-top:10px;border-top:1px solid var(--bw-border-subtle);padding-top:10px}
.bp-comments summary{cursor:pointer;font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--bw-accent);list-style:none}
.bp-comments summary::-webkit-details-marker{display:none}
.bp-comment{margin-top:10px;padding:12px;border:1px solid var(--bw-border-subtle);border-radius:14px;background:#fff}
.bp-comment b,.bp-comment a,.bp-comment time{display:block;font-size:12px;line-height:1.45}
.bp-comment a{color:var(--bw-accent);word-break:break-all}.bp-comment time{color:var(--bw-fg-muted);font-family:var(--font-mono)}
.bp-comment p{margin-top:8px;font-size:13px;line-height:1.55;color:#333}.bp-comment-empty{display:block;margin-top:10px;color:var(--bw-fg-muted);font-family:var(--font-mono);font-size:12px}

/* Final alignment: vertically center career logos against their related timeline card */
#career .timeline-card .career-logo-outside{
  top:50% !important;
  transform:translateY(-50%) !important;
  align-items:center !important;
  justify-content:center !important;
}
@media(max-width:1180px){
  #career .timeline-card .career-logo-outside{top:50% !important;transform:translateY(-50%) !important;}
}
@media(max-width:760px){
  #career .timeline-card .career-logo-outside{position:static !important;transform:none !important;margin:18px 0 8px !important;width:100% !important;justify-content:flex-start !important;}
}

/* === Final mobile/post UX corrections — 2026-06-05 === */
.form-message{color:var(--bw-accent)!important;}
.form-message[data-type="error"], .login-card .form-message:not(:empty){color:var(--bw-accent)!important;}

/* Replace oval Menu text with animated three-line icon */
.nav__toggle{
  width:54px!important;
  height:54px!important;
  padding:0!important;
  display:none;
  align-items:center!important;
  justify-content:center!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#111!important;
  font-size:0!important;
}
.menu-icon{width:24px;height:18px;display:inline-flex;flex-direction:column;justify-content:space-between;align-items:stretch;}
.menu-icon span{display:block;height:2px;background:#111;border-radius:999px;transition:transform .22s var(--ease),opacity .18s var(--ease),width .22s var(--ease);}
.menu-icon span:nth-child(1){width:100%;}
.menu-icon span:nth-child(2){width:72%;}
.menu-icon span:nth-child(3){width:100%;}
.nav__toggle.is-open .menu-icon span:nth-child(1){transform:translateY(8px) rotate(45deg);}
.nav__toggle.is-open .menu-icon span:nth-child(2){opacity:0;transform:translateX(6px);}
.nav__toggle.is-open .menu-icon span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
@media(max-width:900px){.nav__toggle{display:inline-flex!important}.nav__links{top:76px!important}}

/* Post page should scroll as one continuous page: no inner iframe / inner scrolling */
.post-page-section{padding-top:104px!important;}
.post-reader--page{overflow:visible!important;}
.post-reader--page .post-hero{padding-top:8px!important;padding-bottom:30px!important;margin-bottom:0!important;border-bottom:0!important;}
.post-reader--page .post-title{font-size:clamp(42px,5.6vw,78px)!important;line-height:1.02!important;max-width:1050px!important;}
.post-reader--page .post-excerpt{margin-top:22px!important;}
.post-reader--page .post-cover{margin-top:28px!important;}
.post-reader--page .article-body{margin-top:38px!important;overflow:visible!important;}
.post-reader--page .share-section{margin-top:34px!important;margin-bottom:30px!important;}
.comments-section{margin-top:34px!important;}

.html-document-embed{overflow:visible!important;}
.html-document-inline{width:100%!important;max-width:1120px!important;margin:0 auto!important;overflow:visible!important;}
.html-document-inline iframe{max-width:100%!important;}
.html-document-inline img,
.html-document-inline figure,
.html-document-inline table,
.html-document-inline .card,
.html-document-inline .cards,
.html-document-inline [class*="grid"],
.html-document-inline [class*="box"],
.html-document-inline [class*="panel"],
.html-document-inline [class*="metric"],
.html-document-inline [class*="stat"]{
  margin-left:auto!important;
  margin-right:auto!important;
}
.html-document-inline img{display:block;max-width:100%;height:auto;}
.html-document-inline table{max-width:100%;}

/* Share block: all buttons functional and responsive */
.share-section{max-width:1120px;margin-left:auto!important;margin-right:auto!important;}
.share-buttons{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;align-items:center!important;}
.share-btn{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;min-width:0!important;}
@media(max-width:820px){.share-buttons{grid-template-columns:repeat(2,minmax(0,1fr))!important}.share-btn--copy{grid-column:1/-1}.share-section{margin-left:0!important;margin-right:0!important}}

/* Mobile post spacing and header scale */
@media(max-width:700px){
  .post-page-section{padding-top:34px!important;}
  .post-reader--page .post-hero{padding-top:0!important;padding-bottom:22px!important;}
  .post-date{font-size:12px!important;margin-bottom:18px!important;}
  .post-reader--page .post-title{font-size:clamp(38px,11vw,54px)!important;line-height:1.02!important;letter-spacing:-.045em!important;}
  .post-reader--page .post-excerpt{font-size:18px!important;line-height:1.55!important;}
  .post-cover{margin-top:22px!important;}
  .post-reader--page .article-body{margin-top:30px!important;font-size:18px!important;line-height:1.72!important;}
  .html-document-inline{max-width:100%!important;}
  .html-document-inline h1{font-size:clamp(36px,12vw,54px)!important;line-height:1.04!important;}
  .html-document-inline h2{font-size:clamp(28px,8vw,38px)!important;line-height:1.12!important;}
  .html-document-inline p{font-size:18px!important;line-height:1.65!important;}
  .html-document-inline [style*="height"]{max-height:none!important;}
}

/* === Final post/mobile layout corrections — 2026-06-05 pass 2 === */
html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
body{position:relative!important;}
.site-header,.footer,main{width:100%!important;max-width:100vw!important;}
.site-header .container,.footer .container{max-width:var(--container)!important;margin-left:auto!important;margin-right:auto!important;}

/* Make the mobile menu icon smaller, borderless, and visually consistent with the website */
@media(max-width:900px){
  .nav__toggle{
    width:42px!important;
    height:42px!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    border-radius:0!important;
    outline:none!important;
  }
  .nav__toggle:focus-visible{outline:2px solid rgba(39,110,241,.35)!important;outline-offset:6px!important;border-radius:10px!important;}
  .menu-icon{width:22px!important;height:16px!important;}
  .menu-icon span{height:2px!important;background:#111!important;}
  .nav__toggle.is-open .menu-icon span:nth-child(1){transform:translateY(7px) rotate(45deg)!important;}
  .nav__toggle.is-open .menu-icon span:nth-child(3){transform:translateY(-7px) rotate(-45deg)!important;}
}

/* Post page should match the same page rhythm and width as the rest of the site */
.post-page-section{background:#fff!important;padding-top:72px!important;padding-bottom:80px!important;overflow:hidden!important;}
.post-page-section>.container{max-width:1240px!important;width:100%!important;margin:0 auto!important;padding-left:clamp(20px,5vw,64px)!important;padding-right:clamp(20px,5vw,64px)!important;}
.post-reader--page{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.post-reader--page .post-hero,
.post-reader--page .post-cover,
.post-reader--page .article-body,
.post-reader--page .share-section,
.post-reader--page .comments-section,
.post-reader--page .related-posts{
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.post-reader--page .post-title{
  max-width:1040px!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:balance!important;
}
.post-reader--page .post-excerpt{max-width:860px!important;}
.post-cover .cover{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;border-radius:18px!important;}

/* Stop uploaded HTML from creating a separate/narrow scrolling column */
.article-body,.article-body *{max-width:100%;box-sizing:border-box;}
.article-body{overflow:visible!important;}
.html-document-embed,.html-document-inline{width:100%!important;max-width:100%!important;overflow:visible!important;}
.html-document-inline{display:block!important;margin:0 auto!important;}
.html-document-inline body,.html-document-inline main,.html-document-inline section,.html-document-inline article{max-width:100%!important;overflow:visible!important;}
.html-document-inline img,.html-document-inline figure,.html-document-inline table,.html-document-inline .card,.html-document-inline .cards,.html-document-inline [class*="grid"],.html-document-inline [class*="box"],.html-document-inline [class*="panel"],.html-document-inline [class*="metric"],.html-document-inline [class*="stat"]{margin-left:auto!important;margin-right:auto!important;}
.html-document-inline [style*="overflow"]{overflow:visible!important;}
.html-document-inline [style*="width"]{max-width:100%!important;}

/* Share/comment blocks use the page width, not a separate scroll container */
.share-section,.comments-section{clear:both!important;overflow:visible!important;}
.share-section{background:#fafafa!important;border:1px solid #e8e8e8!important;border-radius:22px!important;padding:26px!important;}
.comments-section{padding-top:38px!important;}
.comment-form__grid{width:100%!important;}
.comment-form input,.comment-form textarea{max-width:100%!important;}

/* Mobile: reduce post hero scale so it never becomes a thin column */
@media(max-width:700px){
  .post-page-section{padding-top:38px!important;padding-bottom:60px!important;}
  .post-page-section>.container{padding-left:24px!important;padding-right:24px!important;}
  .post-reader--page{max-width:100%!important;}
  .post-reader--page .post-title{
    font-size:clamp(34px,9.2vw,44px)!important;
    line-height:1.04!important;
    letter-spacing:-.04em!important;
    max-width:100%!important;
  }
  .post-reader--page .post-excerpt{font-size:18px!important;line-height:1.55!important;max-width:100%!important;}
  .post-reader--page .post-tags{gap:9px 14px!important;}
  .post-hero .tag-link{font-size:11px!important;letter-spacing:.14em!important;}
  .post-cover .cover{border-radius:14px!important;}
  .article-body h1,.html-document-inline h1{font-size:clamp(32px,9.5vw,44px)!important;line-height:1.08!important;letter-spacing:-.035em!important;}
  .article-body h2,.html-document-inline h2{font-size:clamp(26px,7.4vw,34px)!important;line-height:1.14!important;}
  .article-body p,.html-document-inline p{font-size:17px!important;line-height:1.68!important;}
  .share-section{padding:20px!important;border-radius:20px!important;}
  .share-buttons{grid-template-columns:1fr!important;gap:10px!important;}
  .share-btn{height:46px!important;width:100%!important;}
  .comment-form__grid{grid-template-columns:1fr!important;gap:14px!important;}
  .save-commenter{align-items:flex-start!important;}
  .footer-inner{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:12px!important;}
  .footer-signature{width:190px!important;max-width:70vw!important;}
}

@media(max-width:420px){
  .post-page-section>.container{padding-left:20px!important;padding-right:20px!important;}
  .post-reader--page .post-title{font-size:clamp(32px,8.7vw,40px)!important;}
  .post-reader--page .post-excerpt{font-size:17px!important;}
}

/* === 2026-06-05 definitive post page layout fix ===
   Uploaded HTML is now rendered inside an auto-height iframe so its global CSS
   cannot break the website header, footer, or page width. */
body.post-template{
  display:flex!important;
  min-height:100vh!important;
  flex-direction:column!important;
  overflow-x:hidden!important;
  background:#fff!important;
}
body.post-template .site-header{
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:300!important;
  background:rgba(255,255,255,.94)!important;
  border-bottom:1px solid var(--bw-border-subtle)!important;
}
body.post-template .site-header .container,
body.post-template .footer .container,
body.post-template main>.section>.container{
  width:100%!important;
  max-width:var(--container)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:clamp(20px,4vw,56px)!important;
  padding-right:clamp(20px,4vw,56px)!important;
}
body.post-template main{
  display:block!important;
  flex:1 0 auto!important;
  width:100%!important;
  max-width:none!important;
  overflow:visible!important;
}
body.post-template .post-page-section{
  width:100%!important;
  max-width:none!important;
  padding-top:92px!important;
  padding-bottom:96px!important;
  overflow:visible!important;
  background:#fff!important;
}
body.post-template .post-reader--page{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.post-template .back-link{
  display:inline-flex!important;
  margin-bottom:36px!important;
}
body.post-template .post-hero,
body.post-template .post-cover,
body.post-template .article-body,
body.post-template .share-section,
body.post-template .comments-section,
body.post-template .related-posts{
  width:100%!important;
  max-width:1120px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
body.post-template .post-title{
  max-width:1060px!important;
  font-size:clamp(54px,5.8vw,92px)!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  text-wrap:balance!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body.post-template .post-excerpt{
  max-width:860px!important;
  margin-top:24px!important;
  font-size:clamp(20px,1.75vw,28px)!important;
  line-height:1.48!important;
  color:var(--bw-fg-muted)!important;
}
body.post-template .post-cover{margin-top:48px!important;}
body.post-template .post-cover .cover{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  border-radius:18px!important;
}
body.post-template .article-body{margin-top:54px!important;}
body.post-template .footer{
  position:static!important;
  width:100%!important;
  max-width:none!important;
  flex-shrink:0!important;
  margin-top:0!important;
  clear:both!important;
  background:#fff!important;
  border-top:1px solid var(--bw-border-subtle)!important;
}
body.post-template .footer-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  flex-wrap:wrap!important;
}
/* Borderless embedded HTML, no separate visible frame, no nested scrolling */
.html-document-embed,
.post-reader--page .article-body--html-embed .html-document-embed,
.html-document-embed--iframe{
  display:block!important;
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  overflow:visible!important;
}
.html-document-frame--auto{
  width:100%!important;
  min-height:0!important;
  height:800px;
  border:0!important;
  display:block!important;
  overflow:hidden!important;
  background:#fff!important;
}
/* Mobile: keep full page width and prevent thin-column post header */
@media(max-width:900px){
  body.post-template .nav__brand{min-width:0!important;}
  body.post-template .brand-logo{width:170px!important;max-width:45vw!important;}
}
@media(max-width:700px){
  body.post-template .site-header .container,
  body.post-template .footer .container,
  body.post-template main>.section>.container{
    padding-left:28px!important;
    padding-right:28px!important;
  }
  body.post-template .post-page-section{padding-top:48px!important;padding-bottom:72px!important;}
  body.post-template .back-link{margin-bottom:28px!important;}
  body.post-template .post-title{
    font-size:clamp(44px,13vw,64px)!important;
    line-height:1.01!important;
    letter-spacing:-.055em!important;
    max-width:100%!important;
    text-wrap:balance!important;
  }
  body.post-template .post-excerpt{
    font-size:20px!important;
    line-height:1.58!important;
    max-width:100%!important;
  }
  body.post-template .post-tags{gap:10px 15px!important;}
  body.post-template .post-cover{margin-top:32px!important;}
  body.post-template .article-body{margin-top:38px!important;}
  body.post-template .share-section{margin-top:42px!important;}
  body.post-template .comments-section{margin-top:42px!important;}
  body.post-template .footer-inner{align-items:flex-start!important;flex-direction:column!important;}
  .html-document-frame--auto{width:100%!important;}
}
@media(max-width:420px){
  body.post-template .site-header .container,
  body.post-template .footer .container,
  body.post-template main>.section>.container{
    padding-left:22px!important;
    padding-right:22px!important;
  }
  body.post-template .post-title{font-size:clamp(40px,12.2vw,56px)!important;}
  body.post-template .post-excerpt{font-size:18px!important;}
}


/* === Casey refinement 2026-06-09: compact share box + tighter article/share rhythm === */
.post-reader--page .article-body{margin-bottom:0!important;}
.post-reader--page .html-document-embed,
.post-reader--page .html-document-embed--iframe{margin-bottom:0!important;padding-bottom:0!important;}
.post-reader--page .html-document-frame,
.post-reader--page .html-document-frame--auto{margin-bottom:0!important;}
.post-reader--page .article-body > *:last-child{margin-bottom:0!important;}

.share-section{
  margin-top:24px!important;
  padding:20px!important;
  border-radius:18px!important;
  background:#fafafa!important;
}
.share-section__label{
  font-size:11px!important;
  letter-spacing:.13em!important;
  margin-bottom:12px!important;
}
.share-buttons{
  gap:10px!important;
}
.share-btn{
  min-height:0!important;
  height:42px!important;
  padding:0 14px!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
}
.comments-section{
  margin-top:34px!important;
  padding-top:30px!important;
}

@media(max-width:760px){
  .share-section{
    margin-top:18px!important;
    padding:16px!important;
    border-radius:16px!important;
  }
  .share-section__label{
    font-size:10px!important;
    margin-bottom:10px!important;
  }
  .share-buttons{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  .share-btn{
    height:38px!important;
    font-size:12px!important;
    padding:0 10px!important;
  }
  .share-btn--copy{
    grid-column:1 / -1!important;
  }
  .comments-section{
    margin-top:28px!important;
    padding-top:24px!important;
  }
}

/* === FIX: consistent mobile header logo size on post pages ===
   The post template previously enlarged .brand-logo to 170px on mobile.
   This final override keeps the A.B.T mark aligned with the homepage/blog header. */
body.post-template .site-header .brand-logo,
.site-header .brand-logo,
.admin-body .site-header .brand-logo{
  width:104px !important;
  height:50px !important;
  max-width:104px !important;
  object-fit:contain !important;
  object-position:left center !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
@media(max-width:900px){
  body.post-template .site-header .brand-logo,
  .site-header .brand-logo,
  .admin-body .site-header .brand-logo{
    width:96px !important;
    height:46px !important;
    max-width:96px !important;
  }
  body.post-template .nav__brand,
  .nav__brand{
    min-width:auto !important;
  }
}
@media(max-width:640px){
  body.post-template .site-header .brand-logo,
  .site-header .brand-logo,
  .admin-body .site-header .brand-logo{
    width:92px !important;
    height:44px !important;
    max-width:92px !important;
  }
}

/* === Gallery page + admin gallery manager === */
.gallery-hero .p-lg{max-width:760px}.section--gallery{padding-top:64px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:28px;align-items:start}.gallery-card{background:#fff;border:1px solid var(--bw-border-subtle);border-radius:22px;padding:22px;box-shadow:0 10px 32px rgba(0,0,0,.035);transition:transform .18s var(--ease),box-shadow .18s var(--ease)}.gallery-card:hover{transform:translateY(-2px);box-shadow:0 16px 42px rgba(0,0,0,.06)}.gallery-card h2{font-size:clamp(22px,2.1vw,30px);line-height:1.1;letter-spacing:-.028em;margin:10px 0 18px;color:#050505}.gallery-date{font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--bw-accent)}.gallery-media{display:grid;gap:10px;border-radius:18px;overflow:hidden;background:#f2f2f2}.gallery-media--1{grid-template-columns:1fr}.gallery-media--2{grid-template-columns:repeat(2,1fr)}.gallery-media--3{grid-template-columns:1.1fr .9fr}.gallery-media--3 .gallery-figure:first-child{grid-row:span 2}.gallery-media--4{grid-template-columns:repeat(2,1fr)}.gallery-figure{position:relative;margin:0;min-height:220px;background:#f4f4f4;overflow:hidden}.gallery-figure img{width:100%;height:100%;min-height:220px;display:block;object-fit:cover}.gallery-card--single .gallery-figure,.gallery-card--single .gallery-figure img{min-height:360px}.gallery-figure figcaption{position:absolute;left:12px;right:12px;bottom:12px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.88);backdrop-filter:blur(8px);font-size:13px;line-height:1.35;color:#1b1b1b}.gallery-description{margin:16px 2px 2px;font-size:16px;line-height:1.65;color:#484848}.gallery-empty{grid-column:1/-1;text-align:center;padding:90px 20px;color:#111}.gallery-empty h2{font-size:clamp(30px,4vw,54px);line-height:1.05;letter-spacing:-.035em}.image-error{display:none}.gallery-admin-card{margin-top:24px}.gallery-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.gallery-upload-list{display:grid;gap:12px}.gallery-upload-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px;margin-top:12px}.gallery-upload-preview figure{margin:0;background:#f4f4f4;border-radius:12px;overflow:hidden}.gallery-upload-preview img{width:100%;height:90px;object-fit:cover;display:block}.gallery-list{display:grid;gap:14px}.gallery-list-item{border:1px solid var(--bw-border-subtle);border-radius:16px;padding:14px;display:grid;grid-template-columns:90px 1fr auto;gap:14px;align-items:center;background:#fff}.gallery-list-item img{width:90px;height:70px;object-fit:cover;border-radius:10px;background:#eee}.gallery-list-item strong{display:block;font-size:15px;line-height:1.25}.gallery-list-item small{display:block;margin-top:4px;color:#666;line-height:1.35}.gallery-list-actions{display:flex;gap:8px;flex-wrap:wrap}.gallery-list-actions button{border:1px solid var(--bw-border-subtle);background:#fff;border-radius:999px;padding:8px 10px;font-weight:700;cursor:pointer}.gallery-list-actions button:hover{border-color:#111}.admin-gallery-note{font-size:13px;color:#666;margin-top:8px;line-height:1.5}@media(max-width:760px){.gallery-grid{grid-template-columns:1fr;gap:22px}.gallery-card{padding:16px;border-radius:18px}.gallery-media--2,.gallery-media--3,.gallery-media--4{grid-template-columns:1fr}.gallery-media--3 .gallery-figure:first-child{grid-row:auto}.gallery-figure,.gallery-figure img,.gallery-card--single .gallery-figure,.gallery-card--single .gallery-figure img{min-height:260px}.gallery-admin-grid{grid-template-columns:1fr}.gallery-list-item{grid-template-columns:72px 1fr}.gallery-list-item img{width:72px;height:58px}.gallery-list-actions{grid-column:1/-1}}


/* === Gallery masonry + lightbox refinement === */
.gallery-hero{padding-bottom:82px}.section--gallery{padding-top:56px}.gallery-grid.gallery-masonry{display:block;columns:3 320px;column-gap:28px;max-width:1180px;margin:0 auto}.gallery-card--masonry{display:inline-block;width:100%;break-inside:avoid;page-break-inside:avoid;margin:0 0 28px;padding:0;overflow:hidden;border-radius:22px;background:#fff;border:1px solid var(--bw-border-subtle);box-shadow:0 12px 34px rgba(0,0,0,.045);cursor:pointer;transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .22s var(--ease);will-change:transform}.gallery-card--masonry:hover{transform:translateY(-4px);box-shadow:0 18px 48px rgba(0,0,0,.08);border-color:rgba(0,0,0,.16)}.gallery-card--masonry:focus-visible{outline:3px solid rgba(39,110,241,.28);outline-offset:4px}.gallery-cover-wrap{position:relative;background:#f4f4f4;overflow:hidden}.gallery-cover{display:block;width:100%;height:auto;min-height:0;object-fit:contain;background:#f4f4f4;transition:transform .5s var(--ease),filter .5s var(--ease)}.gallery-card--masonry:hover .gallery-cover{transform:scale(1.025);filter:saturate(1.03)}.gallery-count{position:absolute;right:14px;top:14px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.08);border-radius:999px;padding:7px 11px;font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#111}.gallery-card__body{padding:24px;display:flex;flex-direction:column;gap:14px}.gallery-card--masonry h2{font-size:26px;line-height:1.08;letter-spacing:-.02em;margin:0;color:#050505}.gallery-card--masonry .gallery-date{display:block;margin:0;font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bw-accent)}.gallery-card--masonry .gallery-description{margin:0;font-size:16px;line-height:1.55;color:var(--bw-fg-muted);letter-spacing:-.005em}.gallery-cover-caption{margin:0;font-size:14px;line-height:1.45;color:#777}.gallery-reveal{opacity:0;transform:translateY(24px);transition:opacity .58s var(--ease),transform .58s var(--ease),box-shadow .22s var(--ease),border-color .22s var(--ease)}.gallery-reveal.visible{opacity:1;transform:translateY(0)}body.gallery-modal-open{overflow:hidden}.gallery-lightbox{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .22s var(--ease)}.gallery-lightbox.is-open{opacity:1;pointer-events:auto}.gallery-lightbox__backdrop{position:absolute;inset:0;background:rgba(5,5,5,.72);backdrop-filter:blur(12px)}.gallery-lightbox__panel{position:relative;z-index:1;width:min(1180px,calc(100vw - 28px));max-height:calc(100vh - 28px);display:grid;grid-template-columns:64px minmax(0,1fr) 64px;grid-template-rows:minmax(0,1fr) auto auto;gap:18px;align-items:center;padding:24px;border-radius:28px;background:rgba(255,255,255,.94);box-shadow:0 28px 90px rgba(0,0,0,.32);transform:scale(.985) translateY(12px);transition:transform .26s var(--ease);overflow:hidden}.gallery-lightbox.is-open .gallery-lightbox__panel{transform:scale(1) translateY(0)}.gallery-lightbox__close{position:absolute;right:18px;top:18px;z-index:5;width:40px;height:40px;border:0;border-radius:999px;background:#111;color:#fff;font-size:28px;line-height:1;cursor:pointer}.gallery-lightbox__figure{grid-column:2;grid-row:1;margin:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:10px;align-items:center}.gallery-lightbox__image{max-width:100%;max-height:calc(100vh - 290px);width:auto;height:auto;margin:auto;display:block;border-radius:18px;background:#f2f2f2;box-shadow:0 10px 34px rgba(0,0,0,.12)}.gallery-lightbox__image.is-swapped{animation:gallerySwap .28s var(--ease)}@keyframes gallerySwap{from{opacity:.35;transform:translateY(8px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}.gallery-lightbox__caption{max-width:820px;margin:0 auto;text-align:center;font-size:14px;line-height:1.5;color:#555}.gallery-lightbox__arrow{grid-row:1;align-self:center;width:52px;height:52px;border:1px solid rgba(0,0,0,.1);border-radius:999px;background:#fff;color:#050505;font-size:42px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.09);transition:transform .18s var(--ease),background .18s var(--ease)}.gallery-lightbox__arrow:hover{transform:scale(1.04);background:#f4f4f4}.gallery-lightbox__arrow--prev{grid-column:1}.gallery-lightbox__arrow--next{grid-column:3}.gallery-lightbox__meta{grid-column:1/-1;grid-row:2;display:flex;justify-content:space-between;gap:24px;align-items:flex-end;border-top:1px solid var(--bw-border-subtle);padding-top:16px}.gallery-lightbox__date{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--bw-accent)}.gallery-lightbox__title{margin:4px 0 0;font-size:clamp(22px,2.2vw,34px);line-height:1.05;letter-spacing:-.03em}.gallery-lightbox__description{margin:8px 0 0;max-width:780px;font-size:15px;line-height:1.55;color:#555}.gallery-lightbox__counter{font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.12em;color:#555;white-space:nowrap}.gallery-lightbox__thumbs{grid-column:1/-1;grid-row:3;display:flex;gap:10px;overflow-x:auto;padding:2px 0 4px;scrollbar-width:thin}.gallery-lightbox__thumb{flex:0 0 auto;width:76px;height:58px;border:2px solid transparent;border-radius:12px;padding:0;overflow:hidden;background:#eee;cursor:pointer;opacity:.68;transition:opacity .18s var(--ease),border-color .18s var(--ease),transform .18s var(--ease)}.gallery-lightbox__thumb:hover,.gallery-lightbox__thumb.is-active{opacity:1;border-color:var(--bw-accent);transform:translateY(-1px)}.gallery-lightbox__thumb img{width:100%;height:100%;object-fit:cover;display:block}.image-error{display:none!important}@media(max-width:860px){.gallery-grid.gallery-masonry{columns:2 260px;column-gap:18px}.gallery-card--masonry{margin-bottom:18px;border-radius:18px}.gallery-card__body{padding:16px}.gallery-lightbox__panel{width:calc(100vw - 18px);max-height:calc(100vh - 18px);grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto auto auto;padding:16px;border-radius:22px;gap:12px}.gallery-lightbox__figure{grid-column:1;grid-row:1}.gallery-lightbox__image{max-height:calc(100vh - 360px);border-radius:14px}.gallery-lightbox__arrow{position:absolute;z-index:4;top:42%;width:44px;height:44px;font-size:34px;background:rgba(255,255,255,.9)}.gallery-lightbox__arrow--prev{left:14px}.gallery-lightbox__arrow--next{right:14px}.gallery-lightbox__meta{grid-column:1;grid-row:2;display:block;padding-top:12px}.gallery-lightbox__counter{margin-top:8px}.gallery-lightbox__thumbs{grid-column:1;grid-row:3}.gallery-lightbox__thumb{width:68px;height:52px}.gallery-lightbox__close{right:14px;top:14px}}@media(max-width:560px){.gallery-hero .h-display{font-size:clamp(48px,15vw,72px)}.gallery-grid.gallery-masonry{columns:1;column-gap:0}.section--gallery{padding-top:38px}.gallery-card--masonry{margin-bottom:20px}.gallery-lightbox__image{max-height:calc(100vh - 410px)}}

/* === Admin gallery list refinement: compact thumbnails + proper actions === */
.admin-body .admin-gallery-section .gallery-list{
  display:grid!important;
  gap:14px!important;
  margin-top:18px!important;
}
.admin-body .admin-gallery-section .gallery-list-item,
.admin-body .admin-gallery-section .gallery-admin-item{
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr) auto!important;
  gap:18px!important;
  align-items:center!important;
  padding:14px!important;
  border:1px solid #e9e9e9!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(0,0,0,.035)!important;
  overflow:hidden!important;
}
.admin-body .admin-gallery-section .gallery-admin-thumb{
  position:relative!important;
  width:132px!important;
  height:92px!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#f3f3f3!important;
  flex:0 0 auto!important;
}
.admin-body .admin-gallery-section .gallery-admin-thumb img,
.admin-body .admin-gallery-section .gallery-list-item > img{
  display:block!important;
  width:132px!important;
  height:92px!important;
  max-width:132px!important;
  max-height:92px!important;
  min-width:0!important;
  min-height:0!important;
  object-fit:cover!important;
  border-radius:14px!important;
  margin:0!important;
}
.admin-body .admin-gallery-section .gallery-admin-thumb span{
  position:absolute!important;
  left:8px!important;
  bottom:8px!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  background:rgba(5,5,5,.72)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1!important;
  backdrop-filter:blur(8px)!important;
}
.admin-body .admin-gallery-section .gallery-admin-copy{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
}
.admin-body .admin-gallery-section .gallery-admin-copy strong{
  display:block!important;
  font-size:17px!important;
  line-height:1.25!important;
  letter-spacing:-.015em!important;
  color:#111!important;
  white-space:normal!important;
}
.admin-body .admin-gallery-section .gallery-admin-meta{
  display:block!important;
  font-family:var(--font-mono)!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  color:#276EF1!important;
  margin:0!important;
}
.admin-body .admin-gallery-section .gallery-admin-desc{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  margin:0!important;
  font-size:13px!important;
  line-height:1.45!important;
  color:#666!important;
}
.admin-body .admin-gallery-section .gallery-list-actions,
.admin-body .admin-gallery-section .gallery-admin-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:nowrap!important;
  min-width:150px!important;
}
.admin-body .admin-gallery-section .gallery-list-actions button,
.admin-body .admin-gallery-section .gallery-admin-actions button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:34px!important;
  min-width:64px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:800!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.admin-body .admin-gallery-section .gallery-admin-actions [data-gallery-delete]{
  color:#8a1f1f!important;
  border-color:#efd7d7!important;
  background:#fff!important;
}
.admin-body .admin-gallery-section .gallery-admin-actions [data-gallery-delete]:hover{
  color:#fff!important;
  background:#8a1f1f!important;
  border-color:#8a1f1f!important;
}
@media(max-width:820px){
  .admin-body .admin-gallery-section .gallery-list-item,
  .admin-body .admin-gallery-section .gallery-admin-item{
    grid-template-columns:96px minmax(0,1fr)!important;
    gap:12px!important;
    padding:12px!important;
  }
  .admin-body .admin-gallery-section .gallery-admin-thumb,
  .admin-body .admin-gallery-section .gallery-admin-thumb img,
  .admin-body .admin-gallery-section .gallery-list-item > img{
    width:96px!important;
    height:72px!important;
    max-width:96px!important;
    max-height:72px!important;
    border-radius:12px!important;
  }
  .admin-body .admin-gallery-section .gallery-admin-actions,
  .admin-body .admin-gallery-section .gallery-list-actions{
    grid-column:1 / -1!important;
    justify-content:flex-start!important;
    min-width:0!important;
  }
}


/* === Gallery card typography aligned with Blog post cards === */
.gallery-card--masonry .gallery-card__body{padding:24px;display:flex;flex-direction:column;gap:14px;}
.gallery-card--masonry .gallery-date{font-family:var(--font-mono);font-size:12px;line-height:1.2;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--bw-accent);}
.gallery-card--masonry h2{font-size:26px;line-height:1.08;letter-spacing:-.02em;margin:0;}
.gallery-card--masonry .gallery-description{font-size:16px;line-height:1.55;color:var(--bw-fg-muted);margin:0;}
.gallery-card--masonry .gallery-cover-caption{font-size:14px;line-height:1.45;color:#777;margin:0;}
@media(max-width:760px){
  .gallery-card--masonry .gallery-card__body{padding:22px;}
  .gallery-card--masonry h2{font-size:26px;line-height:1.08;}
  .gallery-card--masonry .gallery-description{font-size:16px;line-height:1.55;}
}

/* === Gallery card exact typography match to blog post cards === */
.gallery-card--masonry .gallery-card__body{
  padding:20px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}
.gallery-card--masonry .gallery-date,
.gallery-card--masonry time.gallery-date{
  display:block!important;
  margin:0!important;
  font-family:var(--font-mono)!important;
  font-size:11px!important;
  line-height:1.2!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  font-weight:600!important;
  color:var(--bw-accent)!important;
}
.gallery-card--masonry h2,
.gallery-card--masonry .gallery-title{
  margin:0!important;
  font-family:var(--font-display)!important;
  font-size:22px!important;
  line-height:1.12!important;
  letter-spacing:-.02em!important;
  font-weight:800!important;
  color:#050505!important;
}
.gallery-card--masonry .gallery-description{
  margin:0!important;
  font-size:15px!important;
  line-height:1.5!important;
  letter-spacing:0!important;
  font-weight:400!important;
  color:var(--bw-fg-muted)!important;
}
.gallery-card--masonry .gallery-cover-caption{
  margin:0!important;
  font-size:14px!important;
  line-height:1.45!important;
  color:var(--bw-fg-muted)!important;
}
@media(max-width:620px){
  .gallery-card--masonry .gallery-card__body{padding:24px!important;gap:12px!important;}
  .gallery-card--masonry h2,.gallery-card--masonry .gallery-title{font-size:25px!important;line-height:1.12!important;}
  .gallery-card--masonry .gallery-description{font-size:17px!important;line-height:1.5!important;}
  .gallery-card--masonry .gallery-date,time.gallery-date{font-size:11px!important;letter-spacing:.12em!important;}
}

/* === Gallery lightbox mobile/tablet spacing fix ===
   Keeps the close button in the white corner and moves the focused image slightly down
   so the X no longer overlaps the image on iPhone/iPad. */
.gallery-lightbox__panel{
  overflow:visible!important;
}
.gallery-lightbox__close{
  top:18px!important;
  right:18px!important;
  z-index:20!important;
}
@media(max-width:1180px){
  .gallery-lightbox__panel{
    padding-top:54px!important;
  }
  .gallery-lightbox__close{
    top:16px!important;
    right:16px!important;
  }
  .gallery-lightbox__figure{
    margin-top:4px!important;
  }
}
@media(max-width:860px){
  .gallery-lightbox__panel{
    padding-top:56px!important;
  }
  .gallery-lightbox__close{
    top:14px!important;
    right:14px!important;
    width:38px!important;
    height:38px!important;
    font-size:25px!important;
  }
  .gallery-lightbox__figure{
    margin-top:2px!important;
  }
  .gallery-lightbox__image{
    max-height:calc(100vh - 392px)!important;
  }
}
@media(max-width:560px){
  .gallery-lightbox__panel{
    padding-top:58px!important;
  }
  .gallery-lightbox__close{
    top:14px!important;
    right:14px!important;
  }
  .gallery-lightbox__image{
    max-height:calc(100vh - 438px)!important;
  }
}

/* === Final gallery card typography lock: match Blog post card exactly === */
.gallery-card--masonry .gallery-card__body{
  padding:18px 20px 20px!important;
  gap:10px!important;
  min-height:auto!important;
}
.gallery-card--masonry .gallery-date,
.gallery-card--masonry time.gallery-date{
  font-family:var(--font-mono)!important;
  font-size:11px!important;
  line-height:1.2!important;
  letter-spacing:.14em!important;
  font-weight:600!important;
  text-transform:uppercase!important;
  color:var(--bw-accent)!important;
  margin:0!important;
}
.gallery-card--masonry h2,
.gallery-card--masonry .gallery-title{
  font-family:var(--font-display)!important;
  font-size:20px!important;
  line-height:1.13!important;
  letter-spacing:-.025em!important;
  font-weight:800!important;
  color:#050505!important;
  margin:0!important;
}
.gallery-card--masonry .gallery-description{
  font-size:14px!important;
  line-height:1.48!important;
  letter-spacing:0!important;
  font-weight:400!important;
  color:var(--bw-fg-muted)!important;
  margin:0!important;
}
.gallery-card--masonry .gallery-cover-caption{
  font-size:14px!important;
  line-height:1.48!important;
  letter-spacing:0!important;
  font-weight:400!important;
  color:var(--bw-fg-muted)!important;
  margin:0!important;
}
@media(max-width:720px){
  .gallery-card--masonry .gallery-card__body{padding:18px 20px 20px!important;gap:10px!important;}
  .gallery-card--masonry h2,.gallery-card--masonry .gallery-title{font-size:21px!important;line-height:1.13!important;letter-spacing:-.025em!important;}
  .gallery-card--masonry .gallery-description{font-size:15px!important;line-height:1.48!important;}
  .gallery-card--masonry .gallery-cover-caption{font-size:15px!important;line-height:1.48!important;}
  .gallery-card--masonry .gallery-date,time.gallery-date{font-size:11px!important;line-height:1.2!important;letter-spacing:.14em!important;}
}

/* === Gallery stability fix: no hover blinking + contained lightbox image === */
.gallery-card--masonry{
  transform:none!important;
  transition:box-shadow .22s var(--ease),border-color .22s var(--ease),opacity .22s var(--ease)!important;
  backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;
  contain:layout paint style!important;
}
.gallery-card--masonry:hover{
  transform:none!important;
  box-shadow:0 18px 48px rgba(0,0,0,.08)!important;
  border-color:rgba(0,0,0,.16)!important;
}
.gallery-card--masonry:hover .gallery-cover{
  transform:none!important;
  filter:none!important;
}
.gallery-cover-wrap,
.gallery-cover{
  backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;
}
.gallery-cover-wrap{border-radius:inherit!important;overflow:hidden!important;}
.gallery-cover{max-width:100%!important;display:block!important;}

.gallery-lightbox__panel{
  overflow:hidden!important;
  box-sizing:border-box!important;
  padding-top:60px!important;
}
.gallery-lightbox__close{
  top:18px!important;
  right:18px!important;
  z-index:30!important;
}
.gallery-lightbox__figure{
  min-width:0!important;
  min-height:0!important;
  overflow:hidden!important;
  align-self:center!important;
  justify-self:stretch!important;
  margin:0!important;
}
.gallery-lightbox__image{
  display:block!important;
  max-width:100%!important;
  width:auto!important;
  height:auto!important;
  max-height:min(64vh, calc(100dvh - 330px))!important;
  object-fit:contain!important;
  margin:0 auto!important;
  box-sizing:border-box!important;
}
.gallery-lightbox__meta,
.gallery-lightbox__thumbs{
  min-width:0!important;
}
@media(max-width:1180px){
  .gallery-lightbox__panel{padding-top:62px!important;}
  .gallery-lightbox__image{max-height:calc(100dvh - 360px)!important;}
}
@media(max-width:860px){
  .gallery-lightbox__panel{
    width:calc(100vw - 18px)!important;
    max-height:calc(100dvh - 18px)!important;
    padding:58px 16px 16px!important;
    overflow:hidden!important;
  }
  .gallery-lightbox__close{
    top:14px!important;
    right:14px!important;
  }
  .gallery-lightbox__image{
    max-height:calc(100dvh - 410px)!important;
  }
}
@media(max-width:560px){
  .gallery-lightbox__panel{
    width:calc(100vw - 18px)!important;
    max-height:calc(100dvh - 18px)!important;
    padding:58px 14px 14px!important;
  }
  .gallery-lightbox__image{
    max-height:calc(100dvh - 450px)!important;
  }
}

/* Gallery admin: removable uploads + per-image card positioning */
.gallery-upload-preview{
  grid-template-columns:repeat(auto-fill,minmax(118px,1fr))!important;
  align-items:start!important;
}
.gallery-upload-figure{
  position:relative!important;
  border:1px solid #e5e5e5!important;
  border-radius:14px!important;
  background:#fff!important;
  padding:6px!important;
  box-shadow:0 6px 18px rgba(0,0,0,.035)!important;
}
.gallery-upload-figure.is-selected{
  border-color:#276EF1!important;
  box-shadow:0 0 0 3px rgba(39,110,241,.14),0 8px 22px rgba(0,0,0,.055)!important;
}
.gallery-upload-select{
  display:block!important;
  width:100%!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
  border-radius:10px!important;
  overflow:hidden!important;
  background:#f2f2f2!important;
  cursor:pointer!important;
}
.gallery-upload-preview .gallery-upload-select img{
  width:100%!important;
  height:96px!important;
  object-fit:cover!important;
  object-position:var(--gallery-x,50%) var(--gallery-y,50%)!important;
  transform:scale(var(--gallery-zoom,1))!important;
  transform-origin:var(--gallery-x,50%) var(--gallery-y,50%)!important;
  border-radius:10px!important;
}
.gallery-upload-remove{
  position:absolute!important;
  top:2px!important;
  right:2px!important;
  z-index:4!important;
  width:24px!important;
  height:24px!important;
  border:0!important;
  border-radius:999px!important;
  background:#111!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:20px!important;
  cursor:pointer!important;
}
.gallery-upload-figure figcaption{
  margin-top:6px!important;
  font-family:var(--font-mono)!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:#666!important;
}
.gallery-image-framing{
  margin:18px 0 22px!important;
  padding:18px!important;
  border:1px solid #e8e8e8!important;
  border-radius:18px!important;
  background:#fff!important;
}
.gallery-image-framing .range-row{
  display:grid!important;
  grid-template-columns:190px 1fr!important;
  gap:18px!important;
  align-items:center!important;
  margin:14px 0!important;
}
.gallery-image-framing .range-row span{
  font-family:var(--font-mono)!important;
  font-size:12px!important;
  font-weight:600!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  color:#666!important;
}
.gallery-image-framing input[type="range"]{width:100%!important;accent-color:#276EF1!important;}
.gallery-image-framing .btn--full{width:100%!important;margin-top:8px!important;}
@media(max-width:760px){
  .gallery-image-framing .range-row{grid-template-columns:1fr!important;gap:6px!important;}
}

/* Gallery public cards: use stored cover-frame safely without hover blinking */
.gallery-cover{
  object-position:var(--gallery-x,50%) var(--gallery-y,50%)!important;
  transform:scale(var(--gallery-zoom,1))!important;
  transform-origin:var(--gallery-x,50%) var(--gallery-y,50%)!important;
}
.gallery-card--masonry:hover .gallery-cover{
  transform:scale(var(--gallery-zoom,1))!important;
  filter:none!important;
}

/* === Gallery visibility + safe framing final fix ===
   Keeps masonry stable, prevents hidden/blank cards, caps very tall covers, and keeps
   lightbox images fully inside the white viewer. */
.gallery-grid.gallery-masonry{
  overflow:visible!important;
}
.gallery-card--masonry,
.gallery-card--masonry.gallery-reveal,
.gallery-card--masonry.gallery-reveal.visible{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}
.gallery-cover-wrap{
  width:100%!important;
  min-height:180px!important;
  max-height:430px!important;
  overflow:hidden!important;
  border-radius:22px 22px 0 0!important;
  background:#f4f4f4!important;
}
.gallery-cover{
  width:100%!important;
  height:100%!important;
  min-height:220px!important;
  max-height:430px!important;
  object-fit:cover!important;
  object-position:var(--gallery-x,50%) var(--gallery-y,50%)!important;
  transform:scale(var(--gallery-zoom,1))!important;
  transform-origin:var(--gallery-x,50%) var(--gallery-y,50%)!important;
  display:block!important;
}
.gallery-card--masonry:hover .gallery-cover{
  transform:scale(var(--gallery-zoom,1))!important;
}
.gallery-card--masonry .gallery-card__body{
  position:relative!important;
  z-index:2!important;
  background:#fff!important;
}
@media(max-width:760px){
  .gallery-cover-wrap{max-height:360px!important;border-radius:18px 18px 0 0!important;}
  .gallery-cover{min-height:210px!important;max-height:360px!important;}
}

/* Lightbox: reduce image area slightly so it never crosses the caption/meta contour. */
.gallery-lightbox__panel{
  overflow:hidden!important;
  align-content:start!important;
}
.gallery-lightbox__figure{
  overflow:visible!important;
  padding-top:8px!important;
  box-sizing:border-box!important;
}
.gallery-lightbox__image{
  max-height:min(54vh, 620px, calc(100dvh - 420px))!important;
  max-width:100%!important;
  object-fit:contain!important;
  display:block!important;
  margin:0 auto!important;
}
.gallery-lightbox__caption{
  margin-top:8px!important;
  min-height:18px!important;
}
@media(max-width:1180px){
  .gallery-lightbox__image{max-height:min(52vh, calc(100dvh - 420px))!important;}
}
@media(max-width:860px){
  .gallery-lightbox__figure{padding-top:8px!important;}
  .gallery-lightbox__image{max-height:min(44vh, calc(100dvh - 430px))!important;}
}
@media(max-width:560px){
  .gallery-lightbox__image{max-height:min(38vh, calc(100dvh - 455px))!important;}
}


/* === Gallery card visibility hard fix ===
   Prevents Safari/desktop column-paint bugs where later cards become invisible,
   and keeps broken/slow images from hiding the whole card. */
.gallery-grid.gallery-masonry{
  display:block!important;
  column-count:3!important;
  column-width:320px!important;
  column-gap:28px!important;
  column-fill:balance!important;
  overflow:visible!important;
}
.gallery-card--masonry,
.gallery-card--masonry.gallery-reveal,
.gallery-card--masonry.gallery-reveal.visible,
.gallery-card--masonry.image-error,
.gallery-card--masonry.has-image-error{
  display:inline-block!important;
  width:100%!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  contain:none!important;
  break-inside:avoid!important;
  -webkit-column-break-inside:avoid!important;
  page-break-inside:avoid!important;
  margin:0 0 28px!important;
  background:#fff!important;
}
.gallery-reveal{opacity:1!important;transform:none!important;transition:box-shadow .22s var(--ease),border-color .22s var(--ease)!important;}
.gallery-reveal.visible{opacity:1!important;transform:none!important;}
.gallery-card--masonry:hover{transform:none!important;}
.gallery-cover-wrap{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-height:160px!important;
  max-height:620px!important;
  overflow:hidden!important;
  background:#f4f4f4!important;
  border-radius:22px 22px 0 0!important;
}
.gallery-cover{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:620px!important;
  object-fit:contain!important;
  object-position:var(--gallery-x,50%) var(--gallery-y,50%)!important;
  transform:scale(var(--gallery-zoom,1))!important;
  transform-origin:var(--gallery-x,50%) var(--gallery-y,50%)!important;
  opacity:1!important;
  visibility:visible!important;
  background:#f4f4f4!important;
}
.gallery-card--masonry:hover .gallery-cover{transform:scale(var(--gallery-zoom,1))!important;filter:none!important;}
.gallery-image-fallback{
  display:grid;
  place-items:center;
  min-height:260px;
  padding:24px;
  color:#777;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  background:#f4f4f4;
}
.gallery-image-fallback[hidden]{display:none!important;}
.gallery-card--masonry.has-image-error .gallery-image-fallback{display:grid!important;}
.gallery-card--masonry.has-image-error .gallery-cover{display:none!important;}
@media(max-width:1020px){.gallery-grid.gallery-masonry{column-count:2!important;column-width:280px!important;column-gap:22px!important;}}
@media(max-width:680px){.gallery-grid.gallery-masonry{column-count:1!important;column-width:auto!important;column-gap:0!important;}.gallery-cover-wrap,.gallery-cover{max-height:520px!important;}}

/* === Gallery masonry hard fix v2: JS column layout, no invisible cards ===
   Replaces CSS multi-column masonry on the public gallery because Safari sometimes
   paints later cards as invisible white boxes. This keeps Pinterest-style vertical
   columns while ensuring every card is a real visible block. */
.gallery-grid.gallery-masonry.gallery-masonry-js{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:28px!important;
  column-count:initial!important;
  column-width:initial!important;
  column-gap:initial!important;
  max-width:1180px!important;
  margin:0 auto!important;
  align-items:start!important;
  overflow:visible!important;
}
.gallery-masonry-col{
  display:flex!important;
  flex-direction:column!important;
  gap:28px!important;
  min-width:0!important;
  overflow:visible!important;
}
.gallery-masonry-js .gallery-card--masonry,
.gallery-masonry-js .gallery-card--masonry.gallery-reveal,
.gallery-masonry-js .gallery-card--masonry.gallery-reveal.visible{
  display:block!important;
  width:100%!important;
  margin:0!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  contain:none!important;
  break-inside:auto!important;
  -webkit-column-break-inside:auto!important;
  page-break-inside:auto!important;
  background:#fff!important;
  overflow:hidden!important;
}
.gallery-masonry-js .gallery-card--masonry:hover{
  transform:none!important;
  box-shadow:0 18px 48px rgba(0,0,0,.08)!important;
  border-color:rgba(0,0,0,.16)!important;
}
.gallery-masonry-js .gallery-cover-wrap{
  width:100%!important;
  max-height:520px!important;
  overflow:hidden!important;
  background:#f4f4f4!important;
  border-radius:22px 22px 0 0!important;
}
.gallery-masonry-js .gallery-cover{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:520px!important;
  object-fit:contain!important;
  opacity:1!important;
  visibility:visible!important;
  background:#f4f4f4!important;
}
@media(max-width:1020px){
  .gallery-grid.gallery-masonry.gallery-masonry-js{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px!important;}
  .gallery-masonry-col{gap:22px!important;}
}
@media(max-width:680px){
  .gallery-grid.gallery-masonry.gallery-masonry-js{grid-template-columns:1fr!important;gap:20px!important;}
  .gallery-masonry-col{gap:20px!important;}
  .gallery-masonry-js .gallery-cover-wrap{border-radius:18px 18px 0 0!important;max-height:520px!important;}
}

/* === Final gallery masonry spacing: small visible gap between cards === */
.gallery-grid.gallery-masonry.gallery-masonry-js{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  column-gap:18px!important;
  row-gap:18px!important;
}
.gallery-masonry-col{
  gap:18px!important;
}
@media(max-width:1020px){
  .gallery-grid.gallery-masonry.gallery-masonry-js{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
    column-gap:16px!important;
    row-gap:16px!important;
  }
  .gallery-masonry-col{gap:16px!important;}
}
@media(max-width:680px){
  .gallery-grid.gallery-masonry.gallery-masonry-js{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  .gallery-masonry-col{gap:20px!important;}
}

/* === Gallery lightbox mobile caption/date separation fix ===
   Prevents the per-image caption, divider line, date, and title from colliding on mobile.
   The focused image now has its own block, the caption sits clearly below it, and the
   meta separator starts after a safe gap. */
.gallery-lightbox__figure{
  gap:14px!important;
  padding-bottom:14px!important;
}
.gallery-lightbox__caption{
  display:block!important;
  max-width:760px!important;
  margin:0 auto 8px!important;
  padding:0 12px!important;
  text-align:center!important;
  font-size:14px!important;
  line-height:1.45!important;
  color:#5f5f5f!important;
  min-height:0!important;
  position:relative!important;
  z-index:2!important;
}
.gallery-lightbox__caption[hidden]{
  display:none!important;
}
.gallery-lightbox__meta{
  margin-top:8px!important;
  padding-top:18px!important;
  border-top:1px solid rgba(0,0,0,.08)!important;
  position:relative!important;
  z-index:1!important;
}
@media(max-width:860px){
  .gallery-lightbox__panel{
    grid-template-rows:auto auto auto!important;
    align-content:start!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .gallery-lightbox__figure{
    margin-top:6px!important;
    padding-bottom:18px!important;
    gap:12px!important;
    border-bottom:0!important;
  }
  .gallery-lightbox__image{
    max-height:min(36vh, calc(100dvh - 500px))!important;
    margin:0 auto!important;
  }
  .gallery-lightbox__caption{
    margin:0 auto 12px!important;
    padding:0 18px!important;
    font-size:13px!important;
    line-height:1.4!important;
    color:#666!important;
  }
  .gallery-lightbox__meta{
    margin-top:4px!important;
    padding-top:18px!important;
    clear:both!important;
  }
  .gallery-lightbox__date{
    display:block!important;
    margin-bottom:10px!important;
    line-height:1.2!important;
  }
  .gallery-lightbox__title{
    margin-top:0!important;
  }
}
@media(max-width:520px){
  .gallery-lightbox__panel{
    padding:54px 18px 18px!important;
    max-height:calc(100dvh - 18px)!important;
  }
  .gallery-lightbox__image{
    max-height:min(30vh, calc(100dvh - 540px))!important;
  }
  .gallery-lightbox__caption{
    margin-bottom:14px!important;
  }
  .gallery-lightbox__meta{
    padding-top:20px!important;
  }
}

/* === Gallery lightbox final mobile layout fix: no border over image, no text collision, arrows beside image === */
@media(max-width:860px){
  .gallery-lightbox__panel{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:12px!important;
    padding:58px 22px 20px!important;
    max-height:calc(100svh - 20px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    border-radius:24px!important;
  }
  .gallery-lightbox__figure{
    order:1!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    width:100%!important;
    margin:0!important;
    padding:0 0 10px!important;
    border:0!important;
    overflow:visible!important;
    min-height:0!important;
  }
  .gallery-lightbox__image{
    display:block!important;
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:min(40svh, 330px)!important;
    object-fit:contain!important;
    flex:0 0 auto!important;
    margin:0 auto!important;
    border-radius:16px!important;
    box-shadow:0 10px 30px rgba(0,0,0,.10)!important;
  }
  .gallery-lightbox__caption{
    display:block!important;
    position:static!important;
    z-index:auto!important;
    max-width:100%!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:0 8px!important;
    text-align:center!important;
    font-size:13px!important;
    line-height:1.38!important;
    color:#666!important;
  }
  .gallery-lightbox__caption[hidden]{display:none!important;}
  .gallery-lightbox__meta{
    order:2!important;
    display:block!important;
    margin:0!important;
    padding:6px 0 0!important;
    border-top:0!important;
    clear:both!important;
    position:relative!important;
    z-index:2!important;
  }
  .gallery-lightbox__date{
    display:block!important;
    margin:0 0 10px!important;
    line-height:1.2!important;
  }
  .gallery-lightbox__title{
    margin:0 0 10px!important;
    line-height:1.08!important;
  }
  .gallery-lightbox__description{
    margin:0!important;
    line-height:1.55!important;
  }
  .gallery-lightbox__counter{
    margin-top:14px!important;
  }
  .gallery-lightbox__thumbs{
    order:3!important;
    width:100%!important;
    padding-top:4px!important;
  }
  .gallery-lightbox__arrow{
    position:absolute!important;
    top:var(--gallery-arrow-top, 190px)!important;
    transform:translateY(-50%)!important;
    z-index:8!important;
    width:44px!important;
    height:44px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.92)!important;
    box-shadow:0 10px 26px rgba(0,0,0,.12)!important;
  }
  .gallery-lightbox__arrow--prev{left:18px!important;right:auto!important;}
  .gallery-lightbox__arrow--next{right:18px!important;left:auto!important;}
  .gallery-lightbox__close{
    top:16px!important;
    right:16px!important;
    z-index:12!important;
  }
}
@media(max-width:520px){
  .gallery-lightbox__panel{
    padding:58px 20px 18px!important;
    max-height:calc(100svh - 18px)!important;
  }
  .gallery-lightbox__image{
    max-height:min(36svh, 300px)!important;
  }
  .gallery-lightbox__arrow--prev{left:16px!important;}
  .gallery-lightbox__arrow--next{right:16px!important;}
}


/* === HARD FIX: mobile gallery lightbox vertical flow (20260625-0518) ===
   Stops image/caption/date/title overlap on iPhone Safari by removing the
   mixed grid positioning and forcing a strict top-to-bottom document flow. */
@media (max-width: 860px) {
  .gallery-lightbox {
    place-items: start center !important;
    overflow-y: auto !important;
    padding: 10px 0 calc(18px + env(safe-area-inset-bottom, 0px)) !important;
  }
  .gallery-lightbox__panel {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: calc(100vw - 18px) !important;
    max-height: calc(100svh - 24px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
    padding: 64px 22px 20px !important;
    gap: 0 !important;
    border-radius: 24px !important;
  }
  .gallery-lightbox__figure {
    order: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 0 22px !important;
    gap: 10px !important;
    position: relative !important;
    border: 0 !important;
    border-bottom: 0 !important;
    overflow: visible !important;
    min-height: 0 !important;
    flex: 0 0 auto !important;
  }
  .gallery-lightbox__figure::before,
  .gallery-lightbox__figure::after,
  .gallery-lightbox__meta::before,
  .gallery-lightbox__meta::after {
    content: none !important;
    display: none !important;
  }
  .gallery-lightbox__image {
    order: 1 !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: min(34svh, 290px) !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto !important;
    flex: 0 0 auto !important;
    position: relative !important;
    z-index: 1 !important;
    border-radius: 16px !important;
  }
  .gallery-lightbox__caption {
    order: 2 !important;
    display: block !important;
    position: static !important;
    transform: none !important;
    width: 100% !important;
    max-width: 560px !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 0 8px !important;
    text-align: center !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    color: #666 !important;
    z-index: 1 !important;
    background: transparent !important;
  }
  .gallery-lightbox__caption[hidden],
  .gallery-lightbox__caption:empty {
    display: none !important;
  }
  .gallery-lightbox__meta {
    order: 2 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-top: 0 !important;
    position: static !important;
    clear: both !important;
    flex: 0 0 auto !important;
    z-index: 2 !important;
  }
  .gallery-lightbox__date {
    display: block !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    letter-spacing: .18em !important;
    position: static !important;
  }
  .gallery-lightbox__title {
    display: block !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    font-size: clamp(25px, 7vw, 34px) !important;
    line-height: 1.06 !important;
    letter-spacing: -0.035em !important;
    position: static !important;
    clear: both !important;
  }
  .gallery-lightbox__description {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: clamp(18px, 5.2vw, 22px) !important;
    line-height: 1.45 !important;
    position: static !important;
  }
  .gallery-lightbox__counter {
    display: block !important;
    margin: 16px 0 0 !important;
    padding: 0 !important;
    position: static !important;
  }
  .gallery-lightbox__thumbs {
    order: 3 !important;
    display: flex !important;
    width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 0 0 4px !important;
    position: static !important;
    flex: 0 0 auto !important;
  }
  .gallery-lightbox__arrow {
    position: absolute !important;
    top: var(--gallery-arrow-top, 210px) !important;
    transform: translateY(-50%) !important;
    width: 44px !important;
    height: 44px !important;
    z-index: 9 !important;
  }
  .gallery-lightbox__arrow--prev { left: 16px !important; right: auto !important; }
  .gallery-lightbox__arrow--next { right: 16px !important; left: auto !important; }
  .gallery-lightbox__close {
    top: 16px !important;
    right: 16px !important;
    z-index: 12 !important;
  }
}
@media (max-width: 520px) {
  .gallery-lightbox__panel {
    width: calc(100vw - 16px) !important;
    padding: 62px 18px 18px !important;
    max-height: calc(100svh - 22px) !important;
  }
  .gallery-lightbox__image {
    max-height: min(31svh, 250px) !important;
  }
  .gallery-lightbox__arrow--prev { left: 14px !important; }
  .gallery-lightbox__arrow--next { right: 14px !important; }
}


/* === Gallery lightbox UX refinement: smaller type + tap-to-expand image === */
.gallery-lightbox__image{
  cursor: zoom-in!important;
}
.gallery-lightbox__date{
  font-size:10px!important;
  letter-spacing:.14em!important;
}
.gallery-lightbox__title{
  font-size:clamp(20px,1.9vw,30px)!important;
  line-height:1.08!important;
  letter-spacing:-.028em!important;
}
.gallery-lightbox__description{
  font-size:14px!important;
  line-height:1.5!important;
}
.gallery-lightbox__caption{
  font-size:12.5px!important;
  line-height:1.35!important;
}
.gallery-lightbox__counter{
  font-size:11px!important;
}
.gallery-lightbox.is-expanded .gallery-lightbox__panel{
  max-width:min(1320px,calc(100vw - 32px))!important;
}
.gallery-lightbox.is-expanded .gallery-lightbox__image{
  cursor: zoom-out!important;
  max-height:min(76vh,calc(100dvh - 150px))!important;
  max-width:min(100%,1120px)!important;
}
.gallery-lightbox.is-expanded .gallery-lightbox__caption,
.gallery-lightbox.is-expanded .gallery-lightbox__meta,
.gallery-lightbox.is-expanded .gallery-lightbox__thumbs{
  display:none!important;
}
.gallery-lightbox.is-expanded .gallery-lightbox__figure{
  padding:0!important;
  gap:0!important;
}
.gallery-lightbox.is-expanded .gallery-lightbox__arrow{
  top:50%!important;
}
@media(max-width:860px){
  .gallery-lightbox__date{font-size:11px!important;letter-spacing:.16em!important;margin-bottom:9px!important;}
  .gallery-lightbox__title{font-size:clamp(23px,6.2vw,30px)!important;line-height:1.06!important;margin-bottom:10px!important;}
  .gallery-lightbox__description{font-size:clamp(16px,4.6vw,19px)!important;line-height:1.42!important;}
  .gallery-lightbox__caption{font-size:12.5px!important;line-height:1.35!important;}
  .gallery-lightbox.is-expanded{
    align-items:center!important;
    justify-content:center!important;
    padding:8px!important;
  }
  .gallery-lightbox.is-expanded .gallery-lightbox__panel{
    width:calc(100vw - 16px)!important;
    max-height:calc(100svh - 16px)!important;
    padding:58px 14px 14px!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  .gallery-lightbox.is-expanded .gallery-lightbox__image{
    max-height:calc(100svh - 110px)!important;
    max-width:100%!important;
  }
  .gallery-lightbox.is-expanded .gallery-lightbox__arrow{
    top:50%!important;
  }
}


/* === Insights page: use available desktop width with 4-card rows === */
body.blog-template main > .section > .container{
  max-width:1440px!important;
  padding-left:clamp(22px,3.5vw,56px)!important;
  padding-right:clamp(22px,3.5vw,56px)!important;
}
body.blog-template .posts-grid{
  width:100%!important;
  max-width:1328px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:22px!important;
  justify-content:stretch!important;
  align-items:stretch!important;
}
body.blog-template .post-card{
  width:100%!important;
  max-width:none!important;
}
body.blog-template .post-card__image-link{height:152px!important;}
@media(max-width:1180px){
  body.blog-template .posts-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:1020px!important;}
}
@media(max-width:900px){
  body.blog-template .posts-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:700px!important;}
}
@media(max-width:620px){
  body.blog-template main > .section > .container{padding-left:20px!important;padding-right:20px!important;}
  body.blog-template .posts-grid{grid-template-columns:minmax(0,340px)!important;justify-content:center!important;max-width:340px!important;}
}
