/* Rob Booker stock-email homepage master · v1.0.0 */
:root{color-scheme:light}*{box-sizing:border-box}body.rb-master-body{margin:0;background:#FAF9F6;-webkit-font-smoothing:antialiased}
.rb-page{--paper:#FAF9F6;--ink:#17212B;--blue:#2457D6;--muted:#495560;--line:#D8DDE0;min-height:100vh;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}
.rb-page [hidden]{display:none!important}
.rb-page button,.rb-page input,.rb-page textarea,.rb-page select{font-family:inherit}
.rb-page a{color:inherit}
.rb-page button,.rb-page a,.rb-page input,.rb-page textarea,.rb-page select{outline-offset:4px}
.rb-page button:focus-visible,.rb-page a:focus-visible,.rb-page input:focus-visible,.rb-page textarea:focus-visible,.rb-page select:focus-visible{outline:3px solid var(--blue)}
.rb-wrap{width:min(1100px,calc(100% - 64px));margin-inline:auto}
.rb-skip{position:fixed;left:12px;top:-100px;z-index:100;padding:12px;background:#fff;color:var(--ink)}
.rb-skip:focus{top:12px}
.rb-header{isolation:isolate;background:var(--paper)}
.rb-header .rb-wrap{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.rb-logo{display:block;width:148px;height:38.761905px;position:relative;overflow:hidden;flex-shrink:0;mix-blend-mode:multiply}
.rb-logo img{position:absolute;display:block;width:211.428571px;height:auto;max-width:none;left:-31.714286px;top:-33.476190px}
.rb-logo.rb-logo-custom{height:auto;min-height:38px;overflow:visible;mix-blend-mode:normal;display:flex;align-items:center}
.rb-logo.rb-logo-custom img{position:static;width:100%;height:auto;max-width:100%}
.rb-member{font-size:14px;color:var(--muted)!important;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.rb-main{padding:25px 0 60px}
.rb-portrait-note{display:flex;align-items:center;justify-content:center;gap:13px;margin:0 auto 25px}
.rb-portrait{display:block;width:64px;height:64px;flex:0 0 64px;border-radius:50%;object-fit:cover;object-position:50% 30%}
.rb-note-label{font-size:15px;line-height:1.5;white-space:pre-line}
.rb-note-label:after{content:"";display:block;background:var(--blue);width:34px;height:2px;margin-top:5px}
.rb-screen{max-width:1100px;margin:0 auto;text-align:center}
.rb-title{font-size:clamp(54px,7.2vw,92px);font-weight:900;line-height:1.03;letter-spacing:-.048em;margin:0 auto 22px;max-width:1100px;overflow-wrap:break-word;text-wrap:balance;scroll-margin-top:20px}
.rb-title-first,.rb-title-last{display:block}
.rb-title-accent{color:var(--blue)}
.rb-description{font-size:22px;line-height:1.5;max-width:840px;margin:0 auto 26px;color:var(--muted);overflow-wrap:anywhere;white-space:pre-line}
.rb-request{max-width:640px;margin:28px auto 0;text-align:left}
.rb-request form{margin:0}
.rb-form-row{display:flex;align-items:flex-end;gap:10px}
.rb-fields{flex:1;min-width:0;display:grid;grid-template-columns:1fr;gap:15px}
.rb-fields .form-group{margin:0;min-width:0}
.rb-fields label{display:block;margin:0 0 7px;font-size:14px;font-weight:600;line-height:1.5}
.rb-fields input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.rb-fields select,.rb-fields textarea{display:block;width:100%;min-width:0;min-height:54px;padding:13px 14px;border:1px solid #7B8792;border-radius:4px;background:#fff;color:var(--ink);font-size:16px;box-shadow:none}
.rb-fields input[type=checkbox],.rb-fields input[type=radio]{width:auto;min-height:0;margin-right:8px;accent-color:var(--blue)}
.rb-fields .form-group:has(textarea),.rb-fields .form-group:has(input[type=checkbox]),.rb-fields .form-group:has(input[type=radio]){grid-column:1/-1}
.rb-fields .error,.rb-fields .help-block,.rb-fields .invalid-feedback{font-size:14px;line-height:1.5}
.rb-fields .error,.rb-fields .invalid-feedback{color:#8F2234}
.rb-page .rb-primary{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:54px;padding:14px 22px;border:1px solid var(--blue);border-radius:var(--cta-radius,5px);font-family:inherit;font-size:var(--cta-size,16px);font-weight:var(--cta-weight,700);font-style:normal;line-height:1.5;letter-spacing:normal;text-transform:none;text-align:center;text-decoration:none;overflow-wrap:anywhere;cursor:pointer;background:var(--blue);color:var(--cta-ink,#FFFFFF)}
.rb-page .rb-primary:hover{filter:brightness(.92)}
.rb-request .rb-submit{flex:0 1 auto;width:auto;max-width:100%;margin:0}
.rb-consent{text-align:center;font-size:14px;line-height:1.55;color:var(--muted);margin:14px 0 0;white-space:pre-line}
.rb-footer{border-top:1px solid var(--line);padding:24px 0 28px;font-size:14px;line-height:1.5;color:var(--muted)}
.rb-footer .rb-wrap{display:flex;justify-content:space-between;gap:25px}
.rb-footer-copy{max-width:790px}
.rb-footer p{margin:0 0 5px;white-space:pre-line}
.rb-footer nav{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap}
.rb-footer nav a{min-height:44px;display:inline-flex;align-items:flex-start;padding-top:2px}
.rb-notice{border:1px solid var(--line);border-radius:5px;background:#fff;padding:16px;font-size:14px;line-height:1.6;color:var(--muted)}
.rb-editor-note{margin:18px auto;max-width:680px;text-align:left;border:1px dashed #7B8792;padding:14px;font-size:13px;line-height:1.6;color:var(--muted);background:#fff}
@media(max-width:700px){.rb-wrap{width:calc(100% - 36px)}
.rb-header .rb-wrap{min-height:64px}
.rb-logo{width:132px;height:34.571429px}
.rb-logo img{width:188.571429px;left:-28.285714px;top:-29.857143px}
.rb-logo.rb-logo-custom img{width:100%;left:auto;top:auto}
.rb-member{font-size:13px}
.rb-main{padding:22px 0 40px}
.rb-portrait{width:52px;height:52px;flex-basis:52px}
.rb-portrait-note{gap:11px;margin-bottom:22px}
.rb-note-label{font-size:14px}
.rb-title{font-size:clamp(34px,10.7vw,44px);line-height:1.05;letter-spacing:-.043em;margin-bottom:18px}
.rb-description{font-size:18px}
.rb-form-row{flex-direction:column;align-items:stretch}
.rb-fields{width:100%;grid-template-columns:1fr;gap:14px}
.rb-request .rb-submit{width:100%}
.rb-request{margin-top:24px}
.rb-footer .rb-wrap{flex-direction:column;gap:14px}}

/* Homepage v1.1: remove only empty native validation spacing; keep error containers. */
.rb-page .rb-request .parsley-errors-list:empty{margin:0;padding:0}
/* Small visual gap around the accent; the original text spaces remain unchanged. */
.rb-page .rb-title-accent{margin-inline:.05em}

/* Homepage v1.2: compact mobile layout only; desktop and native controls stay intact. */
@media(max-width:700px){
  .rb-page .rb-header .rb-wrap{min-height:56px}
  .rb-page .rb-main{padding-top:10px;padding-bottom:28px}
  .rb-page .rb-portrait-note{gap:9px;margin-bottom:12px}
  .rb-page .rb-portrait{width:36px;height:36px;flex-basis:36px}
  .rb-page .rb-note-label{font-size:13px;line-height:1.35}
  .rb-page .rb-note-label:after{margin-top:4px;width:28px}
  .rb-page .rb-title{font-size:clamp(30px,8.8vw,36px);line-height:1.06;letter-spacing:-.035em;margin-bottom:12px}
  .rb-page .rb-description{font-size:16px;line-height:1.45;margin-bottom:12px}
  .rb-page .rb-request{margin-top:14px}
  .rb-page .rb-fields label{margin-bottom:6px}
  .rb-page .rb-consent{margin-top:10px;line-height:1.45}
}

/* First-name step: no author-note block, single-column native Form. */
.rb-page .rb-title{max-width:840px;font-size:clamp(36px,4.3vw,48px);font-weight:800;line-height:1.12;letter-spacing:-.035em}
.rb-page .rb-request{max-width:420px}
.rb-page .rb-form-row{display:block}
.rb-page .rb-submit{width:100%;margin-top:16px}
@media(max-width:700px){.rb-page .rb-title{font-size:clamp(30px,8.8vw,36px);line-height:1.06}}
