/* Easy Found AI shared styles (draft, 2026-11-11). Fonts: Big Shoulders Display + Libre Franklin. Colors (Michelle, 2026-11-11, her palette): ink #000131, navy #00205B, blue #054380, turquoise #01E7CA, green #0FF207, on white. No cream, no dark green. Flat color, 3px corners, no shadows, no gradients, few boxes: a box only where it holds real data. */
:root{--ink:#000131;--paper:#FFFFFF;--found:#0FF207;--deep:#054380;--navy:#00205B;--teal:#01E7CA;--mist:#D9DDE3;--flag:#E0201B;--white:#FFFFFF;--soft:#5B6470}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 18px/1.55 'Libre Franklin',sans-serif}
h1,h2,h3,.num{font-family:'Big Shoulders Display',sans-serif;font-weight:800;line-height:1;letter-spacing:0;margin:0 0 .5em}
h1{font-size:clamp(46px,8.5vw,92px)}
h2{font-size:clamp(34px,5.4vw,56px)}
h3{font-size:26px;font-weight:700;letter-spacing:.01em}
p{margin:0 0 1em}
a{color:var(--deep);text-decoration:underline;text-decoration-color:var(--teal);text-decoration-thickness:3px;text-underline-offset:3px}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.band{padding:72px 0}
.band.dark{background:var(--navy);color:var(--paper)}
.band.dark a{color:var(--found)}
.band.dark a.btn{color:var(--ink)}
.band.tight{padding:40px 0}
/* used once, in the home page hero */
.eyebrow{font:600 13px/1 'Libre Franklin',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--found);margin:0 0 18px}
.lede{font-size:21px;max-width:38em}
.small{font-size:14px;color:var(--soft)}
.dark .small{color:#A9B1BC}
/* plain caption under a real-data box */
.cap{font-size:14px;color:var(--soft);margin:10px 0 0;max-width:40em}
.dark .cap{color:#A9B1BC}
/* header */
.top{background:var(--ink);color:var(--paper);padding:16px 0}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.logo{font:800 28px/1 'Big Shoulders Display',sans-serif;letter-spacing:.01em;color:var(--paper);text-decoration:none}
.logo b{color:var(--found);font-weight:800}
.nav{display:flex;gap:14px;flex-wrap:wrap;font-size:14px}
.nav a{color:var(--paper);text-decoration:none}
.nav a:hover{color:var(--found)}
/* buttons: one style, two grounds */
.btn{display:inline-block;font:600 18px/1 'Libre Franklin',sans-serif;padding:16px 26px;border-radius:3px;text-decoration:none;border:2px solid var(--deep);background:var(--deep);color:var(--white);cursor:pointer}
.dark .btn,.top .btn{background:var(--found);border-color:var(--found);color:var(--ink)}
.top a.btn{color:var(--ink)}
.top .btn{padding:10px 14px;font-size:14px;white-space:nowrap}
/* hero */
.hero>*,.grid>*,.split>*{min-width:0}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
/* a real saved answer, business names hidden behind bars */
.answer{background:var(--white);color:var(--ink);border:1px solid var(--mist);border-radius:3px;padding:20px 22px;font-size:16px}
.answer .q{color:var(--soft);font-size:14px;margin:0 0 10px}
.answer .q b{color:var(--ink);font-weight:600}
.answer p{margin:0 0 8px}
.answer ol{margin:8px 0 0;padding-left:22px}
.answer li{margin:9px 0}
.answer mark{background:var(--found);color:var(--ink);padding:1px 6px;border-radius:3px;font-weight:600}
.bar{display:inline-block;vertical-align:middle;height:15px;max-width:100%;background:var(--ink)}
.bar.ours{background:var(--found);outline:1px solid var(--deep)}
.ourlabel{font-size:13px;font-weight:600;color:var(--deep);margin-left:8px;white-space:nowrap}
/* score */
.score{display:flex;align-items:center;gap:18px;margin-top:18px}
.score .num{font-size:84px;color:var(--found);margin:0}
.score span{font-size:14px;color:#A9B1BC}
.band:not(.dark) .score .num{color:var(--deep)}
.band:not(.dark) .score span{color:var(--soft)}
/* columns of plain text, no boxes */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.grid.two{grid-template-columns:repeat(2,1fr)}
.card{border-top:1px solid var(--mist);padding:16px 0 0;display:flex;flex-direction:column}
.dark .card{border-color:#2A313B}
.card h3{margin-bottom:6px}
.card a.more{margin-top:auto;font-weight:600}
/* plain ordered steps, in running text */
ol.plain{margin:0 0 1em;padding-left:1.4em;max-width:44em}
ol.plain li{margin:0 0 .8em;padding-left:.2em}
/* lists: plain bullets */
ul.ticks{margin:0 0 1em;padding-left:1.3em;max-width:46em}
ul.ticks li{margin:0 0 .55em}
/* posted price list, like a shop's board */
table.prices{max-width:900px}
table.prices td{padding:13px 10px 13px 0}
table.prices td.p{text-align:right;font-weight:600;min-width:8.5em}
table.prices td a{font-weight:600}
table.prices td:first-child{white-space:nowrap;padding-right:20px}
table.prices tr.all td{border-top:2px solid var(--ink)}
/* price block on a product page: no box, a rule */
.pricebox{border-top:2px solid var(--ink);padding-top:24px;max-width:46em}
.pricebox .num{font-size:64px;color:var(--deep);margin:0}
.pricebox .num small{font:400 18px 'Libre Franklin',sans-serif;color:var(--soft)}
.pricebox .setup{font-size:17px;margin:10px 0 14px}
.pricebox p.terms{margin:4px 0;font-size:16px}
/* tables: real data gets a box, plain bold headers */
table{width:100%;border-collapse:collapse;font-size:16px}
th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--mist);vertical-align:top}
th{font:600 15px 'Libre Franklin',sans-serif;color:var(--ink)}
.dark th{color:var(--paper)}
.dark th,.dark td{border-color:#2A313B}
.datum{background:var(--white);color:var(--ink);border:1px solid var(--mist);border-radius:3px;padding:18px 20px}
.datum h3{margin-bottom:8px}
.datum td,.datum th{border-color:var(--mist);color:var(--ink)}
.datum .small,.datum .q{color:var(--soft)}
.datum b{color:var(--ink)}
.datum td.n{font-weight:600;white-space:nowrap;text-align:right}
.datum td.ph{color:var(--soft);font-style:italic;text-align:right}
mark{background:var(--found);color:var(--ink);padding:1px 6px;border-radius:3px}
.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
/* form */
form.found{display:grid;gap:14px;max-width:520px}
form.found label{font-weight:600;font-size:15px;display:block;margin-bottom:6px}
form.found input,form.found select{width:100%;font:400 17px 'Libre Franklin',sans-serif;padding:13px 12px;border:1px solid #9AA3AF;border-radius:3px;background:var(--white);color:var(--ink)}
/* faq */
details{border-bottom:1px solid var(--mist);padding:16px 0}
summary{font:600 19px 'Libre Franklin',sans-serif;cursor:pointer}
/* footer */
.foot{background:var(--ink);color:#A9B1BC;padding:40px 0;font-size:14px}
.foot a{color:#D6DCE4}
.foot .cols{display:flex;gap:40px;flex-wrap:wrap;margin-bottom:20px}
@media(max-width:820px){.hero,.grid,.grid.two{grid-template-columns:1fr}.band{padding:48px 0}.score .num{font-size:64px}.nav{display:none}}
@media(max-width:600px){table.prices tr{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid var(--mist);padding:10px 0}table.prices td{border:0;padding:2px 0}table.prices td.d{grid-column:1/-1;grid-row:2;font-size:15px;color:var(--soft)}table.prices tr.all{border-top:2px solid var(--ink)}table.prices tr.all td{border:0}}
@media(max-width:1180px){.nav a[href="industries.html"],.nav a[href="/industries/"]{display:none}}

.eyebrow{color:var(--teal)}
.band:not(.dark) .eyebrow{color:var(--deep)}
.pgrid{gap:32px}
.pcard{display:flex;flex-direction:column}
.pcard img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:3px;display:block;margin-bottom:14px}
.pcard h3{margin:0 0 6px}
.pcard p{margin:0 0 10px}
.pcard a.more{margin-top:auto;font-weight:600}
.igrid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:8px}
.icard{display:flex;flex-direction:column;text-decoration:none;color:var(--ink)}
.icard img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:3px;display:block;margin-bottom:10px}
.icard b{font:800 24px/1.05 'Big Shoulders Display',sans-serif;margin-bottom:4px}
.icard span{font-size:15px;color:var(--soft)}
.icard:hover b{color:var(--deep)}
@media(max-width:820px){.igrid{grid-template-columns:repeat(2,1fr)}}

.suite-line{font:800 clamp(26px,3vw,38px)/1.1 'Big Shoulders Display',sans-serif;color:var(--ink);text-align:center;margin:22px auto 48px;max-width:46ch}

/* service cards: dark box, product picture, name, one line, checks (Michelle, 2026-11-11: easy to read for people who skim) */
.svcgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:34px}
.svc{display:grid;grid-template-columns:52% 1fr;gap:10px;align-items:center;background:var(--navy);color:#fff;border-radius:3px;padding:26px 26px 26px 10px;text-decoration:none;transition:transform .2s,background .2s}
.svc:hover{transform:translateY(-3px);background:#002A75}
.svc img{width:100%;height:auto;display:block}
.svc h3{color:var(--teal);font-size:30px;margin:0 0 8px}
.svc p{margin:0 0 14px;font-size:17px;line-height:1.45;color:#E6ECF5}
.svc hr{border:0;height:3px;width:64px;background:var(--found);margin:0 0 14px}
.svc ul{list-style:none;margin:0 0 16px;padding:0}
.svc li{position:relative;padding:4px 0 4px 30px;font-size:16px;line-height:1.35}
.svc li::before{content:"";position:absolute;left:0;top:5px;width:20px;height:20px;border-radius:50%;background:var(--found)}
.svc li::after{content:"";position:absolute;left:7px;top:9px;width:5px;height:9px;border:solid var(--ink);border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.svc .more{color:var(--found);font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:980px){.svcgrid{grid-template-columns:1fr}}
@media(max-width:560px){.svc{grid-template-columns:1fr;padding:18px}.svc img{max-width:380px;margin:0 auto}}
/* industries on blue */
.band.blue{background:var(--deep);color:#fff}
.band.blue h2{color:#fff}
.band.blue .icard{color:#fff;background:#00205B;border-radius:3px;overflow:hidden;transition:transform .2s}
.band.blue .icard:hover{transform:translateY(-3px)}
.band.blue .icard img{border-radius:0;margin:0}
.band.blue .icard b{color:var(--teal);padding:14px 16px 4px;margin:0}
.band.blue .icard span{color:#D5DDEA;padding:0 16px 18px}
.band.blue .icard:hover b{color:var(--found)}
.band.blue p{color:#E6ECF5}
.band.blue a{color:var(--found)}

/* reviews */
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px}
.rcard{margin:0;border:1px solid var(--mist);border-top:4px solid var(--teal);border-radius:3px;padding:24px;display:flex;flex-direction:column;background:#fff}
.rstars{color:#F5B400;font-size:20px;letter-spacing:3px;margin-bottom:10px}
.rq{font:800 64px/.6 'Big Shoulders Display',sans-serif;color:var(--teal);height:30px}
.rcard blockquote{margin:0 0 16px;font-size:18px;line-height:1.5;flex:1}
.rcard figcaption b{display:block;font-weight:700}
.rcard figcaption span{font-size:14px;color:var(--soft)}
@media(max-width:900px){.rgrid{grid-template-columns:1fr}}

.gstars{font-size:20px;margin:-6px 0 14px}.gstars span{color:#F5B400;letter-spacing:3px;font-size:24px}

/* Google-style review tiles; the Google mark and stars only on real Google reviews */
.rtile{margin:0;background:#F4F6F8;border-radius:3px;padding:22px;display:flex;flex-direction:column}
.rhead{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.rav{width:42px;height:42px;border-radius:50%;color:#fff;font:700 19px/42px 'Libre Franklin',sans-serif;text-align:center;flex:none}
.rwho{flex:1;line-height:1.25}.rwho b{display:block;font-size:17px}.rwho span{font-size:13px;color:var(--soft)}
.gg{width:22px;height:22px;flex:none}
.rtile .rstars{color:#F5B400;font-size:18px;letter-spacing:2px;margin:0 0 8px}
.rtile blockquote{margin:0 0 12px;font-size:16.5px;line-height:1.55;flex:1}
.rtile figcaption{font-size:13px;color:var(--soft)}

/* Hey Siri / Hey Google profiles */
.heygrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:26px}
.hey{background:var(--navy);color:#fff;border-radius:3px;padding:24px 22px;border-top:4px solid var(--found)}
.hey b{display:block;font:800 30px/1 'Big Shoulders Display',sans-serif;color:var(--found);margin-bottom:12px}
.hey h3{color:var(--teal);font-size:22px;margin:0 0 8px}
.hey p{margin:0;font-size:16px;line-height:1.5;color:#E6ECF5}
@media(max-width:980px){.heygrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.heygrid{grid-template-columns:1fr}}

.svcgrid .svc:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 11px);justify-self:center}
@media(max-width:980px){.svcgrid .svc:last-child:nth-child(odd){width:auto;justify-self:stretch}}
