/* =========================================================
   BLEMLAB FINAL POLISH — shared public UI
   Stable navigation, footer, Blema, work system, offers/contact.
   ========================================================= */
:root{
  --bl-blue:#0071e3;
  --bl-blue-hover:#0077ed;
  --bl-ink:#1d1d1f;
  --bl-muted:#6e6e73;
  --bl-soft:#86868b;
  --bl-bg:#f5f5f7;
  --bl-card:#fff;
  --bl-line:#d2d2d7;
  --bl-dark:#000;
  --bl-dark-card:#111113;
  --bl-radius:32px;
}
body:not(.admin-body){overflow-x:hidden;background:var(--bl-bg)}

/* ---------- stable global navigation ---------- */
.site-header:not(.admin-top){
  top:0!important;
  height:52px!important;
  padding:0!important;
  background:rgba(22,22,23,.86)!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:saturate(180%) blur(22px)!important;
  -webkit-backdrop-filter:saturate(180%) blur(22px)!important;
}
.site-header:not(.admin-top) .nav-shell{
  width:min(calc(100% - 36px),1080px)!important;
  height:52px!important;
  margin:0 auto!important;
  padding:0!important;
  grid-template-columns:122px minmax(0,1fr) auto!important;
  gap:12px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.site-header:not(.admin-top).is-scrolled .nav-shell{background:transparent!important;box-shadow:none!important;border:0!important}
.site-header:not(.admin-top) .brand{height:52px!important;min-width:0}
.site-header:not(.admin-top) .brand img{display:block;width:104px!important;height:29px!important;max-height:29px!important;object-fit:contain!important;object-position:left center!important}
.site-header:not(.admin-top) .desktop-nav{justify-self:center!important;display:flex;align-items:center;gap:2px!important;padding:0!important;border:0!important;background:transparent!important;white-space:nowrap}
.site-header:not(.admin-top) .desktop-nav a{display:flex;align-items:center;height:52px;padding:0 12px!important;border-radius:0!important;color:rgba(255,255,255,.76)!important;font-size:12px!important;font-weight:450!important;letter-spacing:0!important;background:transparent!important}
.site-header:not(.admin-top) .desktop-nav a:hover,.site-header:not(.admin-top) .desktop-nav a.active{color:#fff!important;background:transparent!important}
.site-header:not(.admin-top) .nav-cta{height:30px!important;min-height:30px!important;padding:0 14px!important;border:0!important;border-radius:999px!important;background:#fff!important;color:#111!important;font-size:12px!important;font-weight:600!important;white-space:nowrap;box-shadow:none!important;transform:none!important}
.site-header:not(.admin-top) .nav-cta:hover{background:#f2f2f2!important;transform:none!important}
.site-header:not(.admin-top) .menu-button{width:36px!important;height:36px!important;border-radius:50%!important;background:transparent!important}
.site-header:not(.admin-top) .menu-button span{left:9px!important;right:9px!important;height:1px!important}
.site-header:not(.admin-top) .menu-button span:first-child{top:14px!important}.site-header:not(.admin-top) .menu-button span:last-child{top:22px!important}
.site-header:not(.admin-top) .menu-button[aria-expanded="true"] span:first-child,.site-header:not(.admin-top) .menu-button[aria-expanded="true"] span:last-child{top:18px!important}
.mobile-nav{
  left:0!important;right:0!important;top:52px!important;
  padding:26px max(22px,calc((100vw - 920px)/2)) 34px!important;
  border:0!important;border-radius:0!important;
  background:rgba(22,22,23,.98)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.18)!important;
  transform:translateY(-8px)!important;
}
.mobile-nav.open{transform:none!important}
.mobile-nav a{min-height:48px!important;margin:0!important;padding:7px 0!important;border-radius:0!important;background:transparent!important;color:#f5f5f7!important;font-size:23px!important;font-weight:600!important;border-bottom:1px solid rgba(255,255,255,.07)}
.mobile-nav a:after{content:""!important}.mobile-nav .mobile-cta{justify-content:center;margin-top:18px!important;padding:11px 18px!important;min-height:42px!important;border:0!important;border-radius:999px!important;background:var(--bl-blue)!important;font-size:15px!important}
@media(max-width:1040px){
  .site-header:not(.admin-top) .nav-shell{grid-template-columns:1fr auto!important;width:min(calc(100% - 28px),1080px)!important}
  .site-header:not(.admin-top) .desktop-nav,.site-header:not(.admin-top) .nav-cta{display:none!important}
  .site-header:not(.admin-top) .menu-button{display:block!important}
}

/* ---------- footer: no opaque/beige logo background ---------- */
.site-footer{
  background:#f5f5f7!important;
  color:var(--bl-ink)!important;
  border-top:1px solid #dcdce0!important;
  padding:48px 0 24px!important;
}
.site-footer .container{width:min(calc(100% - 44px),1180px)!important}
.footer-grid{grid-template-columns:1.45fr .72fr .72fr 1fr!important;gap:42px!important}
.footer-logo{display:inline-flex;width:max-content;background:transparent!important;border:0!important;overflow:visible!important}
.footer-logo img{display:block;width:136px!important;height:38px!important;object-fit:contain!important;object-position:left center!important;background:transparent!important;mix-blend-mode:normal!important}
.footer-brand-block p,.footer-contact p{color:#6e6e73!important;font-size:13px!important;line-height:1.55!important}
.footer-col>span{color:#86868b!important;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text",Inter,sans-serif!important;font-size:11px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important}
.footer-col a{color:#424245!important;font-size:12px!important;font-weight:400!important;line-height:1.8!important}
.footer-col a:hover{color:#000!important}
.footer-email{color:#1d1d1f!important;font-size:14px!important;font-weight:500!important}
.footer-socials{gap:14px!important}.footer-socials a,.footer-whatsapp{padding:0!important;border:0!important;background:transparent!important;border-radius:0!important;min-height:0!important}
.footer-bottom{color:#86868b!important;border-color:#dcdce0!important;font-size:11px!important}
@media(max-width:960px){.footer-grid{grid-template-columns:1.3fr 1fr 1fr!important}.footer-contact{grid-column:1/-1!important}}
@media(max-width:640px){.footer-grid{grid-template-columns:1fr 1fr!important}.footer-brand-block,.footer-contact{grid-column:1/-1!important}.site-footer .container{width:calc(100% - 32px)!important}}

/* ---------- Blema: compact Apple-like assistant ---------- */
.blema-chat{right:22px!important;bottom:22px!important;z-index:880!important}
.blema-launcher{
  width:54px!important;height:54px!important;padding:0!important;
  display:grid!important;place-items:center!important;
  border:1px solid rgba(0,0,0,.08)!important;border-radius:50%!important;
  background:rgba(255,255,255,.88)!important;color:#1d1d1f!important;
  box-shadow:0 10px 35px rgba(0,0,0,.16)!important;
  backdrop-filter:saturate(180%) blur(24px)!important;-webkit-backdrop-filter:saturate(180%) blur(24px)!important;
  transition:transform .22s ease,box-shadow .22s ease!important;
}
.blema-launcher:hover{transform:scale(1.04)!important;box-shadow:0 14px 42px rgba(0,0,0,.2)!important}
.blema-launch-avatar{width:38px!important;height:38px!important;border-radius:50%!important;overflow:hidden!important;display:block!important;background:linear-gradient(145deg,#eef4ff,#dfe9ff)!important}
.blema-launch-avatar img{display:block;width:100%!important;height:100%!important;object-fit:cover!important}
.blema-launch-copy,.blema-launch-dot{display:none!important}
.blema-panel{
  right:0!important;bottom:66px!important;width:min(390px,calc(100vw - 28px))!important;
  border:1px solid rgba(0,0,0,.10)!important;border-radius:28px!important;
  background:rgba(250,250,252,.94)!important;color:#1d1d1f!important;
  box-shadow:0 30px 90px rgba(0,0,0,.22)!important;
  backdrop-filter:saturate(180%) blur(28px)!important;-webkit-backdrop-filter:saturate(180%) blur(28px)!important;
  overflow:hidden!important;
}
.blema-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:16px 16px 14px!important;border-bottom:1px solid rgba(0,0,0,.08)!important}
.blema-identity{display:flex!important;align-items:center!important;gap:10px!important}.blema-avatar{display:block!important;width:34px!important;height:34px!important;border-radius:50%!important;overflow:hidden!important;background:#eef3ff!important}.blema-avatar img{width:100%!important;height:100%!important;object-fit:cover!important}.blema-identity strong{display:block!important;color:#1d1d1f!important;font-size:14px!important}.blema-head small{color:#86868b!important;font-size:10px!important}
.blema-head>button{width:30px!important;height:30px!important;border:0!important;border-radius:50%!important;background:#e8e8ed!important;color:#424245!important;font-size:18px!important;line-height:1!important;cursor:pointer!important}
.blema-body{padding:14px!important;gap:10px!important;background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(245,245,247,.88))!important}
.blema-intro-card{display:grid!important;grid-template-columns:1fr auto!important;align-items:end!important;gap:12px!important;padding:16px!important;border:0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 1px 0 rgba(0,0,0,.04)!important}
.blema-intro-portrait{width:48px!important;height:48px!important;border-radius:50%!important;overflow:hidden!important;background:#eef3ff!important}.blema-intro-portrait img{width:100%!important;height:100%!important;object-fit:cover!important}
.blema-kicker{display:block!important;margin-bottom:6px!important;color:#86868b!important;font-size:10px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important}
.blema-body p{color:#424245!important;font-size:14px!important;line-height:1.45!important}
.blema-prompt-group{padding:3px 2px 0!important}.blema-prompts{display:flex!important;gap:7px!important;flex-wrap:wrap!important}
.blema-prompts button{padding:8px 11px!important;border:1px solid #d2d2d7!important;border-radius:999px!important;background:#fff!important;color:#424245!important;font-size:11px!important;font-weight:500!important}
.blema-prompts button:hover,.blema-prompts button.active{background:#1d1d1f!important;border-color:#1d1d1f!important;color:#fff!important}
.blema-response{padding:13px 14px!important;border:0!important;border-radius:18px!important;background:#e9f2ff!important;color:#1d1d1f!important}.blema-response strong{font-size:12px!important}.blema-response ul{margin:7px 0 0!important;padding-left:17px!important;color:#424245!important;font-size:12px!important;line-height:1.55!important}
.blema-form{display:grid!important;grid-template-columns:1fr 38px!important;gap:7px!important;align-items:center!important;padding:5px!important;border:1px solid #d2d2d7!important;border-radius:999px!important;background:#fff!important}
.blema-form input{height:36px!important;padding:0 10px!important;border:0!important;border-radius:999px!important;background:transparent!important;color:#1d1d1f!important;font-size:12px!important;outline:0!important}
.blema-form button{width:36px!important;height:36px!important;padding:0!important;border:0!important;border-radius:50%!important;background:var(--bl-blue)!important;color:#fff!important;font-size:0!important;display:grid!important;place-items:center!important}
.blema-form button:after{content:"↑";font-size:17px;font-weight:700;line-height:1}
@media(max-width:560px){.blema-chat{right:14px!important;bottom:14px!important}.blema-panel{position:fixed!important;left:12px!important;right:12px!important;bottom:78px!important;width:auto!important}.blema-launcher{width:50px!important;height:50px!important}.blema-launch-avatar{width:35px!important;height:35px!important}}

/* ---------- homepage: tighter hierarchy ---------- */
.apple-home .apple-notice{height:96px!important;padding-top:52px!important;background:#fff!important;color:#424245!important}
.apple-home .product-band{border-bottom:0!important}
.apple-home .hero-band{padding-top:86px!important;min-height:820px!important}
.apple-home .hero-band .product-copy{max-width:1080px!important}
.apple-home .hero-band h1{font-size:clamp(62px,8.1vw,116px)!important;letter-spacing:-.07em!important}
.apple-home .hero-band .subhead{max-width:700px!important}
.apple-home .tile-grid{gap:10px!important;padding:10px!important}
.apple-home .home-tile{border-radius:0!important}
.apple-home .process-band{min-height:690px!important}.apple-home .process-row{max-width:980px!important}
.apple-home .apple-cta{padding:112px 22px!important}

/* ---------- work archive ----------
   Restored to the original case-study layouts from the pre-polish version.
   Work-specific sizing/grid overrides intentionally removed so apple-theme.css
   controls each project presentation again. */

/* ---------- Offers: product-page feel ---------- */
.offers-page{background:#f5f5f7!important;color:#1d1d1f!important}
.offers-page .page-hero{padding:160px 0 88px!important;background:#fff!important}
.offers-page .page-hero-grid{display:block!important;text-align:center!important;max-width:1050px!important}
.offers-page .page-hero-grid>div{display:block!important}.offers-page .page-hero .eyebrow{margin-bottom:12px!important;color:#86868b!important}.offers-page .page-hero h1{max-width:980px!important;margin:0 auto!important;font-size:clamp(58px,7.4vw,106px)!important;line-height:.91!important;letter-spacing:-.07em!important}.offers-page .page-hero h1 span{color:#86868b!important}.offers-page .page-hero .lead{max-width:700px!important;margin:24px auto 0!important;text-align:center!important;font-size:20px!important;line-height:1.45!important;color:#6e6e73!important}
.offers-page .section{padding:18px 0 118px!important}.offers-page .offer-detail-grid{display:grid!important;gap:18px!important;max-width:1180px!important}
.offers-page .offer-detail{
  min-height:430px!important;padding:44px!important;border:0!important;border-radius:36px!important;background:#fff!important;color:#1d1d1f!important;
  display:grid!important;grid-template-columns:100px minmax(0,1fr) minmax(340px,.8fr)!important;grid-template-rows:auto 1fr auto!important;column-gap:38px!important;row-gap:14px!important;box-shadow:0 1px 0 rgba(0,0,0,.05)!important;transform:none!important;
}
.offers-page .offer-detail.featured{background:#000!important;color:#f5f5f7!important}
.offers-page .offer-detail>small{grid-column:1;grid-row:1;color:#86868b!important;font:600 11px/1.2 -apple-system,BlinkMacSystemFont,"SF Pro Text",Inter,sans-serif!important;letter-spacing:0!important;text-transform:none!important}
.offers-page .offer-detail>h2{grid-column:2;grid-row:1;margin:0!important;font-size:clamp(48px,5.8vw,78px)!important;line-height:.95!important;letter-spacing:-.06em!important;color:inherit!important}
.offers-page .offer-detail>p{grid-column:2;grid-row:2;max-width:590px!important;margin:10px 0 0!important;color:#6e6e73!important;font-size:18px!important;line-height:1.5!important}.offers-page .offer-detail.featured>p{color:#a1a1a6!important}
.offers-page .deliverable-grid{grid-column:3;grid-row:1/4;align-self:stretch;display:grid!important;grid-template-columns:1fr!important;gap:0!important;border-left:1px solid #e5e5e7!important;padding-left:36px!important}.offers-page .featured .deliverable-grid{border-color:#2c2c2e!important}
.offers-page .deliverable-grid span{display:flex!important;align-items:center!important;min-height:54px!important;padding:0!important;border:0!important;border-bottom:1px solid #e5e5e7!important;border-radius:0!important;background:transparent!important;color:#424245!important;font-size:14px!important;font-weight:500!important}.offers-page .featured .deliverable-grid span{border-color:#2c2c2e!important;color:#d2d2d7!important}.offers-page .offer-detail>.btn{grid-column:2;grid-row:3;justify-self:start!important;margin-top:18px!important}
@media(max-width:900px){.offers-page .offer-detail{grid-template-columns:54px 1fr!important}.offers-page .offer-detail>small{grid-column:1}.offers-page .offer-detail>h2,.offers-page .offer-detail>p,.offers-page .offer-detail>.btn{grid-column:2}.offers-page .deliverable-grid{grid-column:2;grid-row:auto;border-left:0!important;border-top:1px solid #e5e5e7!important;padding:22px 0 0!important}.offers-page .featured .deliverable-grid{border-color:#2c2c2e!important}}
@media(max-width:600px){.offers-page .page-hero{padding:122px 0 62px!important}.offers-page .page-hero h1{font-size:clamp(48px,14vw,68px)!important}.offers-page .page-hero .lead{font-size:17px!important}.offers-page .section{padding-bottom:78px!important}.offers-page .offer-detail{min-height:0!important;padding:28px 22px!important;border-radius:26px!important;grid-template-columns:1fr!important}.offers-page .offer-detail>small,.offers-page .offer-detail>h2,.offers-page .offer-detail>p,.offers-page .offer-detail>.btn,.offers-page .deliverable-grid{grid-column:1!important}.offers-page .offer-detail>h2{font-size:46px!important}.offers-page .offer-detail>p{font-size:16px!important}.offers-page .deliverable-grid{padding-top:14px!important}.offers-page .offer-detail>.btn{width:auto!important}}

/* ---------- Contact: calm Apple-style intake ---------- */
.contact-page{background:#fff!important;color:#1d1d1f!important}
.contact-page .page-hero{padding:158px 0 74px!important;background:#fff!important}
.contact-page .page-hero-grid{display:block!important;text-align:center!important;max-width:970px!important}
.contact-page .page-hero-grid>div{display:block!important}.contact-page .page-hero .eyebrow{margin-bottom:12px!important;color:#86868b!important}.contact-page .page-hero h1{max-width:900px!important;margin:0 auto!important;font-size:clamp(60px,7.6vw,108px)!important;line-height:.91!important;letter-spacing:-.07em!important}.contact-page .page-hero h1 span{color:#86868b!important}.contact-page .page-hero .lead{max-width:670px!important;margin:24px auto 0!important;text-align:center!important;color:#6e6e73!important;font-size:20px!important;line-height:1.45!important}
.contact-page .section{background:#f5f5f7!important;padding:72px 0 118px!important}.contact-page .request-shell{grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr)!important;gap:18px!important;align-items:start!important;max-width:1180px!important}
.contact-page .request-intro{top:82px!important;padding:34px!important;border:0!important;border-radius:32px!important;background:#000!important;color:#f5f5f7!important;box-shadow:none!important;gap:18px!important}.contact-page .request-intro .eyebrow{color:#86868b!important}.contact-page .request-intro h2{font-size:clamp(42px,4.6vw,66px)!important;line-height:.94!important;letter-spacing:-.055em!important}.contact-page .request-intro>p:not(.eyebrow){color:#a1a1a6!important;font-size:16px!important;line-height:1.5!important}.contact-page .choice-tabs{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:8px!important}.contact-page .choice-tabs button{min-height:48px!important;padding:0 15px!important;border:1px solid #2c2c2e!important;border-radius:14px!important;background:#111113!important;color:#d2d2d7!important;font-size:13px!important;font-weight:550!important;text-align:left!important}.contact-page .choice-tabs button.active{background:#f5f5f7!important;border-color:#f5f5f7!important;color:#1d1d1f!important}
.contact-page .request-form{padding:38px!important;border:0!important;border-radius:32px!important;background:#fff!important;box-shadow:0 1px 0 rgba(0,0,0,.05)!important;gap:20px!important}.contact-page .request-form label{gap:8px!important}.contact-page .request-form label span{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text",Inter,sans-serif!important;color:#424245!important;font-size:12px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important}.contact-page .request-form input,.contact-page .request-form textarea,.contact-page .request-form select{min-height:52px!important;padding:13px 14px!important;border:1px solid #d2d2d7!important;border-radius:14px!important;background:#fff!important;color:#1d1d1f!important;font-size:15px!important;box-shadow:none!important}.contact-page .request-form textarea{min-height:150px!important;resize:vertical}.contact-page .request-form input:focus,.contact-page .request-form textarea:focus,.contact-page .request-form select:focus{border-color:#0071e3!important;box-shadow:0 0 0 4px rgba(0,113,227,.10)!important}.contact-page .inline-brief-grid{padding:0!important;background:transparent!important;border:0!important;gap:14px!important}.contact-page .calendar-block{gap:12px!important}.contact-page .calendar-card{padding:18px!important;border:1px solid #e5e5e7!important;border-radius:18px!important;background:#f5f5f7!important}.contact-page .calendar-head strong{color:#1d1d1f!important}.contact-page .calendar-head span{color:#86868b!important}.contact-page .date-options button,.contact-page .time-options button{border:1px solid #d2d2d7!important;border-radius:11px!important;background:#fff!important;color:#424245!important}.contact-page .date-options button.active,.contact-page .time-options button.active{background:#1d1d1f!important;border-color:#1d1d1f!important;color:#fff!important}.contact-page .file-upload{padding:18px!important;border:1px dashed #c7c7cc!important;border-radius:18px!important;background:#fafafa!important}.contact-page .file-upload small{color:#86868b!important}.contact-page .form-actions{padding-top:4px!important}.contact-page .form-actions .btn{min-height:46px!important}.contact-page .form-actions .btn.secondary{background:#e8e8ed!important;color:#1d1d1f!important}
@media(max-width:900px){.contact-page .request-shell{grid-template-columns:1fr!important}.contact-page .request-intro{position:static!important}.contact-page .choice-tabs{grid-template-columns:1fr 1fr!important}}
@media(max-width:600px){.contact-page .page-hero{padding:122px 0 58px!important}.contact-page .page-hero h1{font-size:clamp(48px,14vw,68px)!important}.contact-page .page-hero .lead{font-size:17px!important}.contact-page .section{padding:32px 0 78px!important}.contact-page .request-shell{width:calc(100% - 24px)!important}.contact-page .request-intro,.contact-page .request-form{padding:24px 20px!important;border-radius:24px!important}.contact-page .choice-tabs{grid-template-columns:1fr!important}.contact-page .form-grid.two{grid-template-columns:1fr!important}.contact-page .form-actions{display:grid!important}.contact-page .form-actions .btn{width:100%!important}}

/* ---------- case galleries ----------
   Original per-project editorial layouts restored. */

/* ===== BLEMLAB NAV / CARDS / BLEMA FINAL FIX ===== */

/* Navbar: remove the full-width black/backdrop layer that caused rendering glitches. */
.site-header:not(.admin-top){
  top:8px!important;
  height:44px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  pointer-events:none!important;
}
.site-header:not(.admin-top) .nav-shell{
  width:min(calc(100% - 28px),1080px)!important;
  height:44px!important;
  padding:0 8px 0 14px!important;
  grid-template-columns:116px minmax(0,1fr) auto!important;
  gap:10px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:16px!important;
  background:#18181a!important;
  box-shadow:0 8px 28px rgba(0,0,0,.14)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  pointer-events:auto!important;
  transform:translateZ(0)!important;
  contain:paint!important;
}
.site-header:not(.admin-top).is-scrolled .nav-shell{
  background:#18181a!important;
  border-color:rgba(255,255,255,.10)!important;
  box-shadow:0 8px 28px rgba(0,0,0,.14)!important;
}
.site-header:not(.admin-top) .brand{height:44px!important;display:flex!important;align-items:center!important}
.site-header:not(.admin-top) .brand img{width:98px!important;height:25px!important;max-height:25px!important}
.site-header:not(.admin-top) .desktop-nav a{height:44px!important;padding:0 10px!important}
.site-header:not(.admin-top) .nav-cta{height:28px!important;min-height:28px!important;padding:0 13px!important}
.site-header:not(.admin-top) .menu-button{height:34px!important;width:34px!important}
.mobile-nav{top:60px!important;background:#18181a!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.apple-home .apple-notice{padding-top:60px!important;height:104px!important}
@media(max-width:1040px){
  .site-header:not(.admin-top) .nav-shell{grid-template-columns:1fr auto!important;width:calc(100% - 20px)!important}
}

/* Card rhythm: no arbitrary blank areas, no stretched empty panels. */
.card-grid,.case-grid,.offer-detail-grid,.member-work-grid,.creative-reel-grid,.creative-video-grid{align-items:start!important}
body:not(.admin-body) .info-card,
body:not(.admin-body) .capability-card,
body:not(.admin-body) .system-card,
body:not(.admin-body) .price-card,
body:not(.admin-body) .audience-card,
body:not(.admin-body) .offer-detail{
  min-height:0!important;
  height:auto!important;
}
body:not(.admin-body) .info-card,
body:not(.admin-body) .capability-card,
body:not(.admin-body) .system-card,
body:not(.admin-body) .price-card,
body:not(.admin-body) .audience-card{padding:26px!important}
body:not(.admin-body) .info-card h3,
body:not(.admin-body) .capability-card h3,
body:not(.admin-body) .system-card h3,
body:not(.admin-body) .price-card h3,
body:not(.admin-body) .audience-card h3{margin:26px 0 10px!important}
body:not(.admin-body) .info-card a{display:inline-flex!important;margin-top:20px!important}
.offers-page .offer-detail{min-height:0!important;padding:34px 36px!important;align-items:start!important}
.offers-page .deliverable-grid{align-self:start!important}
.member-site-card .member-work-copy,#ouassim .member-site-card .member-work-copy{min-height:0!important;height:auto!important;padding:16px 18px 18px!important}
.member-work-card>div:first-child{height:auto!important}
.member-site-card>div.member-site-browser{height:auto!important}
.member-site-preview{height:auto!important;aspect-ratio:16/9!important}
.creative-video-card{height:auto!important;align-self:start!important}
.creative-video-card>small{margin-top:10px!important}
.collaboration-card,.cta-card{min-height:0!important;height:auto!important}

/* Blema: simple Apple-like chat. Bot icon launcher, clean thread, input + send. */
.blema-chat{right:22px!important;bottom:22px!important;z-index:920!important}
.blema-launcher{
  width:52px!important;height:52px!important;padding:0!important;
  display:grid!important;place-items:center!important;
  border:1px solid rgba(0,0,0,.09)!important;border-radius:50%!important;
  background:#fff!important;color:#1d1d1f!important;
  box-shadow:0 10px 34px rgba(0,0,0,.17)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  cursor:pointer!important;
}
.blema-launcher:hover{transform:translateY(-1px) scale(1.02)!important;box-shadow:0 14px 38px rgba(0,0,0,.21)!important}
.blema-bot-icon{width:25px!important;height:25px!important;display:block!important}
.blema-launch-avatar,.blema-launch-copy,.blema-launch-dot{display:none!important}
.blema-panel{
  position:absolute!important;right:0!important;bottom:64px!important;
  width:min(380px,calc(100vw - 28px))!important;
  height:min(520px,calc(100vh - 110px))!important;
  display:grid!important;grid-template-rows:auto 1fr auto!important;
  border:1px solid rgba(0,0,0,.10)!important;border-radius:22px!important;
  background:#f5f5f7!important;color:#1d1d1f!important;
  box-shadow:0 24px 75px rgba(0,0,0,.24)!important;
  overflow:hidden!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
.blema-panel[hidden]{display:none!important}
.blema-head{padding:13px 14px!important;background:rgba(255,255,255,.94)!important;border-bottom:1px solid #dedee2!important}
.blema-identity{gap:9px!important}.blema-status-dot{width:9px;height:9px;border-radius:50%;background:#34c759;box-shadow:0 0 0 3px rgba(52,199,89,.12);flex:0 0 auto}
.blema-identity strong{font-size:14px!important;color:#1d1d1f!important}.blema-identity small{display:block;color:#86868b!important;font-size:10px!important;margin-top:1px}
.blema-head>button{width:28px!important;height:28px!important;background:#e8e8ed!important;color:#515154!important;border:0!important;border-radius:50%!important;font-size:18px!important;cursor:pointer!important}
.blema-thread{min-height:0!important;overflow-y:auto!important;padding:16px 14px 18px!important;display:flex!important;flex-direction:column!important;gap:9px!important;scrollbar-width:thin}
.blema-bubble{max-width:82%!important;padding:10px 12px!important;border-radius:17px!important;font-size:13px!important;line-height:1.42!important;white-space:pre-wrap!important}
.blema-bubble--bot{align-self:flex-start!important;background:#fff!important;color:#1d1d1f!important;border-bottom-left-radius:6px!important;box-shadow:0 1px 2px rgba(0,0,0,.04)!important}
.blema-bubble--user{align-self:flex-end!important;background:#0071e3!important;color:#fff!important;border-bottom-right-radius:6px!important}
.blema-form{margin:0!important;padding:10px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 38px!important;gap:8px!important;align-items:center!important;border:0!important;border-top:1px solid #dedee2!important;border-radius:0!important;background:#fff!important}
.blema-form input{min-width:0!important;height:38px!important;padding:0 13px!important;border:1px solid #d2d2d7!important;border-radius:19px!important;background:#f7f7f8!important;color:#1d1d1f!important;font-size:13px!important;outline:0!important}
.blema-form input:focus{border-color:#a9a9ae!important;background:#fff!important;box-shadow:none!important}
.blema-form button{width:38px!important;height:38px!important;padding:0!important;border:0!important;border-radius:50%!important;background:#0071e3!important;color:#fff!important;display:grid!important;place-items:center!important;cursor:pointer!important}
.blema-form button:after{content:none!important}.blema-form button svg{width:18px!important;height:18px!important;display:block!important}
.blema-intro-card,.blema-prompt-group,.blema-response{display:none!important}
@media(max-width:560px){
  .blema-chat{right:12px!important;bottom:12px!important}.blema-launcher{width:50px!important;height:50px!important}
  .blema-panel{position:fixed!important;left:10px!important;right:10px!important;bottom:72px!important;width:auto!important;height:min(520px,calc(100vh - 92px))!important;border-radius:20px!important}
}
/* Compact content cards on home — remove dead space while keeping hero/visual tiles intentional. */
.apple-home .pricing-grid-home .home-tile{min-height:320px!important;height:auto!important;padding:38px 28px!important}
.apple-home .pricing-grid-home .tile-copy>strong{margin:18px 0 8px!important}
@media(max-width:700px){.apple-home .pricing-grid-home .home-tile{min-height:0!important;padding:32px 22px!important}}

/* ===== BLEMA CHAT — HARD RESET / FLOATING BUTTON FIX ===== */
/* Keep the assistant as a real floating circular control. These rules deliberately
   reset older launcher sizing so it can never inherit the previous pill/bar shape. */
.blema-chat{
  position:fixed!important;
  right:22px!important;
  bottom:22px!important;
  width:54px!important;
  height:54px!important;
  max-width:54px!important;
  max-height:54px!important;
  z-index:980!important;
  pointer-events:none!important;
}
.blema-chat.open{width:54px!important;height:54px!important}
.blema-launcher{
  position:absolute!important;
  right:0!important;
  bottom:0!important;
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  min-height:54px!important;
  max-width:54px!important;
  max-height:54px!important;
  aspect-ratio:1 / 1!important;
  padding:0!important;
  margin:0!important;
  gap:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 54px!important;
  overflow:hidden!important;
  border:1px solid rgba(0,0,0,.09)!important;
  border-radius:999px!important;
  background:#1d1d1f!important;
  color:#fff!important;
  box-shadow:0 10px 30px rgba(0,0,0,.22)!important;
  line-height:0!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  transform:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.blema-launcher:hover{
  background:#000!important;
  transform:translateY(-2px)!important;
  box-shadow:0 14px 36px rgba(0,0,0,.26)!important;
}
.blema-launcher:focus-visible{outline:3px solid rgba(0,113,227,.35)!important;outline-offset:3px!important}
.blema-bot-icon{
  display:block!important;
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  min-height:25px!important;
  margin:0!important;
  flex:none!important;
  color:currentColor!important;
}
.blema-launch-avatar,.blema-launch-copy,.blema-launch-dot{display:none!important}

.blema-panel{
  position:absolute!important;
  right:0!important;
  bottom:68px!important;
  width:360px!important;
  max-width:calc(100vw - 28px)!important;
  height:500px!important;
  max-height:calc(100vh - 110px)!important;
  min-width:0!important;
  min-height:360px!important;
  display:grid!important;
  grid-template-rows:58px minmax(0,1fr) 60px!important;
  border:1px solid rgba(0,0,0,.10)!important;
  border-radius:22px!important;
  background:#f5f5f7!important;
  color:#1d1d1f!important;
  box-shadow:0 24px 70px rgba(0,0,0,.24)!important;
  overflow:hidden!important;
  pointer-events:auto!important;
  transform-origin:bottom right!important;
}
.blema-panel[hidden]{display:none!important}
.blema-head{
  height:58px!important;
  min-height:58px!important;
  padding:0 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  background:#fff!important;
  border-bottom:1px solid #e5e5e7!important;
}
.blema-identity{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important}
.blema-status-dot{width:8px!important;height:8px!important;min-width:8px!important;border-radius:50%!important;background:#34c759!important;box-shadow:none!important}
.blema-identity strong{display:block!important;font-size:14px!important;line-height:1.1!important;color:#1d1d1f!important}
.blema-identity small{display:block!important;margin-top:3px!important;color:#86868b!important;font-size:10px!important;line-height:1.1!important}
.blema-head>button{
  width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;
  padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;background:#ededf0!important;color:#515154!important;
  font-size:19px!important;line-height:1!important;cursor:pointer!important
}
.blema-thread{
  min-height:0!important;
  height:auto!important;
  padding:16px 14px 18px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:9px!important;
  background:#f5f5f7!important;
}
.blema-bubble{
  width:auto!important;
  max-width:82%!important;
  min-height:0!important;
  margin:0!important;
  padding:10px 12px!important;
  border:0!important;
  border-radius:17px!important;
  font-size:13px!important;
  line-height:1.42!important;
  font-weight:400!important;
  white-space:pre-wrap!important;
  word-break:break-word!important;
}
.blema-bubble--bot{align-self:flex-start!important;background:#fff!important;color:#1d1d1f!important;border-bottom-left-radius:6px!important;box-shadow:0 1px 2px rgba(0,0,0,.05)!important}
.blema-bubble--user{align-self:flex-end!important;background:#0071e3!important;color:#fff!important;border-bottom-right-radius:6px!important}
.blema-form{
  width:100%!important;
  height:60px!important;
  min-height:60px!important;
  margin:0!important;
  padding:10px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 38px!important;
  gap:8px!important;
  align-items:center!important;
  border:0!important;
  border-top:1px solid #e5e5e7!important;
  border-radius:0!important;
  background:#fff!important;
}
.blema-form input{
  width:100%!important;
  min-width:0!important;
  height:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0 14px!important;
  border:1px solid #d2d2d7!important;
  border-radius:999px!important;
  background:#f7f7f8!important;
  color:#1d1d1f!important;
  font-size:13px!important;
  outline:0!important;
}
.blema-form input:focus{background:#fff!important;border-color:#9b9ba0!important;box-shadow:none!important}
.blema-form button{
  width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
  padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;background:#0071e3!important;color:#fff!important;
  line-height:0!important;cursor:pointer!important
}
.blema-form button:hover{background:#0077ed!important}
.blema-form button:after{content:none!important}
.blema-form button svg{display:block!important;width:18px!important;height:18px!important;margin:0!important}
.blema-intro-card,.blema-prompt-group,.blema-response{display:none!important}

@media(max-width:560px){
  .blema-chat{right:14px!important;bottom:14px!important;width:52px!important;height:52px!important;max-width:52px!important;max-height:52px!important}
  .blema-launcher{width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;max-width:52px!important;max-height:52px!important;flex-basis:52px!important}
  .blema-panel{position:fixed!important;left:10px!important;right:10px!important;bottom:76px!important;width:auto!important;max-width:none!important;height:min(500px,calc(100dvh - 96px))!important;max-height:calc(100dvh - 96px)!important;min-height:320px!important;border-radius:20px!important}
}

/* =========================================================
   V30 — restore the original long glass navbar, without the
   GPU/backdrop layer that caused the black flash/glitch.
   ========================================================= */
.site-header:not(.admin-top){
  top:14px!important;
  left:0!important;
  right:0!important;
  height:68px!important;
  padding:0 18px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  pointer-events:none!important;
  contain:none!important;
  transform:none!important;
}
.site-header:not(.admin-top) .nav-shell,
.site-header:not(.admin-top) .nav-wrap{
  width:min(calc(100vw - 40px),1220px)!important;
  height:68px!important;
  margin:0 auto!important;
  padding:0 12px 0 20px!important;
  display:grid!important;
  grid-template-columns:180px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:26px!important;
  background:linear-gradient(180deg,rgba(14,15,18,.58),rgba(14,15,18,.47))!important;
  box-shadow:0 16px 50px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.035)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  pointer-events:auto!important;
  overflow:visible!important;
  isolation:isolate!important;
  transform:none!important;
  contain:none!important;
}
.site-header:not(.admin-top).is-scrolled .nav-shell,
.site-header:not(.admin-top).is-scrolled .nav-wrap{
  background:linear-gradient(180deg,rgba(14,15,18,.74),rgba(14,15,18,.66))!important;
  border-color:rgba(255,255,255,.16)!important;
  box-shadow:0 18px 54px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.site-header:not(.admin-top) .brand{height:68px!important;display:flex!important;align-items:center!important;min-width:0!important}
.site-header:not(.admin-top) .brand img{width:146px!important;height:auto!important;max-height:34px!important;object-fit:contain!important;object-position:left center!important}
.site-header:not(.admin-top) .desktop-nav{
  justify-self:center!important;
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
  padding:5px!important;
  border:1px solid rgba(255,255,255,.065)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.04)!important;
  white-space:nowrap!important;
}
.site-header:not(.admin-top) .desktop-nav a{
  height:42px!important;
  padding:0 13px!important;
  display:flex!important;
  align-items:center!important;
  border-radius:999px!important;
  background:transparent!important;
  color:rgba(255,255,255,.72)!important;
  font-size:13px!important;
  font-weight:650!important;
  letter-spacing:-.01em!important;
}
.site-header:not(.admin-top) .desktop-nav a:hover,
.site-header:not(.admin-top) .desktop-nav a.active{background:rgba(255,255,255,.085)!important;color:#fff!important}
.site-header:not(.admin-top) .nav-cta{
  min-height:46px!important;height:46px!important;padding:0 19px!important;
  border:0!important;border-radius:17px!important;background:#fff!important;color:#111!important;
  font-size:13px!important;font-weight:750!important;box-shadow:none!important;transform:none!important;
}
.site-header:not(.admin-top) .nav-cta:hover{background:#f5f5f7!important;transform:translateY(-1px)!important}
.site-header:not(.admin-top) .menu-button{height:44px!important;width:44px!important;border-radius:15px!important;background:rgba(255,255,255,.07)!important;color:#fff!important}
.mobile-nav{
  top:88px!important;left:18px!important;right:18px!important;
  padding:18px 20px 24px!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:22px!important;
  background:#151518!important;box-shadow:0 24px 70px rgba(0,0,0,.28)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
.apple-home .apple-notice{padding-top:96px!important;height:138px!important}
@media(max-width:1040px){
  .site-header:not(.admin-top){top:10px!important;padding:0 10px!important}
  .site-header:not(.admin-top) .nav-shell,.site-header:not(.admin-top) .nav-wrap{width:100%!important;height:56px!important;grid-template-columns:1fr auto!important;padding:0 8px 0 16px!important;border-radius:20px!important}
  .site-header:not(.admin-top) .brand{height:56px!important}.site-header:not(.admin-top) .brand img{width:118px!important;max-height:29px!important}
  .site-header:not(.admin-top) .desktop-nav,.site-header:not(.admin-top) .nav-cta{display:none!important}
  .site-header:not(.admin-top) .menu-button{display:block!important}
  .mobile-nav{top:76px!important;left:10px!important;right:10px!important}
  .apple-home .apple-notice{padding-top:80px!important;height:124px!important}
}

/* =========================================================
   V30 — cleaner project request / meeting planner.
   ========================================================= */
.contact-page .section#start-request{padding:56px 0 118px!important;background:#f5f5f7!important}
.contact-page .request-shell.request-shell-clean{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;max-width:1120px!important;align-items:stretch!important}
.contact-page .request-intro{
  position:static!important;top:auto!important;min-height:0!important;padding:34px 36px!important;border-radius:30px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) 340px!important;align-items:end!important;gap:36px!important;
  background:#0d0d0f!important;color:#f5f5f7!important;
}
.contact-page .request-intro-copy{max-width:660px!important}
.contact-page .request-intro .eyebrow{margin:0 0 12px!important}
.contact-page .request-intro h2{margin:0!important;max-width:660px!important;font-size:clamp(42px,5vw,66px)!important;line-height:.94!important;letter-spacing:-.055em!important}
.contact-page .request-intro h2 span{color:#8e8e93!important}
.contact-page .request-intro-copy>p:last-child{max-width:560px!important;margin:16px 0 0!important;color:#a1a1a6!important;font-size:15px!important;line-height:1.5!important}
.contact-page .choice-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin:0!important;padding:5px!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:18px!important;background:#171719!important}
.contact-page .choice-tabs button{min-height:58px!important;padding:10px 13px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:3px!important;border:0!important;border-radius:13px!important;background:transparent!important;color:#a1a1a6!important;text-align:left!important}
.contact-page .choice-tabs button span{font-size:13px!important;font-weight:700!important;color:inherit!important}.contact-page .choice-tabs button small{font-size:10px!important;font-weight:500!important;color:#6e6e73!important}
.contact-page .choice-tabs button.active{background:#fff!important;color:#1d1d1f!important;box-shadow:0 1px 2px rgba(0,0,0,.12)!important}.contact-page .choice-tabs button.active small{color:#86868b!important}

.contact-page .request-form{padding:0!important;gap:0!important;border-radius:30px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 1px 0 rgba(0,0,0,.04)!important}
.contact-page .form-section{display:grid!important;grid-template-columns:220px minmax(0,1fr)!important;gap:30px!important;padding:34px 36px!important;border-bottom:1px solid #ececef!important;background:#fff!important}
.contact-page .mode-panel{margin:0!important;padding:0!important}.contact-page .mode-panel .form-section{border-top:0!important}
.contact-page .form-section-head{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;gap:10px!important;align-content:start!important}
.contact-page .form-section-head>span{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:#f0f0f2!important;color:#86868b!important;font-size:10px!important;font-weight:700!important}
.contact-page .form-section-head h3{margin:1px 0 5px!important;color:#1d1d1f!important;font-size:16px!important;line-height:1.2!important;letter-spacing:-.02em!important}.contact-page .form-section-head p{margin:0!important;max-width:170px!important;color:#86868b!important;font-size:12px!important;line-height:1.45!important}
.contact-page .form-section>.form-grid,.contact-page .form-section>.project-type-field,.contact-page .form-section>.inline-brief-grid,.contact-page .form-section>.situation-field,.contact-page .form-section>.meeting-planner,.contact-page .form-section>.meeting-description,.contact-page .form-section>.file-upload{grid-column:2!important}
.contact-page .form-grid.two,.contact-page .inline-brief-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.contact-page .request-form label{gap:7px!important}.contact-page .request-form label>span{font-size:11px!important;font-weight:650!important;color:#515154!important}
.contact-page .request-form input,.contact-page .request-form select,.contact-page .request-form textarea{border-color:#dedee2!important;border-radius:13px!important;background:#fafafa!important;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease!important}
.contact-page .request-form input:hover,.contact-page .request-form select:hover,.contact-page .request-form textarea:hover{background:#fff!important;border-color:#c9c9ce!important}
.contact-page .request-form input:focus,.contact-page .request-form select:focus,.contact-page .request-form textarea:focus{background:#fff!important;border-color:#0071e3!important;box-shadow:0 0 0 3px rgba(0,113,227,.10)!important}
.contact-page .situation-field{margin-top:14px!important}.contact-page .request-form textarea{min-height:132px!important}

.contact-page .meeting-planner{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(230px,.65fr)!important;gap:14px!important;align-items:stretch!important}
.contact-page .meeting-calendar-card,.contact-page .meeting-side>.calendar-card,.contact-page .meeting-selection{border:1px solid #e3e3e7!important;border-radius:20px!important;background:#f7f7f9!important}
.contact-page .meeting-calendar-card{padding:18px!important}
.contact-page .meeting-calendar-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin-bottom:16px!important}
.contact-page .calendar-kicker{display:block!important;margin-bottom:4px!important;color:#86868b!important;font-size:10px!important;font-weight:650!important;text-transform:none!important;letter-spacing:0!important}
.contact-page .meeting-calendar-toolbar strong,.contact-page .calendar-head strong{display:block!important;color:#1d1d1f!important;font-size:15px!important;letter-spacing:-.02em!important}
.contact-page .calendar-nav{display:flex!important;gap:6px!important}.contact-page .calendar-nav button{width:32px!important;height:32px!important;display:grid!important;place-items:center!important;padding:0!important;border:1px solid #dedee2!important;border-radius:50%!important;background:#fff!important;color:#1d1d1f!important;font-size:20px!important;line-height:1!important;cursor:pointer!important}.contact-page .calendar-nav button:disabled{opacity:.28!important;cursor:default!important}
.contact-page .calendar-weekdays,.contact-page .calendar-month{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:6px!important}.contact-page .calendar-weekdays{margin-bottom:6px!important}.contact-page .calendar-weekdays span{display:grid!important;place-items:center!important;height:24px!important;color:#98989d!important;font-size:9px!important;font-weight:650!important}
.contact-page .calendar-day{position:relative!important;aspect-ratio:1/1!important;min-height:38px!important;padding:0!important;border:0!important;border-radius:11px!important;display:grid!important;place-items:center!important;font-size:12px!important;font-weight:650!important;cursor:pointer!important;transition:transform .15s ease,box-shadow .15s ease!important}
.contact-page .calendar-day.available{background:#e8f6ed!important;color:#216e3a!important}.contact-page .calendar-day.limited{background:#fff3d6!important;color:#8a5a00!important}.contact-page .calendar-day.unavailable{background:#ececee!important;color:#b0b0b5!important;cursor:not-allowed!important}.contact-page .calendar-day.outside{background:transparent!important;color:#d1d1d5!important;cursor:default!important}.contact-page .calendar-day.available:hover,.contact-page .calendar-day.limited:hover{transform:translateY(-1px)!important;box-shadow:0 3px 10px rgba(0,0,0,.06)!important}.contact-page .calendar-day.today{box-shadow:inset 0 0 0 1px #0071e3!important}.contact-page .calendar-day.selected{background:#0071e3!important;color:#fff!important;box-shadow:0 5px 14px rgba(0,113,227,.24)!important}
.contact-page .calendar-legend{display:flex!important;flex-wrap:wrap!important;gap:9px 14px!important;margin-top:16px!important;padding-top:13px!important;border-top:1px solid #e5e5e8!important}.contact-page .calendar-legend span{display:flex!important;align-items:center!important;gap:6px!important;color:#737378!important;font-size:9px!important;font-weight:550!important}.contact-page .calendar-legend i{width:9px!important;height:9px!important;border-radius:3px!important;display:block!important}.contact-page .calendar-legend i.available{background:#a8ddb8!important}.contact-page .calendar-legend i.limited{background:#f4cf77!important}.contact-page .calendar-legend i.unavailable{background:#d2d2d7!important}.contact-page .calendar-legend i.selected{background:#0071e3!important}
.contact-page .meeting-side{display:grid!important;grid-template-rows:auto 1fr!important;gap:14px!important}.contact-page .meeting-side>.calendar-card{padding:18px!important}.contact-page .calendar-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:10px!important;margin-bottom:14px!important}.contact-page .calendar-head>span{font-size:10px!important;color:#86868b!important}
.contact-page .time-options{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.contact-page .time-options button{height:42px!important;padding:0!important;border:1px solid #dedee2!important;border-radius:11px!important;background:#fff!important;color:#424245!important;font-size:12px!important;font-weight:650!important}.contact-page .time-options button.active{background:#1d1d1f!important;border-color:#1d1d1f!important;color:#fff!important}
.contact-page .meeting-selection{padding:18px!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;background:#111113!important;border-color:#111113!important}.contact-page .meeting-selection>span{margin-bottom:9px!important;color:#6e6e73!important;font-size:10px!important;font-weight:650!important}.contact-page .meeting-selection strong{color:#fff!important;font-size:15px!important;line-height:1.35!important}.contact-page .meeting-selection small{margin-top:6px!important;color:#8e8e93!important;font-size:11px!important;line-height:1.35!important}
.contact-page .meeting-description{margin-top:14px!important}
.contact-page .file-upload{padding:18px!important;border:1px dashed #cfcfd4!important;border-radius:16px!important;background:#fafafa!important}.contact-page .file-upload input{min-height:auto!important;padding:8px!important;background:#fff!important}.contact-page .file-upload small{font-size:10px!important;line-height:1.4!important}
.contact-page .form-actions{margin:0!important;padding:24px 36px!important;display:flex!important;justify-content:flex-end!important;gap:10px!important;background:#fafafa!important}.contact-page .form-actions .btn{min-width:150px!important}.contact-page .form-status{margin:0!important;padding:0 36px 20px!important;background:#fafafa!important}

@media(max-width:820px){
  .contact-page .request-intro{grid-template-columns:1fr!important;gap:24px!important}.contact-page .choice-tabs{max-width:420px!important}
  .contact-page .form-section{grid-template-columns:1fr!important;gap:18px!important}.contact-page .form-section-head{grid-template-columns:34px 1fr!important}.contact-page .form-section-head p{max-width:480px!important}
  .contact-page .form-section>.form-grid,.contact-page .form-section>.project-type-field,.contact-page .form-section>.inline-brief-grid,.contact-page .form-section>.situation-field,.contact-page .form-section>.meeting-planner,.contact-page .form-section>.meeting-description,.contact-page .form-section>.file-upload{grid-column:1!important}
  .contact-page .meeting-planner{grid-template-columns:1fr!important}.contact-page .meeting-side{grid-template-columns:1fr 1fr!important;grid-template-rows:auto!important}
}
@media(max-width:600px){
  .contact-page .section#start-request{padding:28px 0 76px!important}.contact-page .request-shell.request-shell-clean{width:calc(100% - 20px)!important;gap:12px!important}
  .contact-page .request-intro{padding:24px 20px!important;border-radius:24px!important}.contact-page .choice-tabs{grid-template-columns:1fr 1fr!important;width:100%!important}.contact-page .choice-tabs button{min-height:54px!important}
  .contact-page .request-form{border-radius:24px!important}.contact-page .form-section{padding:26px 20px!important}.contact-page .form-grid.two,.contact-page .inline-brief-grid{grid-template-columns:1fr!important}.contact-page .meeting-side{grid-template-columns:1fr!important}.contact-page .meeting-calendar-card{padding:14px!important}.contact-page .calendar-weekdays,.contact-page .calendar-month{gap:4px!important}.contact-page .calendar-day{min-height:34px!important;border-radius:9px!important}.contact-page .calendar-legend{gap:8px 10px!important}
  .contact-page .form-actions{padding:20px!important;display:grid!important;grid-template-columns:1fr!important}.contact-page .form-actions .btn{width:100%!important}.contact-page .form-status{padding:0 20px 18px!important}
}

/* =========================================================
   V31 — restore the original pre-fix Blemlab navbar.
   Same compact full-width translucent Apple-style bar that
   shipped before the navbar experiments. Backdrop blur is
   intentionally disabled to remove the black GPU flash/glitch.
   ========================================================= */
.site-header:not(.admin-top){
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:48px!important;
  padding:0!important;
  z-index:900!important;
  pointer-events:auto!important;
  background:rgba(22,22,23,.94)!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.06)!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transform:none!important;
  contain:none!important;
}
.site-header:not(.admin-top) .nav-shell,
.site-header:not(.admin-top) .nav-wrap{
  width:min(calc(100% - 36px),1024px)!important;
  height:48px!important;
  margin:0 auto!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:108px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  pointer-events:auto!important;
  overflow:visible!important;
  isolation:auto!important;
  transform:none!important;
  contain:none!important;
}
.site-header:not(.admin-top).is-scrolled .nav-shell,
.site-header:not(.admin-top).is-scrolled .nav-wrap{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.site-header:not(.admin-top) .brand{
  display:flex!important;
  align-items:center!important;
  height:48px!important;
  min-width:0!important;
}
.site-header:not(.admin-top) .brand img{
  display:block!important;
  width:92px!important;
  height:auto!important;
  max-height:22px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.site-header:not(.admin-top) .desktop-nav{
  display:flex!important;
  align-items:center!important;
  justify-self:center!important;
  gap:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  white-space:nowrap!important;
}
.site-header:not(.admin-top) .desktop-nav a{
  display:flex!important;
  align-items:center!important;
  height:48px!important;
  padding:16px 11px!important;
  border-radius:0!important;
  background:transparent!important;
  color:rgba(255,255,255,.78)!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:0!important;
}
.site-header:not(.admin-top) .desktop-nav a:hover,
.site-header:not(.admin-top) .desktop-nav a.active{
  color:#fff!important;
  background:transparent!important;
}
.site-header:not(.admin-top) .nav-cta{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:28px!important;
  height:28px!important;
  padding:0 12px!important;
  border:0!important;
  border-radius:980px!important;
  background:#2A7BFF!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
  box-shadow:none!important;
  transform:none!important;
}
.site-header:not(.admin-top) .nav-cta:hover{
  background:#2A7BFF!important;
  opacity:.88!important;
  transform:none!important;
}
.site-header:not(.admin-top) .menu-button{
  display:none!important;
  position:relative!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#fff!important;
}
.site-header:not(.admin-top) .menu-button span{
  position:absolute!important;
  left:8px!important;
  right:8px!important;
  height:1px!important;
  background:currentColor!important;
  border-radius:2px!important;
}
.site-header:not(.admin-top) .menu-button span:first-child{top:13px!important}
.site-header:not(.admin-top) .menu-button span:last-child{top:21px!important}
.site-header:not(.admin-top) .menu-button[aria-expanded="true"] span:first-child,
.site-header:not(.admin-top) .menu-button[aria-expanded="true"] span:last-child{top:17px!important}
.mobile-nav{
  top:48px!important;
  left:0!important;
  right:0!important;
  padding:22px 24px 34px!important;
  border:0!important;
  border-radius:0!important;
  background:rgba(22,22,23,.99)!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.mobile-nav a{
  color:#f5f5f7!important;
  font-size:25px!important;
  font-weight:600!important;
  padding:8px 0!important;
  border-radius:0!important;
  background:transparent!important;
}
.mobile-nav .mobile-cta{
  font-size:16px!important;
  text-align:center!important;
  background:#2A7BFF!important;
  border-radius:980px!important;
  margin-top:14px!important;
  padding:11px!important;
}
.apple-home .apple-notice{
  min-height:92px!important;
  height:auto!important;
  padding:63px 18px 15px!important;
}
@media(max-width:780px){
  .site-header:not(.admin-top) .nav-shell,
  .site-header:not(.admin-top) .nav-wrap{
    width:calc(100% - 28px)!important;
    grid-template-columns:1fr auto auto!important;
  }
  .site-header:not(.admin-top) .desktop-nav{display:none!important}
  .site-header:not(.admin-top) .nav-cta{display:none!important}
  .site-header:not(.admin-top) .menu-button{display:block!important}
  .apple-home .apple-notice{
    min-height:104px!important;
    height:auto!important;
    padding:64px 18px 14px!important;
  }
}
