/* studymatcher.net: one stylesheet for the three pages (website-r2, 2026-10-24).
   No third-party calls: Manrope and every image are served from this site. */
@font-face{font-family:Manrope;src:url("../fonts/Manrope-VariableFont_wght.ttf") format("truetype");font-weight:200 800;font-display:swap}
:root{--ink:#101820;--deep:#062F3A;--soft:#33484F;--muted:#4F6972;--line:#DDE5E8;--bg:#F2F5F6;--teal:#0C6B85;--teal-soft:#E3F0F4;--ok:#2B7A53;--sky:#8FD3E6;--on-dark:#D3E3E8}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);font-family:Manrope,system-ui,sans-serif;color:var(--ink)}
a{color:var(--teal)}a:hover{color:var(--deep)}
img{max-width:100%}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
section[id]{scroll-margin-top:16px}

/* header */
.site-hdr{background:#fff;border-bottom:1px solid var(--line)}
.hdr{max-width:1180px;margin:0 auto;padding:18px 24px;display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px}
.hdr .brand{display:flex;align-items:center}.hdr .brand img{height:30px;width:auto;display:block}
.nav-desk{display:flex;flex-wrap:wrap;gap:8px 28px;flex-grow:1;font-size:15px;font-weight:600}
.nav-desk a{color:var(--soft);text-decoration:none;padding:4px 0;border-bottom:2px solid transparent}
.nav-desk a:hover{color:var(--deep)}
.nav-desk a[aria-current="page"]{color:var(--teal);border-bottom-color:var(--teal)}
.pill-desk{background:var(--teal-soft);color:var(--teal);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:700}
.menu{display:none}
.menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;border:1.5px solid #C9D6DA;border-radius:999px;padding:9px 16px;font-weight:700;font-size:15px;color:var(--deep);background:#fff}
.menu summary::-webkit-details-marker{display:none}
.menu[open] summary{background:var(--teal-soft);border-color:var(--teal)}
.menu .panel{position:absolute;right:0;top:calc(100% + 10px);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 30px rgba(6,47,58,.18);padding:6px;display:flex;flex-direction:column;min-width:250px;z-index:10}
.menu .panel a{padding:14px 16px;border-radius:10px;color:var(--ink);text-decoration:none;font-weight:600;font-size:17px}
.menu .panel a:hover,.menu .panel a:focus-visible{background:var(--bg)}
.menu .panel a[aria-current="page"]{color:var(--teal)}
@media (max-width:860px){.nav-desk,.pill-desk{display:none!important}.menu{display:block;margin-left:auto;position:relative}.hdr{flex-wrap:nowrap;padding:14px 20px}}

/* type */
.eyebrow{display:block;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}
h1{margin:0;font-size:clamp(36px,4.6vw,58px);line-height:1.06;font-weight:800;letter-spacing:-.02em;color:var(--deep)}
h2{margin:0;font-size:clamp(28px,3.3vw,42px);line-height:1.12;font-weight:800;letter-spacing:-.02em;color:var(--deep)}
h3{margin:0;font-size:20px;line-height:1.3;font-weight:800;color:var(--deep)}
.lead{margin:0;font-size:19px;line-height:1.55;color:var(--soft);max-width:36em}
p{margin:0}
.head{display:flex;flex-direction:column;gap:12px;max-width:780px}
.head p{font-size:18px;line-height:1.55;color:var(--soft)}

/* buttons */
.btns{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-block;background:var(--teal);color:#fff;text-decoration:none;border-radius:999px;padding:15px 26px;font-weight:700;font-size:16px;border:2px solid var(--teal)}
.btn:hover{background:var(--deep);border-color:var(--deep);color:#fff}
.btn.o{background:transparent;color:var(--teal)}
.btn.o:hover{background:var(--teal-soft);color:var(--deep)}
.btn.w{background:#fff;border-color:#fff;color:var(--deep)}
.btn.w:hover{background:var(--teal-soft)}
.more{font-weight:700;text-decoration:none;font-size:16px}
.more::after{content:" →"}

/* sections */
.sec{padding:80px 0}
.sec>.wrap{display:flex;flex-direction:column;gap:40px}
.alt{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.dark{background:var(--deep);color:#fff}
.dark h2,.dark h3{color:#fff}.dark .eyebrow{color:var(--sky)}.dark .head p,.dark .lead{color:var(--on-dark)}
.split{display:flex;flex-wrap:wrap;align-items:center;gap:48px 64px}
.sec>.wrap.split{flex-direction:row;gap:48px 64px}
.split>.txt{flex:999 1 480px;min-width:0;display:flex;flex-direction:column;gap:18px}
.split>.media{flex:1 1 300px;display:flex;justify-content:center}
.hero{padding:72px 0 64px}
.hero .txt{gap:22px}

/* cards and grids */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.grid.wide{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.card{background:var(--bg);border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:10px}
.alt .card{background:var(--bg)}
section:not(.alt):not(.dark) .card{background:#fff;border:1px solid var(--line)}
.card p{font-size:15.5px;line-height:1.55;color:var(--soft)}
.card .more{margin-top:auto;padding-top:8px}
.dark .card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16)}
.dark .card p{color:var(--on-dark)}
.icon{width:34px;height:34px;fill:none;stroke:var(--teal);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dark .icon{stroke:var(--sky)}
.aud{gap:14px}.aud h3{font-size:22px}
.aud .who{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* check lists */
.checks{display:flex;flex-direction:column;gap:14px;margin:6px 0 0;padding:0;list-style:none}
.checks li{display:flex;gap:14px;align-items:flex-start;font-size:17px;line-height:1.55;color:var(--soft)}
.checks li::before{content:"";flex:none;width:22px;height:22px;margin-top:3px;background:no-repeat center/22px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232B7A53' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E")}
.checks b{color:var(--ink)}
.dark .checks li{color:var(--on-dark)}.dark .checks b{color:#fff}
.dark .checks li::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238FD3E6' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E")}

/* phones and screens */
.duo{display:flex;gap:20px;align-items:flex-start}.duo .phone{width:230px;border-radius:38px;padding:8px}.duo .phone img{border-radius:31px}.duo .phone+.phone{margin-top:56px}
@media (max-width:600px){.duo{gap:12px}.duo .phone{width:calc(50% - 6px);border-radius:26px;padding:6px}.duo .phone img{border-radius:21px}.duo .phone+.phone{margin-top:32px}}
.phone{width:280px;max-width:100%;border-radius:44px;background:var(--ink);padding:10px;box-shadow:0 18px 40px rgba(6,47,58,.18)}
.phone img{width:100%;height:auto;display:block;border-radius:35px}
.phones{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px}
.phones figure{margin:0;display:flex;flex-direction:column;gap:16px}
.phones .phone{width:100%;max-width:300px;border-radius:36px;padding:8px}.phones .phone img{border-radius:29px}
.step{display:flex;gap:12px;align-items:baseline}
.step b{font-size:15px;font-weight:800;color:#fff;background:var(--teal);border-radius:999px;min-width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.phones figcaption{display:flex;flex-direction:column;gap:8px}
.phones figcaption p{font-size:16px;line-height:1.55;color:var(--soft)}
.screen{margin:0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;box-shadow:0 18px 40px rgba(6,47,58,.14);display:flex;flex-direction:column;gap:8px}
.screen img{width:100%;height:auto;display:block;border-radius:8px;border:1px solid var(--line)}
.screen figcaption{font-size:13px;line-height:1.5;color:var(--muted);padding:0 4px 2px}
.screen a{display:block}
.note{font-size:13px;line-height:1.6;color:var(--muted)}
.dark .note{color:#9FB4BB}

/* the Market Intelligence tour */
.tour{display:flex;flex-direction:column;gap:20px}
.tabs{display:none;gap:8px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:thin}
.tour.js .tabs{display:flex}
.tabs button{flex:none;font:700 15px Manrope,system-ui,sans-serif;color:var(--soft);background:#fff;border:1.5px solid #C9D6DA;border-radius:999px;padding:10px 18px;cursor:pointer}
.tabs button:hover{border-color:var(--teal);color:var(--deep)}
.tabs button[aria-selected="true"]{background:var(--teal);border-color:var(--teal);color:#fff}
.tabs button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.stop{display:flex;flex-direction:column;gap:20px}
.tour.js .stop[hidden]{display:none}
.tour:not(.js) .stop+.stop{margin-top:40px}
.stop .txt{order:-1;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:12px 48px;align-items:start}
.stop .txt>div{display:flex;flex-direction:column;gap:10px}
.stop .txt p{font-size:16px;line-height:1.6;color:var(--soft)}
.stop .txt .q{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.stop ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:15.5px;line-height:1.5;color:var(--soft)}
.ex{display:inline-block;font-size:12px;font-weight:700;color:#8a5a00;background:#fff3d6;border-radius:6px;padding:2px 8px;align-self:flex-start}
@media (max-width:760px){.stop .txt{grid-template-columns:1fr}}

/* the hero flow (#1267), unchanged */
.flow{width:280px;display:flex;flex-direction:column;align-items:center;gap:16px}
.flow .phone{width:280px;border-radius:44px;background:#101820;padding:10px;box-sizing:border-box;box-shadow:0 30px 60px rgba(6,47,58,.22)}
.flow .screens{position:relative;aspect-ratio:9/20;border-radius:35px;overflow:hidden;background:#EEF2F3}
.flow .screens img{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .6s ease;border-radius:0}
.flow .screens img.on{opacity:1}
.flow .cap{margin:0;min-height:26px;display:flex;align-items:center;gap:10px;font-size:17px;font-weight:700;color:#062F3A}
.flow .cap b{font-size:14px;color:#fff;background:#0C6B85;border-radius:999px;min-width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center}
.flow .ctl{display:none;align-items:center;gap:4px}
.flow.js .ctl{display:flex}
.flow .ctl button{border:0;background:none;padding:0;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:#0C6B85}
.flow .ctl .dot::before{content:"";width:9px;height:9px;border-radius:999px;background:#C9D6DA;transition:width .3s}
.flow .ctl .dot[aria-current="true"]::before{width:22px;background:#0C6B85}
.flow .ctl button:focus-visible{outline:2px solid #0C6B85;outline-offset:2px;border-radius:999px}
@media (prefers-reduced-motion:reduce){.flow .screens img{transition:none}}

/* closing band and footer */
.cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px}
.sec>.wrap.cta{flex-direction:row;align-items:center}
.cta h2{max-width:20em}
footer{background:#041F27;color:#C9D8DC}
footer .wrap{padding-top:48px;padding-bottom:48px;display:flex;flex-wrap:wrap;gap:28px 64px;align-items:flex-start}
footer .col{flex:1 1 220px;display:flex;flex-direction:column;gap:10px;font-size:15px}
footer .col img{height:28px;width:auto;align-self:flex-start}
footer a{color:var(--sky);font-weight:700;text-decoration:none}footer a:hover{color:#fff}
footer .legal{flex:1 1 100%;margin:8px 0 0;font-size:13px;line-height:1.6;color:#9FB4BB;border-top:1px solid rgba(255,255,255,.14);padding-top:20px}
@media (max-width:600px){.sec{padding:56px 0}.hero{padding:48px 0}.wrap{padding:0 16px}.hdr{padding:14px 16px}}
