/* ===========================================================
   BuiltRight Search — skinned to match BuiltRight Sites
   bone / ink / cobalt / acid · Fraunces + Space Grotesk + Space Mono
   =========================================================== */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300..900;1,9..144,300..900&family=Space+Grotesk:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap');

.brseo-wrapper,.brseo-navbar,.brseo-footbar,.brseo-modal-overlay,.brseo-lgmask{
  --bg:#F4F1EA; --bone:#F4F1EA; --ink:#0F0E0B; --ink2:#3c3a33; --muted:#55524a; --soft:#8B877D;
  --line:rgba(15,14,11,.14); --line2:rgba(15,14,11,.1); --paper:#ffffff;
  --blue:#2B3CFF; --blue-ink:#1f2ad0; --blue-soft:#e9ebff; --acid:#D9FF4A;
  --good:#1f9d57; --warn:#c08a14; --bad:#d23b3b;
  --serif:"Fraunces",Georgia,serif; --disp:"Fraunces",Georgia,serif;
  --sans:"Space Grotesk",Helvetica,Arial,sans-serif; --grot:"Space Grotesk",Helvetica,Arial,sans-serif;
  --mono:"Space Mono",ui-monospace,Menlo,monospace;
  font-family:var(--grot);background:var(--bone);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.55;
}
.brseo-wrapper *,.brseo-wrapper *::before,.brseo-wrapper *::after,.brseo-lgmask *,.brseo-lgmask *::before,.brseo-lgmask *::after,
.brseo-navbar *,.brseo-footbar *,.brseo-modal-overlay *{box-sizing:border-box;margin:0;padding:0}
.brseo-wrapper a,.brseo-navbar a,.brseo-footbar a{color:inherit;text-decoration:none}
.brseo-wrapper svg{flex-shrink:0;vertical-align:middle}
.brseo-wrapper ::selection{background:var(--blue);color:var(--bone)}
.brseo-wrap{max-width:1500px;margin:0 auto;padding:0 clamp(20px,5vw,64px)}
.brseo-serif{font-family:var(--disp)} .brseo-it{font-style:italic} .brseo-blue{color:var(--blue)}
.brseo-g{color:var(--good)}.brseo-w{color:var(--warn)}.brseo-b{color:var(--bad)}
.brseo-good{color:var(--good)}.brseo-warn{color:var(--warn)}.brseo-bad{color:var(--bad)}

/* labels / buttons */
.brseo-eyebrow{display:flex;align-items:center;gap:14px;font:600 12px/1 var(--grot);letter-spacing:.3em;text-transform:uppercase;color:var(--ink)}
.brseo-eyebrow .num{font:700 12px/1 var(--mono);letter-spacing:.18em;color:var(--blue)}
.brseo-sectitle{font-family:var(--disp);font-weight:500;font-size:clamp(34px,4.8vw,68px);line-height:1.04;letter-spacing:-.02em;margin-top:18px;max-width:14em}
.brseo-sectitle .brseo-it{font-style:italic;color:var(--blue);font-weight:400}
.brseo-secsub{color:var(--ink2);max-width:36em;margin-top:18px;font:400 clamp(15px,1.5vw,18px)/1.65 var(--grot)}
.brseo-btn{display:inline-flex;align-items:center;gap:8px;font:600 13px/1 var(--grot);letter-spacing:.05em;border:1px solid var(--ink);cursor:pointer;border-radius:999px;padding:14px 26px;transition:background .25s,color .25s,border-color .25s;background:transparent;color:var(--ink)}
.brseo-btn svg{width:15px;height:15px}
.brseo-btn-dark{background:var(--ink);color:var(--bone)}.brseo-btn-dark:hover{background:var(--blue);border-color:var(--blue)}
.brseo-btn-blue{background:var(--ink);color:var(--bone)}.brseo-btn-blue:hover{background:var(--blue);border-color:var(--blue)}
.brseo-btn-out{background:transparent;border:1px solid var(--ink);color:var(--ink)}.brseo-btn-out:hover{background:var(--ink);color:var(--bone)}

/* nav — exact copy of BuiltRight Sites .nav */
.brseo-navbar{
  position:fixed;inset:0 0 auto 0;z-index:90;
  display:flex;align-items:center;justify-content:space-between;
  padding:16px clamp(20px,4vw,56px);
  transition:background .4s,border .4s;
  border-bottom:1px solid transparent;
  background: #00000000;
}
.brseo-navbar.solid{background:rgba(244,241,234,.9);backdrop-filter:blur(12px);border-bottom-color:var(--line)}
.brseo-logo{font:700 17px/1 var(--grot);letter-spacing:-.02em;text-transform:uppercase;text-decoration:none;display:flex;align-items:center;gap:8px}
.brseo-logo .brseo-spark{color:var(--blue);display:inline-block;animation:brseoSpin 9s linear infinite;font-size:20px;line-height:1}
@keyframes brseoSpin{to{transform:rotate(360deg)}}
.brseo-navlinks{display:flex;gap:30px;font:500 13px/1 var(--grot);letter-spacing:.04em;color:var(--ink)}
.brseo-navlinks a{text-decoration:none;opacity:.75;transition:opacity .2s}
.brseo-navlinks a:hover{opacity:1}
@media(max-width:760px){.brseo-navlinks{display:none}}

/* hero */
.brseo-hero{position:relative;overflow:hidden;padding:clamp(150px,12vh,130px) 0 0;text-align:center}
.brseo-hero .brseo-glow{position:absolute;width:54vw;height:54vw;min-width:480px;min-height:480px;border-radius:50%;filter:blur(110px);opacity:.45;z-index:0;pointer-events:none;background:radial-gradient(circle at 35% 35%,var(--blue),transparent 65%);top:-18%;right:-14%;animation:brseoDrift 16s ease-in-out infinite alternate}
.brseo-hero .brseo-glow2{position:absolute;width:38vw;height:38vw;min-width:340px;min-height:340px;border-radius:50%;filter:blur(110px);opacity:.5;z-index:0;pointer-events:none;background:radial-gradient(circle at 60% 60%,var(--acid),transparent 60%);bottom:-18%;left:-10%;animation:brseoDrift 21s ease-in-out -7s infinite alternate}
@keyframes brseoDrift{from{transform:translate(0,0) scale(1)}to{transform:translate(-6vw,5vh) scale(1.12)}}
.brseo-hero-inner{position:relative;z-index:1;padding-bottom:74px}
.brseo-hero .brseo-eyebrow{justify-content:center;margin-bottom:30px;font:700 12px/1 var(--mono);letter-spacing:.3em;color:var(--blue)}
.brseo-hero .brseo-eyebrow::after{content:"";height:1px;width:64px;background:var(--blue)}
.brseo-hero .brseo-eyebrow::before{content:"";height:1px;width:64px;background:var(--blue)}
.brseo-hero h1{font-family:var(--disp);font-weight:500;font-size:clamp(42px,7vw,100px);line-height:1.0;letter-spacing:-.025em;max-width:13em;margin:0 auto;font-variation-settings:"opsz" 144}
.brseo-hero h1 .l2{display:block;color:var(--blue);font-style:italic;font-weight:400}
.brseo-lede{max-width:34em;margin:30px auto 0;font:400 clamp(16px,1.7vw,20px)/1.6 var(--grot);color:var(--ink2)}

.brseo-searchwrap{max-width:680px;margin:42px auto 0;text-align:left}
.brseo-searchbar{display:flex;align-items:center;background:var(--paper);border:1px solid var(--ink);border-radius:999px;padding:7px 7px 7px 22px;box-shadow:0 24px 50px -24px rgba(15,14,11,.28)}
.brseo-searchbar .brseo-gl{width:18px;height:18px;color:var(--soft);margin-right:11px}
.brseo-searchbar input{flex:1;min-width:0;border:none;outline:none;background:none;font:500 16px/1 var(--grot);color:var(--ink);padding:14px 0}
.brseo-searchbar input::placeholder{color:var(--soft)}
.brseo-searchbar button{display:inline-flex;align-items:center;gap:7px;background:var(--ink);color:var(--bone);border:1px solid var(--ink);font:600 14px/1 var(--grot);letter-spacing:.05em;padding:14px 28px;border-radius:999px;cursor:pointer;transition:background .25s,border-color .25s;min-width:112px;justify-content:center}
.brseo-searchbar button:hover{background:var(--blue);border-color:var(--blue)}
.brseo-searchbar button:disabled{opacity:.85;cursor:default}
.brseo-btn-spinner{width:18px;height:18px;border:2.5px solid rgba(244,241,234,.45);border-top-color:var(--bone);border-radius:50%;animation:brseoSpin2 .7s linear infinite}
@keyframes brseoSpin2{to{transform:rotate(360deg)}}
.brseo-leadrow{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:12px}
.brseo-field{display:flex;align-items:center;gap:9px;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:0 18px;min-width:0;transition:border-color .2s}
.brseo-field:focus-within{border-color:var(--ink)}
.brseo-field svg{width:14px;height:14px;color:var(--soft)}
.brseo-field input{flex:1;min-width:0;width:100%;border:none;outline:none;background:none;font:400 13.5px/1 var(--grot);padding:13px 0;color:var(--ink)}
.brseo-field input::placeholder{color:var(--soft)}
.brseo-hint{margin-top:16px;font:400 12px/1.5 var(--mono);color:var(--soft);text-align:center;letter-spacing:.04em}
.brseo-loadnote{margin-top:14px;font:700 12px/1.5 var(--mono);letter-spacing:.08em;color:var(--blue);text-align:center;display:none}
.brseo-loadnote.brseo-show{display:block}
.brseo-error{margin-top:14px;font-size:14px;color:var(--bad);text-align:center;display:none;font-weight:600}
.brseo-error.brseo-show{display:block}
.brseo-trust{display:flex;justify-content:center;gap:clamp(28px,5vw,72px);margin-top:64px;flex-wrap:wrap}
.brseo-trust .t{text-align:left}
.brseo-trust .tn{font:600 clamp(26px,3vw,38px)/1.1 var(--disp);color:var(--ink)}
.brseo-trust .tc{font:400 13px/1.5 var(--mono);color:var(--soft);margin-top:6px}
@media(max-width:680px){.brseo-leadrow{grid-template-columns:1fr}.brseo-field,.brseo-searchbar{border-radius:18px}.brseo-trust{gap:26px}}

/* ticker (inside hero, hidden with it once results render) */
.brseo-ticker{background:var(--ink);color:var(--bone);overflow:hidden;padding:18px 0;position:relative;z-index:1}
.brseo-ticker .trk{display:flex;width:max-content;animation:brseoTick 26s linear infinite}
.brseo-ticker span{font:600 14px/1 var(--grot);letter-spacing:.14em;text-transform:uppercase;padding:0 22px;white-space:nowrap;display:flex;align-items:center;gap:22px}
.brseo-ticker .t-spark{color:var(--acid);font-style:normal}
@keyframes brseoTick{to{transform:translateX(-50%)}}

/* results sections */
.brseo-results{display:none}
.brseo-results.brseo-active{display:block}
.brseo-band{padding:clamp(70px,10vh,120px) 0 0}
.brseo-band:last-of-type{padding-bottom:clamp(70px,10vh,120px)}
.brseo-sechead{border-top:2px solid currentColor;padding-top:16px;margin-bottom:clamp(36px,5vh,60px)}
.brseo-rhead{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-top:2px solid currentColor;padding-top:16px;margin-bottom:clamp(30px,4vh,46px)}
.brseo-rhead .dom{font:500 22px/1.2 var(--disp);word-break:break-all}
.brseo-pdfbtn{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid var(--ink);color:var(--ink);font:600 13px/1 var(--grot);letter-spacing:.05em;padding:12px 22px;border-radius:999px;cursor:pointer;transition:background .25s,color .25s}
.brseo-pdfbtn:hover{background:var(--ink);color:var(--bone)}
.brseo-pdfbtn svg{width:14px;height:14px}

/* score */
.brseo-scorehero{display:grid;grid-template-columns:auto 1fr;gap:clamp(32px,4vw,64px);align-items:center;margin-top:14px}
.brseo-gauge{position:relative;width:184px;height:184px;flex-shrink:0}
.brseo-gauge svg{width:184px;height:184px}
.brseo-gauge .lbl{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.brseo-gauge .lbl .n{font:600 56px/1 var(--disp);color:var(--blue)}
.brseo-gauge .lbl .t{font:400 10px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--soft);margin-top:6px}
.brseo-scorehero .dom{font:500 clamp(24px,2.6vw,34px)/1.15 var(--disp);letter-spacing:-.01em;word-break:break-all}
.brseo-scorehero .sm{color:var(--ink2);margin:12px 0 26px;max-width:36em;font-size:15.5px}
.brseo-catrow{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.brseo-cat .cn{font:600 clamp(26px,3vw,34px)/1.1 var(--disp);display:flex;align-items:baseline;gap:7px}
.brseo-cat .dot{width:7px;height:7px;border-radius:50%;display:inline-block}
.brseo-cat .ck{font:400 12px/1.5 var(--mono);color:var(--soft);margin-top:7px;text-transform:capitalize}
.brseo-d-g{background:var(--good)}.brseo-d-w{background:var(--warn)}.brseo-d-b{background:var(--bad)}
@media(max-width:820px){.brseo-scorehero{grid-template-columns:1fr;text-align:center}.brseo-gauge{margin:0 auto}.brseo-catrow{grid-template-columns:1fr 1fr 1fr;text-align:left}}

/* wins */
.brseo-wins{display:flex;flex-direction:column}
.brseo-win{display:grid;grid-template-columns:54px 1fr;gap:22px;padding:24px 0;border-bottom:1px solid var(--line);align-items:baseline}
.brseo-win:last-child{border-bottom:none}
.brseo-win .wn{font:600 32px/0.9 var(--disp);color:var(--blue)}
.brseo-win p{font-size:16.5px;color:var(--ink2)}

/* snapshot */
.brseo-snap{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.6vw,22px)}
.brseo-snap .s{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:clamp(18px,2vw,26px);min-width:0;transition:transform .4s cubic-bezier(.2,.6,.2,1),box-shadow .4s}
.brseo-snap .s:hover{transform:translateY(-6px);box-shadow:0 24px 50px -24px rgba(15,14,11,.28)}
.brseo-snap .s .k{font:700 10.5px/1.4 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--soft)}
.brseo-snap .s .v{font:600 26px/1.1 var(--disp);margin-top:8px;word-break:break-word}
.brseo-metaline{margin-top:22px;font-size:14px;display:flex;flex-direction:column;gap:6px;color:var(--ink2)}
.brseo-metaline .k{color:var(--soft);font:700 11px/1.6 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.brseo-metaline code{background:var(--ink);color:var(--acid);padding:3px 8px;border-radius:6px;font:400 11.5px/1.5 var(--mono)}
@media(max-width:760px){.brseo-snap{grid-template-columns:1fr 1fr}}

/* breakdown */
.brseo-rows{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.brseo-row{border-bottom:1px solid var(--line)}
.brseo-row .top{display:flex;align-items:center;gap:16px;padding:24px 4px;cursor:pointer}
.brseo-row .st{width:24px;height:24px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}
.brseo-st-g{background:#e1f0e7;color:var(--good)}.brseo-st-w{background:#f3ead3;color:var(--warn)}.brseo-st-b{background:#f6e0e0;color:var(--bad)}
.brseo-row .ti{flex:1;font:600 clamp(16px,1.7vw,20px)/1.35 var(--grot)}
.brseo-row .sc{font:600 22px/1 var(--disp);color:var(--soft)}
.brseo-row .cv{width:16px;height:16px;color:var(--blue);transition:.3s}
.brseo-row.brseo-open .cv{transform:rotate(180deg)}
.brseo-row .body{display:none;padding:0 4px 26px 40px}
.brseo-row.brseo-open .body{display:block}
.brseo-row .lab{font:700 10.5px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--soft);margin:16px 0 9px}
.brseo-row ul{list-style:none}.brseo-row li{padding:5px 0;font-size:14.5px;color:var(--ink2);display:flex;gap:11px}
.brseo-row li::before{content:"✺";color:var(--blue);font-size:11px;line-height:1.9}
.brseo-row .imp li::before{content:"✓";color:var(--good);font-size:13px;line-height:1.6}

/* card grids (GEO) */
.brseo-grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(16px,2vw,28px)}
.brseo-card{position:relative; background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:clamp(24px,2.4vw,36px);display:flex;flex-direction:column;min-width:0;transition:transform .4s cubic-bezier(.2,.6,.2,1),box-shadow .4s}
.brseo-card:hover{transform:translateY(-8px);box-shadow:0 24px 50px -24px rgba(15,14,11,.28)}
.brseo-card .ic{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.brseo-card .ic svg{width:18px;height:18px}
.brseo-card h4{font:600 clamp(19px,1.9vw,24px)/1.2 var(--grot);letter-spacing:-.01em;margin-bottom:10px}
.brseo-card .sc-corner{position:absolute;top:clamp(24px,2.4vw,36px);right:clamp(24px,2.4vw,36px);font:600 24px/1 var(--disp);color:var(--blue)}
.brseo-card p{font-size:14px;color:var(--muted)}
.brseo-card ul{list-style:none;display:flex;flex-direction:column;gap:9px;margin-top:2px}
.brseo-card li{font-size:13.5px;color:var(--ink2);display:flex;gap:9px;cursor:pointer}
.brseo-card li:hover{color:var(--blue)}
.brseo-card li .ar{color:var(--blue);flex-shrink:0}
.brseo-tipbody{display:none;margin:8px 0 2px 18px;font-size:12.5px}
.brseo-tipbody.brseo-open{display:block}
.brseo-tipbody .step{background:var(--bone);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:6px}
.brseo-tipbody .step .t{font-weight:700;font-size:12px;margin-bottom:3px}
.brseo-tipbody .step .ln{color:var(--muted);margin-top:2px}
.brseo-tipbody .step .ln b{color:var(--blue)}

/* code */
.brseo-codegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(16px,2vw,28px)}
.brseo-codecard{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:clamp(20px,2.2vw,30px);min-width:0}
.brseo-codecard .ch{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;gap:10px}
.brseo-codecard .ch .nm{font:600 18px/1.25 var(--grot);display:flex;align-items:center;gap:8px}
.brseo-codecard .ch .nm svg{width:16px;height:16px;color:var(--blue)}
.brseo-cpy{background:transparent;border:1px solid var(--ink);color:var(--ink);font:600 11px/1 var(--grot);letter-spacing:.05em;padding:8px 16px;border-radius:999px;cursor:pointer;transition:background .25s,color .25s}
.brseo-cpy:hover{background:var(--ink);color:var(--bone)}
.brseo-codecard .note{font-size:12.5px;color:var(--soft);margin-bottom:12px}
.brseo-codecard .note code{background:var(--ink);color:var(--acid);padding:1px 6px;border-radius:4px;font:400 11px/1.5 var(--mono)}
.brseo-codecard pre{background:var(--ink);border-radius:12px;padding:16px;font:400 11.5px/1.65 var(--mono);color:var(--acid);white-space:pre-wrap;word-break:break-word;max-height:230px;overflow:auto;border:1px solid rgba(244,241,234,.1)}

/* plan */
.brseo-plan{display:flex;flex-direction:column}
.brseo-pstep{display:grid;grid-template-columns:64px 1fr;gap:clamp(18px,2.4vw,30px);padding:28px 0;border-top:1px solid var(--line)}
.brseo-pstep:first-child{border-top:none}
.brseo-pstep .pn{font:600 42px/0.9 var(--disp);color:var(--blue)}
.brseo-pstep .ptags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:13px}
.brseo-ptag{font:700 10px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--line);color:var(--muted);padding:7px 12px;border-radius:6px}
.brseo-ptag.hi{color:var(--acid);border-color:var(--ink);background:var(--ink)}
.brseo-pstep h4{font:600 clamp(19px,1.9vw,24px)/1.25 var(--grot);letter-spacing:-.01em;margin-bottom:12px}
.brseo-pwh{display:grid;grid-template-columns:1fr 1fr;gap:22px;font-size:14.5px;color:var(--ink2)}
.brseo-pwh .l{font:700 10px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--soft);margin-bottom:6px}
.brseo-pout{margin-top:14px;font-size:14.5px;color:var(--good);display:flex;gap:9px;align-items:baseline;font-weight:600}
@media(max-width:680px){.brseo-pwh{grid-template-columns:1fr}}

/* keywords */
.brseo-kwgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(16px,2vw,28px)}
.brseo-kwcard{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:clamp(22px,2.2vw,30px);cursor:pointer;transition:transform .4s cubic-bezier(.2,.6,.2,1),box-shadow .4s,border-color .25s;display:flex;flex-direction:column;min-width:0;text-align:left;font-family:var(--grot)}
.brseo-kwcard:hover{border-color:var(--blue);box-shadow:0 24px 50px -24px rgba(15,14,11,.28);transform:translateY(-8px)}
.brseo-kwcard .kh{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.brseo-kwcard .nm{font:600 18px/1.3 var(--grot);letter-spacing:-.01em;min-width:0;overflow-wrap:anywhere;color:var(--ink)}
.brseo-kwcard .opp{font:600 26px/1 var(--disp);flex-shrink:0;color:var(--blue)}
.brseo-kwcard .rb{font:700 9.5px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:6px 11px;border-radius:6px;align-self:flex-start;margin-top:12px;white-space:nowrap}
.brseo-kwcard .kwmeta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}
.brseo-kwcard .kwmeta .m{background:var(--bone);border:1px solid var(--line);border-radius:10px;padding:9px 11px;min-width:0;overflow:hidden}
.brseo-kwcard .kwmeta .mk{font:700 9px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--soft)}
.brseo-kwcard .kwmeta .mv{font-size:9px;font-weight:600;margin-top:3px;text-transform:capitalize}
.brseo-kwcard .act{font-size:13.5px;color:var(--muted);margin-top:auto;line-height:1.55}
.brseo-kwcard .act b{color:var(--blue)}
.brseo-kwcard .clk{font:600 12px/1 var(--grot);letter-spacing:.03em;color:var(--blue);margin-top:14px}

/* per-page */
.brseo-pp-row{border:1px solid var(--line);border-radius:14px;margin-top:10px;overflow:hidden;background:var(--paper)}
.brseo-pp-trig{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 45px;cursor:pointer}
.brseo-pp-trig .url{font-size:14px;font-weight:600;word-break:break-all}
.brseo-pp-trig .type{font:700 9px/1 var(--mono);text-transform:uppercase;letter-spacing:.12em;padding:5px 10px;border-radius:6px;background:var(--bone);border:1px solid var(--line);color:var(--muted)}
.brseo-pp-trig .rt{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brseo-pp-trig .sc{font:600 19px/1 var(--disp)}
.brseo-pp-body{display:none;padding:0 18px 16px;font-size:13px}
.brseo-pp-row.brseo-open .brseo-pp-body{display:block}
.brseo-pp-imp{display:flex;gap:9px;align-items:flex-start;padding:9px 0;border-top:1px solid var(--line2);color:var(--ink2)}
.brseo-pp-imp .area{font:700 9px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.1em;padding:4px 9px;border-radius:6px;border:1px solid var(--line);flex-shrink:0;color:var(--muted)}

/* GSC */
.brseo-gschead{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:8px}
.brseo-gscbtn{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:var(--bone);font:600 13px/1 var(--grot);letter-spacing:.05em;padding:13px 24px;border-radius:999px;text-decoration:none;cursor:pointer;border:1px solid var(--ink);transition:background .25s,border-color .25s}
.brseo-gscbtn:hover{background:var(--blue);border-color:var(--blue)}
.brseo-gscbtn svg{width:15px;height:15px}
.brseo-gsc-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:20px 0}
.brseo-gsc-stats .s{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:18px}
.brseo-gsc-stats .s .k{font:700 10px/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--soft)}
.brseo-gsc-stats .s .v{font:600 26px/1.1 var(--disp);margin-top:5px}
.brseo-gsc-stats .s .sub{font:400 10px/1.4 var(--mono);color:var(--soft);margin-top:3px}
.brseo-gsc-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:13.5px}
.brseo-gsc-table th,.brseo-gsc-table td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line)}
.brseo-gsc-table th{font:700 10.5px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--soft)}
.brseo-gsc-table th:not(:first-child),.brseo-gsc-table td:not(:first-child){text-align:right;white-space:nowrap}

/* CTA — matches the BuiltRight final section */
.brseo-cta{background:var(--blue);color:var(--bone);text-align:center;padding:clamp(110px,18vh,190px) 24px;margin-top:clamp(70px,10vh,120px);position:relative;overflow:hidden}
.brseo-cta::before,.brseo-cta::after{font-family:var(--disp);content:"✺";position:absolute;font-size:clamp(120px,22vw,300px);line-height:1;opacity:.1;user-select:none;pointer-events:none}
.brseo-cta::before{top:-40px;left:-20px;animation:brseoSpin 40s linear infinite}
.brseo-cta::after{bottom:-60px;right:-10px;animation:brseoSpin 55s linear infinite reverse}
.brseo-cta .brseo-wrap{position:relative;z-index:1}
.brseo-cta h2{font:500 clamp(38px,6.4vw,88px)/1.02 var(--disp);letter-spacing:-.025em;max-width:12em;margin:0 auto}
.brseo-cta h2 .it{font-style:italic;color:var(--acid);opacity:1}
.brseo-cta p{max-width:30em;margin:26px auto 0;font:400 17px/1.6 var(--grot);opacity:.85;color:var(--bone)}
.brseo-cta button{margin-top:44px;background:var(--acid);color:var(--ink);border:1px solid var(--acid);font:600 15px/1 var(--grot);letter-spacing:.05em;padding:20px 38px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:9px;transition:background .25s,border-color .25s}
.brseo-cta button:hover{background:var(--bone);border-color:var(--bone)}
.brseo-cta button svg{width:16px;height:16px}
.brseo-thanks{text-align:center;padding:80px 0;display:none}
.brseo-thanks.brseo-active{display:block}
.brseo-thanks .ck{color:var(--good);margin:0 auto 16px;display:block;width:50px;height:50px}
.brseo-thanks h3{font:500 clamp(26px,3vw,38px)/1.1 var(--disp);margin-bottom:10px}
.brseo-thanks p{color:var(--muted)}
.brseo-actions{display:flex;justify-content:center;padding:40px 0 clamp(70px,10vh,110px)}

/* footer — exact copy of BuiltRight Sites footer */
.brseo-footbar{background:var(--ink);color:var(--bone);padding:60px clamp(20px,5vw,64px) 40px;font-family:var(--grot)}
.brseo-foot-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;border-bottom:1px solid rgba(244,241,234,.18);padding-bottom:38px;margin-bottom:26px}
.brseo-foot-mark{font:700 clamp(34px,5vw,64px)/1 var(--grot);letter-spacing:-.03em;color:var(--bone)}
.brseo-foot-mark span{color:var(--acid)}
.brseo-foot-top a{font:500 14px/1 var(--grot);color:rgba(244,241,234,.7);text-decoration:none}
.brseo-foot-top a:hover{color:var(--acid)}
.brseo-foot-bot{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font:400 11.5px/1.6 var(--mono);color:rgba(244,241,234,.4)}

/* modal */
.brseo-modal-overlay{display:none;position:fixed;inset:0;background:rgba(15,14,11,.6);z-index:99999;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto;font-family:var(--grot);color:var(--ink)}
.brseo-modal-overlay.brseo-active{display:flex}
.brseo-modal{background:var(--bone);border-radius:18px;max-width:720px;width:100%;padding:clamp(24px,3vw,36px);position:relative;box-shadow:0 40px 80px -30px rgba(15,14,11,.6);border:1px solid var(--line)}
.brseo-modal-close{position:absolute;top:14px;right:16px;background:none;border:none;font:400 30px/1 var(--disp);cursor:pointer;color:var(--soft)}
.brseo-modal-close:hover{color:var(--blue)}
.brseo-modal h3{font-family:var(--disp)}
.brseo-loader-inline{display:flex;align-items:center;justify-content:center;gap:11px;padding:40px;color:var(--muted)}
.brseo-loader-inline .sp{width:22px;height:22px;border:3px solid var(--blue-soft);border-top-color:var(--blue);border-radius:50%;animation:brseoSpin2 .7s linear infinite}
.brseo-h3{font:600 18px/1.3 var(--disp);margin:22px 0 9px}
.brseo-serp{list-style:none;display:flex;flex-direction:column;gap:6px}
.brseo-serp li{display:flex;gap:10px;font-size:12.5px;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--paper)}
.brseo-serp li.you{border-color:var(--blue);background:var(--blue-soft)}
.brseo-serp .pos{font:700 12px/1.6 var(--mono);color:var(--muted);width:24px;flex-shrink:0}
.brseo-serp a{color:var(--blue);word-break:break-all;font-size:11px}

@media(max-width:760px){.brseo-pwh{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){
  .brseo-wrapper *,.brseo-navbar *,.brseo-footbar *{animation:none!important;transition:none!important}
}

/* ============ CROSS-PAGE NAV + LOGIN MODAL (BuiltRight site nav) ============ */
.brseo-navlinks a.brseo-active{opacity:1;font-weight:700}
.brseo-navright{display:flex;align-items:center;gap:18px}
.brseo-login{display:inline-flex;align-items:center;gap:7px;background:none;border:0;padding:0;cursor:pointer;font:600 13px/1 var(--grot);letter-spacing:.05em;color:var(--ink);opacity:.75;transition:opacity .2s}
.brseo-login:hover{opacity:1}
.brseo-login svg{width:15px;height:15px}
@media(max-width:760px){.brseo-login span{display:none}}
.brseo-lgmask{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(15,14,11,.55);backdrop-filter:blur(6px);font-family:var(--grot)}
.brseo-lgmask.open{display:flex}
.brseo-lgcard{position:relative;width:100%;max-width:392px;background:var(--bone);border:1px solid var(--ink);border-radius:20px;padding:38px 32px 34px;box-shadow:0 40px 90px rgba(15,14,11,.32);animation:brseoLgPop .32s cubic-bezier(.2,.7,.2,1)}
@keyframes brseoLgPop{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
.brseo-lgspark{font:700 12px/1 var(--mono);letter-spacing:.3em;color:var(--blue);display:flex;align-items:center;gap:12px;margin-bottom:18px}
.brseo-lgspark::after{content:"";height:1px;flex:1;background:var(--line)}
.brseo-lgcard h3{font-family:var(--disp);font-weight:500;font-size:30px;line-height:1.05;letter-spacing:-.02em;margin-bottom:8px;color:var(--ink)}
.brseo-lgsub{font-size:13px;color:var(--soft);margin-bottom:24px}
.brseo-lgfield{margin-bottom:14px}
.brseo-lgfield label{display:block;font:700 10px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--soft);margin-bottom:8px}
.brseo-lgfield input{width:100%;font:400 15px/1.2 var(--grot);padding:14px 15px;border:1px solid var(--line);border-radius:11px;background:var(--paper);color:var(--ink);outline:none;transition:border-color .2s}
.brseo-lgfield input:focus{border-color:var(--blue)}
.brseo-lgerr{display:none;font:500 13px/1.4 var(--grot);color:#b23b2e;margin:2px 0 8px}
.brseo-lgerr.show{display:block}
.brseo-lgclose{position:absolute;top:16px;right:18px;width:30px;height:30px;border:0;background:none;cursor:pointer;font-size:22px;line-height:1;color:var(--soft);opacity:.7;transition:opacity .2s}
.brseo-lgclose:hover{opacity:1}
