/* Notes Baba Contact Us — SaaS-style contact page using the Notes Baba design system
   (Inter · orange #fa6b29 · ink #1a120b · cream #fff8f5). Everything is scoped to .nbc-* classes. */
.nbc-app,.nbc-toast{
  --nbc-primary:#fa6b29;--nbc-primary-d:#ee6517;--nbc-primary-s:#fff0e8;--nbc-ring:rgba(250,107,41,.22);
  --nbc-ink:#1a120b;--nbc-text:#5b4636;--nbc-muted:#8a7262;--nbc-line:#f0e2d8;--nbc-soft:#fdf1ea;--nbc-soft2:#fffaf7;--nbc-bg:#fff8f5;
  --nbc-green:#15803d;--nbc-green-s:#e8f6ee;--nbc-red:#b42318;--nbc-red-s:#fdecea;
  --nbc-shadow:0 1px 2px rgba(26,18,11,.05),0 8px 24px rgba(26,18,11,.07);
  --nbc-font:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
.nbc-app{position:relative;margin:0;
  background:var(--nbc-bg);background-image:radial-gradient(40rem 22rem at 100% -5%,rgba(250,107,41,.13),transparent 70%),radial-gradient(34rem 20rem at -10% 35%,rgba(124,58,237,.06),transparent 70%);
  font-family:var(--nbc-font);color:var(--nbc-ink);line-height:1.6;text-align:left;-webkit-font-smoothing:antialiased}
.nbc-app *,.nbc-app *::before,.nbc-app *::after{box-sizing:border-box}
.nbc-app h1,.nbc-app h2,.nbc-app h3,.nbc-app b,.nbc-app summary{font-family:var(--nbc-font)!important;letter-spacing:-.01em}
.nbc-app a{color:inherit}
.nbc-i{display:inline-block;vertical-align:middle;flex:none}
.nbc-app-in{max-width:76rem;margin:0 auto;padding:1.25rem 1.25rem 3.5rem}
.nbc-app address{font-style:normal}

/* buttons / tags */
.nbc-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.75rem 1.2rem;border:1.5px solid var(--nbc-primary);border-radius:11px;background:var(--nbc-primary);color:#fff!important;font:inherit;font-weight:700;font-size:.92rem;line-height:1.1;text-decoration:none!important;cursor:pointer;box-shadow:0 8px 18px -10px var(--nbc-primary);transition:transform .15s,filter .15s,background .15s}
.nbc-btn:hover{transform:translateY(-1px);filter:brightness(1.05)}
.nbc-btn:focus-visible,.nbc-back:focus-visible,.nbc-copy:focus-visible,.nbc-q summary:focus-visible{outline:3px solid var(--nbc-ring);outline-offset:2px}
.nbc-btn--light{background:#fff;border-color:#fff;color:var(--nbc-ink)!important;box-shadow:none}
.nbc-btn--glass{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.45);color:#fff!important;box-shadow:none;max-width:100%;overflow-wrap:anywhere}
.nbc-btn--ghost{background:#fff;color:var(--nbc-primary-d)!important;box-shadow:none}
.nbc-btn--sm{padding:.55rem .85rem;font-size:.82rem}
.nbc-btn--block{display:flex;width:100%;text-align:center}
.nbc-tag{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border-radius:999px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;background:var(--nbc-soft);color:var(--nbc-text)}
.nbc-tag.is-ok{background:var(--nbc-green-s);color:var(--nbc-green)}

/* top bar */
.nbc-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:0 0 1rem}
.nbc-back{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem .55rem .8rem;border:1px solid var(--nbc-line);border-radius:999px;background:#fff;color:var(--nbc-ink)!important;font-size:.88rem;font-weight:700;text-decoration:none!important;box-shadow:var(--nbc-shadow);transition:border-color .15s,color .15s,transform .15s}
.nbc-back:hover{border-color:var(--nbc-primary);color:var(--nbc-primary-d)!important;transform:translateX(-2px)}
.nbc-back .nbc-i{color:var(--nbc-primary)}
.nbc-crumbs ol{display:flex;align-items:center;gap:.4rem;margin:0;padding:0;list-style:none;font-size:.82rem;color:var(--nbc-muted)}
.nbc-crumbs li{margin:0;padding:0}
.nbc-crumbs li+li::before{content:"/";margin-right:.4rem;color:var(--nbc-line)}
.nbc-crumbs a{color:var(--nbc-text)!important;text-decoration:none!important;font-weight:600}
.nbc-crumbs a:hover{color:var(--nbc-primary-d)!important}
.nbc-crumbs [aria-current]{color:var(--nbc-ink);font-weight:700}

/* hero */
.nbc-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin:0 0 1.25rem;padding:2.4rem 2.2rem;border-radius:26px;color:#fff;overflow:hidden;
  background:radial-gradient(28rem 16rem at 100% 0%,rgba(255,255,255,.28),transparent 65%),linear-gradient(135deg,#e2501a,var(--nbc-primary) 55%,#ff9156);box-shadow:0 24px 40px -26px rgba(26,18,11,.7)}
.nbc-hero::after{content:"";position:absolute;right:-90px;bottom:-110px;width:290px;height:290px;border-radius:50%;background:#fff;opacity:.12;filter:blur(8px);pointer-events:none}
.nbc-hero-l{position:relative;z-index:1;flex:1;min-width:0}
.nbc-eyebrow{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .8rem;border-radius:999px;background:rgba(255,255,255,.18);font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.nbc-app .nbc-hero h1{margin:.8rem 0 .45rem;padding:0;color:#fff;font-size:clamp(1.9rem,4.2vw,3rem);font-weight:800;line-height:1.1;border:0}
.nbc-hero p{margin:0;max-width:40rem;color:rgba(255,255,255,.92);font-size:1.05rem}
.nbc-hero-btns{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.4rem}
.nbc-hero-art{position:relative;z-index:1;display:grid;place-items:center;width:140px;height:140px;flex:none;border-radius:36px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);transform:rotate(8deg)}

/* cards */
.nbc-card{border:1px solid var(--nbc-line);border-radius:22px;background:#fff;box-shadow:var(--nbc-shadow)}
.nbc-ico{display:inline-grid;place-items:center;width:42px;height:42px;flex:none;border-radius:12px;background:var(--nbc-primary-s);color:var(--nbc-primary)}
.nbc-card-head{display:flex;align-items:center;gap:.85rem;min-width:0}
.nbc-card-head h2{margin:0!important;padding:0;border:0;color:var(--nbc-ink);font-size:1.15rem;font-weight:800;line-height:1.3}
.nbc-card-head p{margin:.1rem 0 0;color:var(--nbc-muted);font-size:.88rem}

/* contact tiles */
.nbc-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0 0 1.25rem}
.nbc-tile{position:relative;display:flex;flex-direction:column;gap:.35rem;padding:1.3rem;min-width:0;overflow:hidden;transition:transform .18s,box-shadow .18s,border-color .18s}
.nbc-tile::after{content:"";position:absolute;right:-34px;top:-34px;width:104px;height:104px;border-radius:50%;background:var(--tb);opacity:.7;transition:transform .3s;pointer-events:none}
.nbc-tile:hover{transform:translateY(-4px);border-color:var(--t);box-shadow:0 18px 30px -18px var(--t)}
.nbc-tile:hover::after{transform:scale(1.35)}
.nbc-tile > *{position:relative;z-index:1}
.nbc-tile-ico{display:inline-grid;place-items:center;width:46px;height:46px;margin-bottom:.4rem;border-radius:14px;background:var(--tb);color:var(--t)}
.nbc-app .nbc-tile h2{margin:0;padding:0;border:0;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--nbc-muted)}
.nbc-tile-v{margin:0;color:var(--nbc-ink);font-size:1.02rem;font-weight:800;line-height:1.4;overflow-wrap:anywhere}
.nbc-tile-v a{color:var(--nbc-ink)!important;text-decoration:none!important}
.nbc-tile-v a:hover{color:var(--nbc-primary-d)!important}
.nbc-tile-v.is-muted{color:var(--nbc-muted)}
.nbc-tile-note{margin:0;font-size:.82rem;color:var(--nbc-muted)}
.nbc-tile-act{display:flex;align-items:center;gap:.5rem;margin-top:auto;padding-top:.8rem}
.nbc-copy{display:inline-grid;place-items:center;width:38px;height:38px;flex:none;padding:0;border:1px solid var(--nbc-line);border-radius:10px;background:#fff;color:var(--nbc-muted);cursor:pointer;transition:border-color .15s,color .15s}
.nbc-copy:hover{border-color:var(--nbc-primary);color:var(--nbc-primary)}
.nbc-copy.is-done{border-color:var(--nbc-green);color:var(--nbc-green)}
.nbc-app .c1{--t:#fa6b29;--tb:#fff0e8}.nbc-app .c2{--t:#e8850c;--tb:#fff1d6}.nbc-app .c3{--t:#c2410c;--tb:#fde3d3}

/* form + side */
.nbc-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:1.25rem;align-items:start;margin:0 0 1.25rem}
.nbc-form-card{padding:1.6rem;scroll-margin-top:90px}
.nbc-form-card .nbc-card-head{margin:0 0 1.2rem;padding-bottom:1.1rem;border-bottom:1px solid var(--nbc-line)}
.nbc-side{display:flex;flex-direction:column;gap:1.25rem;min-width:0}
.nbc-owner{display:flex;flex-direction:column;gap:1rem;padding:1.4rem}
.nbc-owner .nbc-tag{align-self:flex-start}
.nbc-owner-row{display:flex;align-items:center;gap:.9rem}
.nbc-avatar{display:inline-grid;place-items:center;width:58px;height:58px;flex:none;border-radius:18px;background:linear-gradient(135deg,#e2501a,#ff9156);color:#fff;font-size:1.15rem;font-weight:800;letter-spacing:.02em;box-shadow:0 12px 22px -12px var(--nbc-primary)}
.nbc-app .nbc-owner h2{margin:0;padding:0;border:0;font-size:1.15rem;font-weight:800;color:var(--nbc-ink)}
.nbc-owner p{margin:.1rem 0 0;font-size:.86rem;color:var(--nbc-muted)}
.nbc-tips{padding:1.3rem 1.4rem}
.nbc-app .nbc-tips h2{display:flex;align-items:center;gap:.5rem;margin:0 0 .6rem;padding:0;border:0;font-size:1rem;font-weight:800;color:var(--nbc-ink)}
.nbc-tips h2 .nbc-i{color:var(--nbc-primary)}
.nbc-tips ul{margin:0;padding:0;list-style:none}
.nbc-tips li{position:relative;margin:0;padding:.3rem 0 .3rem 1.4rem;font-size:.9rem;color:var(--nbc-text)}
.nbc-tips li::before{content:"";position:absolute;left:.15rem;top:.85rem;width:7px;height:7px;border-radius:50%;background:var(--nbc-primary)}
.nbc-form-fallback p{margin:0 0 1rem;color:var(--nbc-text)}
.nbc-admin-hint{display:flex;align-items:flex-start;gap:.4rem;margin:1rem 0 0!important;padding:.7rem .9rem;border-radius:12px;background:#fef3c7;color:#92400e!important;font-size:.84rem}
.nbc-admin-hint a{color:#92400e!important;font-weight:700}

/* styling for any form plugin placed in the form card (CF7, WPForms, Fluent, Forminator, Ninja, Gravity…) */
.nbc-app .nbc-form-body{color:var(--nbc-text);font-size:.95rem}
.nbc-app .nbc-form-body form{margin:0}
.nbc-app .nbc-form-body p{margin:0 0 1rem}
.nbc-app .nbc-form-body label{display:block;margin:0 0 .35rem;color:var(--nbc-ink);font-size:.86rem;font-weight:700}
.nbc-app .nbc-form-body input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=file]):not([type=hidden]),
.nbc-app .nbc-form-body select,.nbc-app .nbc-form-body textarea{display:block;width:100%;max-width:100%;padding:.8rem .95rem;border:1.5px solid var(--nbc-line);border-radius:12px;background:var(--nbc-soft2);color:var(--nbc-ink);font:inherit;font-size:.95rem;line-height:1.4;box-shadow:none;transition:border-color .15s,box-shadow .15s,background .15s}
.nbc-app .nbc-form-body textarea{min-height:150px;resize:vertical}
.nbc-app .nbc-form-body input:focus,.nbc-app .nbc-form-body select:focus,.nbc-app .nbc-form-body textarea:focus{outline:0;border-color:var(--nbc-primary);background:#fff;box-shadow:0 0 0 4px var(--nbc-ring)}
.nbc-app .nbc-form-body ::placeholder{color:#b9a79a}
.nbc-app .nbc-form-body input[type=submit],.nbc-app .nbc-form-body button[type=submit],.nbc-app .nbc-form-body .wpcf7-submit,.nbc-app .nbc-form-body .wpforms-submit,.nbc-app .nbc-form-body .ff-btn-submit,.nbc-app .nbc-form-body .forminator-button-submit,.nbc-app .nbc-form-body .gform_button,.nbc-app .nbc-form-body .nf-form-content input[type=button]{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:170px;padding:.85rem 1.5rem;border:0;border-radius:12px;background:linear-gradient(135deg,var(--nbc-primary),#ff8a50);color:#fff;font:inherit;font-size:.95rem;font-weight:800;cursor:pointer;box-shadow:0 12px 22px -12px var(--nbc-primary);transition:transform .15s,filter .15s}
.nbc-app .nbc-form-body input[type=submit]:hover,.nbc-app .nbc-form-body button[type=submit]:hover{transform:translateY(-1px);filter:brightness(1.05)}
.nbc-app .nbc-form-body input[type=checkbox],.nbc-app .nbc-form-body input[type=radio]{accent-color:var(--nbc-primary)}
.nbc-app .nbc-form-body .wpcf7-not-valid-tip,.nbc-app .nbc-form-body .wpforms-error,.nbc-app .nbc-form-body .ff-el-is-error .text-danger{margin-top:.3rem;color:var(--nbc-red);font-size:.8rem;font-weight:600}
.nbc-app .nbc-form-body .wpcf7-response-output,.nbc-app .nbc-form-body .wpforms-confirmation-container-full,.nbc-app .nbc-form-body .ff-message-success{margin:1rem 0 0!important;padding:.8rem 1rem!important;border:1px solid var(--nbc-line)!important;border-radius:12px;background:var(--nbc-green-s);color:var(--nbc-green);font-weight:600}
.nbc-app .nbc-form-body .wpcf7-spinner{margin:0 .6rem}

/* map */
.nbc-map{margin:0 0 1.25rem;padding:1.4rem;overflow:hidden}
.nbc-map-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:0 0 1rem}
.nbc-map-frame{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--nbc-line);background:var(--nbc-soft)}
.nbc-map-frame iframe{display:block;width:100%;height:380px;border:0}

/* FAQ */
.nbc-faq{margin:2rem 0 0}
.nbc-app .nbc-faq h2{display:flex;align-items:center;gap:.55rem;margin:0 0 1rem;padding:0;border:0;font-size:1.3rem;font-weight:800;color:var(--nbc-ink)}
.nbc-faq h2 .nbc-i{color:var(--nbc-primary)}
.nbc-faq-list{display:grid;gap:.7rem}
.nbc-q{padding:0;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.nbc-q[open]{border-color:#ffd2bd;box-shadow:0 18px 32px -24px rgba(250,107,41,.55)}
.nbc-q summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.05rem 1.3rem;list-style:none;cursor:pointer;font-size:.98rem;font-weight:700;color:var(--nbc-ink)}
.nbc-q summary::-webkit-details-marker{display:none}
.nbc-q summary .nbc-i{color:var(--nbc-muted);transition:transform .2s}
.nbc-q[open] summary .nbc-i{transform:rotate(180deg);color:var(--nbc-primary)}
.nbc-q p{margin:0;padding:0 1.3rem 1.2rem;color:var(--nbc-text);font-size:.94rem;line-height:1.7}

.nbc-cta{display:flex;justify-content:center;margin-top:2.2rem}

/* toast */
.nbc-toast{position:fixed;left:50%;bottom:30px;z-index:1000000;transform:translateX(-50%);max-width:92vw;padding:.75rem 1.1rem;border-radius:12px;background:var(--nbc-ink,#1a120b);color:#fff;font:600 .9rem/1.3 var(--nbc-font);box-shadow:0 24px 60px rgba(26,18,11,.22);animation:nbcPop .2s}
@keyframes nbcPop{from{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%,0)}}

/* scroll-in (only when JS is running, so content is never hidden without it) */
.nbc-js .nbc-rv{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.nbc-js .nbc-rv.is-in{opacity:1;transform:none}

/* theme integration — full-width breakout + optional theme-title hiding */
html body .nbc-app,html body .is-layout-constrained > .nbc-app,html body .entry-content > .nbc-app{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}
body:has(.nbc-app){background-color:#fff8f5!important;overflow-x:clip}
body.nbc-hide-theme-title .entry-header,body.nbc-hide-theme-title h1.entry-title,body.nbc-hide-theme-title .page-header,body.nbc-hide-theme-title .wp-block-post-title,body.nbc-hide-theme-title .hero-section,body.nbc-hide-theme-title .page-title-wrapper{display:none!important}

/* responsive */
@media (max-width:1024px){
  .nbc-layout{grid-template-columns:minmax(0,1fr)}
  .nbc-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
}
@media (max-width:860px){
  .nbc-tiles{grid-template-columns:minmax(0,1fr)}
  .nbc-tile{flex-direction:column}
  .nbc-hero-art{display:none}
}
@media (max-width:680px){
  .nbc-app-in{padding:1rem .85rem 3rem}
  .nbc-topbar{flex-direction:column;align-items:flex-start;gap:.6rem}
  .nbc-hero{padding:1.6rem 1.25rem;border-radius:22px}
  .nbc-hero-btns .nbc-btn{flex:1 1 100%}
  .nbc-side{grid-template-columns:minmax(0,1fr)}
  .nbc-form-card,.nbc-map{padding:1.1rem}
  .nbc-card{border-radius:18px}
  .nbc-map-frame iframe{height:300px}
  .nbc-map-head .nbc-btn{width:100%}
  .nbc-app .nbc-form-body input[type=submit],.nbc-app .nbc-form-body button[type=submit]{width:100%}
  .nbc-cta .nbc-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .nbc-app *,.nbc-toast{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .nbc-js .nbc-rv{opacity:1;transform:none}
}
@media print{
  .nbc-app{width:auto!important;margin:0!important;background:#fff!important}
  .nbc-hero{color:#000;background:none!important;box-shadow:none;border:1px solid #ddd}
  .nbc-app .nbc-hero h1,.nbc-hero p{color:#000}
  .nbc-hero-btns,.nbc-hero-art,.nbc-map-frame,.nbc-cta,.nbc-topbar{display:none!important}
  .nbc-card{box-shadow:none;break-inside:avoid-page}
}
