/* Learning Partners — a photographic, interactive blue-and-gold identity. */
:root { --navy:#006faa; --ink:#103c53; --blue:#0079c2; --accent:#f5cf13; --muted:#496979; --rule:#d9e6eb; --radius:12px; --gutter:max(6%,calc((100% - 1280px)/2)); }
html { scroll-behavior:smooth; scroll-padding-top:116px; }
body { max-width:none; background:#fff; }
body[data-phone-dock] main { padding:0; }
h1,h2,h3 { text-wrap:balance; }
a,button,summary { -webkit-tap-highlight-color:transparent; }
.header { position:sticky; top:0; z-index:50; max-width:none; padding:20px var(--gutter); background:#fffffff5; backdrop-filter:blur(18px); border-bottom:1px solid #dce8ef; transition:box-shadow .2s; }
.header.is-scrolled { box-shadow:0 6px 30px #103c5310; }
.header .brand img { width:238px; }
.header nav { gap:28px; }
.header nav > a { font-size:.875rem; }
.header .nav-contact { color:white; background:var(--navy); border:1px solid var(--navy); border-radius:7px; padding:13px 20px; }
.header .nav-contact:hover { color:#075179; background:var(--accent); border-color:var(--accent); text-decoration:none; }
.state-switcher { padding:5px var(--gutter); background:#f0f6f9; border:0; }
.state-switcher a[data-state-choice] { font-size:.8125rem; padding:6px 14px; }
.button { border-radius:7px; padding:16px 23px; font-weight:700; transition:background .2s,transform .2s,box-shadow .2s; }
.button:hover { transform:translateY(-3px); box-shadow:0 8px 22px #032a4922; text-decoration:none; }
body[data-phone-dock] main > .section { padding:90px var(--gutter); }
.eyebrow { font-size:.75rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
h2,.about.about-partnership h2,.demo-intro h2,.team-contact .team-heading h2 { font-size:clamp(2.1rem,3.5vw,3.35rem); font-weight:700; letter-spacing:-.045em; line-height:1.14; }
/* A full-bleed hero with a framed classroom moment. */
.redesigned-home .hero.hero-photography { position:relative; overflow:hidden; margin:0; border-radius:0; padding:70px var(--gutter) 82px; background:linear-gradient(115deg,#004b80 0%,#0079c2 70%,#148cd0 100%); }
.redesigned-home .hero.hero-photography::before { display:block; content:''; position:absolute; width:720px; height:720px; inset:auto -150px -420px auto; border:100px solid #ffffff08; border-radius:50%; background:none; mask:none; z-index:0; }
.redesigned-home .hero-body { grid-template-columns:minmax(0,1.02fr) minmax(0,1fr); gap:7%; padding:0; align-items:center; }
.redesigned-home .hero-top { display:block; margin-bottom:28px; }
.redesigned-home .hero-top .eyebrow { font-size:.7rem; letter-spacing:.13em; max-width:none; display:flex; align-items:center; gap:12px; }
.redesigned-home .hero-top .eyebrow::before { content:''; width:26px; height:3px; background:var(--accent); flex-shrink:0; }
.redesigned-home .hero-message h1 { font-size:clamp(2.8rem,4.6vw,4.7rem); line-height:1.08; font-weight:700; letter-spacing:-.05em; margin:0 0 26px; }
.redesigned-home .hero-message > p { font-size:1.125rem; line-height:1.7; max-width:40ch; color:#e8f5ff; }
.redesigned-home .hero-message > .hero-solutions-link { margin-top:28px; padding:16px 24px; border-radius:7px; }
.hero-secondary-link { display:inline-flex; align-items:center; min-height:48px; margin:16px 0 0 24px; font-size:.9375rem; border-bottom:1px solid #ffffff70; }
.redesigned-home .hero-student-photo { width:100%; padding:0 0 26px; margin:0; }
.redesigned-home .student-photo-frame { border:0; border-radius:120px 14px 120px 14px; background:#e9f1f5; box-shadow:0 18px 38px #00375822; }
.redesigned-home .student-photo-frame img { aspect-ratio:1.12; object-position:52% center; }
.redesigned-home .hero-student-photo::before { content:''; display:block; position:absolute; z-index:-1; width:150px; height:150px; top:-24px; right:-24px; inset-block-end:auto; inset-inline-start:auto; border-radius:50%; background:var(--accent); transform:none; }
.redesigned-home .hero-student-photo figcaption { position:absolute; left:-20px; bottom:4px; display:block; width:min(86%,320px); padding:16px 20px; margin:0; text-align:left; color:var(--navy); background:#fff; border-radius:7px; box-shadow:0 8px 22px #002e5417; border-left:3px solid var(--accent); font-size:.75rem; }
.photo-caption-title { display:block; font-size:.9375rem; font-weight:700; margin-bottom:3px; }
.partner-strip { display:flex; align-items:center; justify-content:space-between; gap:36px; padding:22px var(--gutter); border-bottom:1px solid var(--rule); background:#fff; }
.partner-strip > p { max-width:24ch; font-size:.875rem; line-height:1.5; color:var(--muted); margin:0; }
.partner-strip > div { display:flex; justify-content:space-between; align-items:center; width:62%; gap:40px; }
.partner-strip a { display:flex; align-items:center; min-height:48px; transition:opacity .2s; }
.partner-strip a:hover { opacity:.65; }
.partner-strip img { display:block; width:132px; max-height:46px; object-fit:contain; }
.partner-strip a:nth-child(2) img { width:78px; }
/* One compact secondary toolbar for solution category and state context. */
.solutions-toolbar {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  grid-template-areas:"title categories state";
  align-items:center;
  gap:0 30px;
  min-height:70px;
  padding:0 var(--gutter);
  background:#fff;
  border-bottom:1px solid var(--rule);
}
.solutions-toolbar-title {
  grid-area:title;
  color:var(--ink);
  font-size:.9375rem;
  font-weight:700;
}
.solutions-toolbar-title:hover { color:var(--blue); text-decoration:none; }
.solutions-toolbar .solutions-nav {
  grid-area:categories;
  min-width:0;
  padding:0;
  background:transparent;
  border:0;
  font-size:.8125rem;
}
.solutions-toolbar .solutions-nav > div {
  justify-content:flex-start;
  gap:24px;
  max-width:none;
  margin:0;
  flex-wrap:nowrap;
}
.solutions-toolbar .solutions-nav a,
.solutions-toolbar .solutions-nav a:first-child {
  flex-shrink:0;
  min-height:70px;
  margin:0;
  padding:25px 0 20px;
  border-bottom:2px solid transparent;
  color:var(--muted);
  white-space:nowrap;
}
.solutions-toolbar .solutions-nav a:hover { color:var(--blue); border-bottom-color:#a9cfe4; }
.solutions-toolbar .solutions-nav a[aria-current="page"] { color:var(--blue); border-bottom-color:var(--blue); font-weight:700; }
.solutions-toolbar .state-switcher {
  grid-area:state;
  width:auto;
  padding:0;
  background:transparent;
  border:0;
}
.solutions-toolbar .state-switcher-label { display:none; }
.solutions-toolbar .state-switcher.has-state-picker > div { display:none; }
.solutions-state-picker { display:flex; align-items:center; gap:9px; color:var(--muted); font-size:.75rem; font-weight:600; white-space:nowrap; }
.solutions-state-picker select {
  min-height:40px;
  padding:8px 30px 8px 11px;
  border:1px solid #c8dbe6;
  border-radius:5px;
  background:#fff;
  color:var(--ink);
  font:600 .8125rem 'DM Sans',sans-serif;
}
.solutions-state-picker select:hover { border-color:#8fbacf; }
.solutions-state-picker select:focus-visible { outline:3px solid #72bde3; outline-offset:2px; }
/* Interactive product explorer, driven by the existing CMS product cards. */
body.redesigned-home main > .solutions { background:#f4f8fb; padding-block:88px; }
.redesigned-home .solutions .section-heading { grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); margin-bottom:38px; gap:12%; }
.redesigned-home .solutions .section-heading h2 { max-width:22ch; font-size:clamp(2.1rem,3.3vw,3.2rem); }
.redesigned-home .solutions .section-heading > p { max-width:36ch; font-size:1.0625rem; line-height:1.7; }
.solution-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin-bottom:30px; border-bottom:1px solid #bdcfda; }
.solution-tab { appearance:none; font:inherit; text-align:left; cursor:pointer; color:var(--muted); border:0; border-bottom:3px solid transparent; background:transparent; padding:18px 20px 20px; min-width:0; transition:background .2s,color .2s; }
.solution-tab-logo { display:flex; align-items:center; height:28px; margin-bottom:12px; }
.solution-tab-logo img { display:block; width:auto; max-width:104px; max-height:28px; object-fit:contain; object-position:left center; }
.solution-tab > span { display:block; font-size:.75rem; margin-bottom:5px; }
.solution-tab > strong { display:block; font-size:1rem; line-height:1.4; color:var(--navy); }
.solution-tab[aria-selected=true] { border-bottom-color:var(--blue); background:#e4f0f8; color:#0069a6; }
.solution-tab:hover { background:#e9f2f7; }
.solution-tab:focus-visible { outline:3px solid var(--blue); outline-offset:-3px; }
.redesigned-home .product-sequence { gap:36px; }
.redesigned-home .product-row { padding:36px; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); gap:6%; align-items:start; background:white; border:1px solid #dce6ed; border-radius:18px; box-shadow:0 15px 45px #163c5310; }
.redesigned-home .product-row + .product-row { border:1px solid #dce6ed; padding:36px; }
.redesigned-home .product-row[hidden] { display:none!important; }
.redesigned-home .product-row .product-media { grid-column:1; grid-row:1; margin:0; padding:20px; background:#eef4f8; border-radius:12px; border:0; }
.redesigned-home .product-media img { border:1px solid #dce6ed; border-radius:5px; width:100%; height:auto; box-shadow:0 8px 24px #113e5612; }
.redesigned-home .product-copy,
.redesigned-home .product-row:nth-child(even) .product-copy { grid-column:2; grid-row:1; padding-top:12px; }
.redesigned-home .product-row:nth-child(even) .product-media { grid-column:1; grid-row:1; }
.redesigned-home .product-heading { display:block; margin-bottom:18px; border:0; padding:0; }
.redesigned-home .product-heading .product-logo { height:46px; min-height:0; width:138px; margin-bottom:23px; }
.redesigned-home .product-heading .product-logo img { max-height:46px; }
.redesigned-home .product-row h3 { font-size:clamp(1.65rem,2.2vw,2.3rem); font-weight:700; line-height:1.18; }
.redesigned-home .product-description { font-size:1rem; line-height:1.75; }
.redesigned-home .product-contact { display:inline-flex; color:#fff; background:var(--navy); border:0; border-radius:6px; padding:12px 18px; font-size:.875rem; margin-top:18px; transition:background .2s,transform .2s; }
.redesigned-home .product-contact:hover { background:var(--blue); text-decoration:none; transform:translateY(-2px); }
.explorer-footer { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:26px; font-size:.875rem; color:var(--muted); }
.explorer-footer a { color:#006aa8; text-decoration:underline; text-underline-offset:5px; }
/* A human partnership story with large photography and a simple process. */
body.redesigned-home main > .about-partnership { background:var(--navy); color:white; padding-block:92px; gap:9%; }
.redesigned-home .about.about-partnership h2 { color:white; margin:16px 0 30px; }
.redesigned-home .about-partnership h2 em { color:var(--accent); font-style:normal; }
.redesigned-home .about.about-partnership .about-statement > .eyebrow { color:#81c9ef; }
.redesigned-home .about-student-photo { max-width:none; margin:0; }
.redesigned-home .about-student-photo img { border-radius:12px 72px 12px 12px; border:0; box-shadow:none; }
.redesigned-home .about-partnership .about-copy .lead { color:#fff; font-size:clamp(1.6rem,2.5vw,2.35rem); font-weight:600; line-height:1.3; max-width:24ch; }
.redesigned-home .about-partnership .about-copy > p { color:#cbdee8; line-height:1.8; }
.redesigned-home .about-partnership .text-link { color:white; border-color:#6592a9; margin-top:20px; }
.redesigned-home .about-partnership .partnership-route { display:grid; grid-template-columns:repeat(3,1fr); margin:28px 0 0; gap:20px; color:#fff; }
.redesigned-home .partnership-route li { display:flex; flex-direction:column; align-items:flex-start; border-top:1px solid #4c6b7c; padding-top:14px; font-size:.875rem; }
.redesigned-home .about-partnership .partnership-route li > span { display:block; width:auto; height:auto; color:var(--accent); font-size:.75rem; background:none; }
body.redesigned-home main > .demo-section { background:#fff9e8; padding-block:72px; gap:8%; }
.redesigned-home .demo-intro .eyebrow { color:#806817; }
.redesigned-home .demo-intro h2 em { color:var(--navy); font-style:normal; }
.redesigned-home .demo-intro > p { max-width:46ch; }
.redesigned-home .demo-topics { display:none; }
.redesigned-home .booking-calendar,.redesigned-home .booking-calendar:not(.is-connected) { align-self:stretch; display:flex; flex-direction:column; justify-content:center; background:transparent; border:0; border-left:1px solid #ddcf9f; padding:8px 0 8px 48px; border-radius:0; box-shadow:none; }
.redesigned-home .booking-card-heading h3 { font-size:1.625rem; font-weight:700; }
.redesigned-home .booking-empty .product-contact { display:inline-flex; align-items:center; justify-content:center; min-height:46px; margin-top:12px; padding:11px 18px; border:1px solid var(--blue); border-radius:6px; background:var(--blue); color:#fff; font-weight:700; text-decoration:none; }
.redesigned-home .booking-empty .product-contact:hover { background:#00639e; border-color:#00639e; color:#fff; }
.redesigned-home .booking-empty .product-contact:focus-visible { outline:3px solid #f5cf13; outline-offset:3px; }
body[data-phone-dock] main > .contact.team-contact.section { padding:90px var(--gutter); background:#f5f9fc; }
.team-heading { gap:10%; margin-bottom:40px; }
.team-grid { max-width:none; margin:0; gap:clamp(22px,2.4vw,34px); }
.team-person,.team-person:hover { background:transparent; border:0; border-radius:0; overflow:visible; padding:0; box-shadow:none; }
.team-person .team-portrait { aspect-ratio:4/3; border-radius:8px; overflow:hidden; background:#e5edf3; }
.team-person .team-portrait img { width:100%; height:100%; object-fit:cover; transition:none; }
.team-person:hover .team-portrait img { transform:none; }
.team-person .team-info { padding:18px 0 0; }
.team-person .team-info h3 { font-weight:700; font-size:1.125rem; }
.team-person .team-role { min-height:0; font-size:.8125rem; }
.team-person .team-links { font-size:.75rem; border-top:1px solid var(--rule); padding-top:11px; }
.team-person .team-links a { overflow-wrap:anywhere; text-underline-offset:3px; }
.team-person .team-links a:hover { text-decoration:underline; }
.team-person .team-links a:focus-visible { outline:3px solid #f5cf13; outline-offset:3px; border-radius:3px; }
/* Carry the identity through solution details, catalog, and events. */
body[data-phone-dock] main > .solutions-intro,body[data-phone-dock] main > .events-intro { background:var(--navy); color:white; padding-block:80px; border-bottom:6px solid var(--accent); }
.solutions-intro h1,.events-intro h1 { font-size:clamp(2.7rem,4.8vw,4.8rem); font-weight:700; line-height:1.1; }
.solution-overview { gap:60px; }
.solution-overview-row { border:1px solid var(--rule); border-radius:18px; padding:40px; background:#f3f8fb; gap:7%; }
.solution-overview-row:nth-child(even) { background:#fff8e5; }
.overview-copy h2 { font-size:clamp(1.8rem,2.8vw,2.8rem); font-weight:700; }
.overview-visual { padding:38px 40px 40px; background:white; border-radius:12px; box-shadow:0 16px 30px #193e5310; transition:transform .3s,box-shadow .3s; }
.overview-visual:hover { transform:translateY(-5px); box-shadow:0 20px 38px #193e5320; }
body.solution-page[data-phone-dock] main > .detail-hero { background:linear-gradient(130deg,#fff 25%,#e8f4fb); padding-block:30px 80px; border-bottom:1px solid var(--rule); }
.solution-page .detail-hero h1 { font-size:clamp(2.6rem,4.2vw,4.4rem); }
.solution-page .detail-visual { border-radius:16px; overflow:hidden; box-shadow:0 24px 55px #123c531c; border:1px solid var(--rule); }
.solution-page .detail-feature { padding:28px; background:#f4f8fb; border:1px solid var(--rule); border-radius:12px; transition:transform .25s,box-shadow .25s; }
.solution-page .detail-feature:hover { transform:translateY(-5px); box-shadow:0 14px 32px #163c5312; }
.solution-page .district-scene { border-radius:16px; overflow:hidden; background:var(--navy); color:#fff; }
.solution-page .district-scene figcaption { border-left-color:var(--accent); }
.solution-page .district-scene figcaption .eyebrow,.solution-page .district-scene figcaption p { color:white; }
body[data-phone-dock] main > .solution-cta { background:var(--navy); border-top:5px solid var(--accent); padding-block:70px; }
.solution-cta h2 { font-size:clamp(2rem,3.4vw,3.3rem); font-weight:700; }
.giveaway-form { border-radius:16px; box-shadow:0 15px 50px #173c5312; }
.events-empty { border:1px solid var(--rule); background:#f4f8fb; padding:40px; border-radius:12px; }
.conference-card { border-radius:16px; box-shadow:0 14px 35px #173c5310; }
.site-footer { background:var(--navy); color:white; border-top:0; padding:64px var(--gutter) 25px; gap:40px; }
.site-footer .footer-brand { width:fit-content; background:#fff; border-radius:6px; padding:10px 14px; }
.site-footer .footer-brand img { width:190px; }
.site-footer .footer-identity > p,.site-footer .footer-links a,.site-footer .footer-bottom { color:#b8d0dc; }
.site-footer .footer-links a:hover { color:#fff; }
.site-footer .footer-bottom { border-top-color:#345466; }
/* Motion is finite, subtle, and optional. Content stays visible without JS. */
@keyframes lp-enter { from { opacity:0; transform:translateY(24px); } to { opacity:1; transform:none; } }
@media(prefers-reduced-motion:no-preference) {
  .redesigned-home .hero-message { animation:lp-enter .7s both; }
  .redesigned-home .hero-student-photo { animation:lp-enter .85s .1s both; }
  .lp-reveal { opacity:0; transform:translateY(24px); transition:opacity .65s,transform .65s; }
  .lp-reveal.is-visible { opacity:1; transform:none; }
  .product-row.panel-enter { animation:lp-enter .35s both; }
}
@media(min-width:761px) and (max-width:1100px) {
  .partner-strip > div { gap:24px; }
  .partner-strip img { width:110px; }
  .partner-strip a:nth-child(2) img { width:65px; }
  .redesigned-home .hero-student-photo figcaption { left:-12px; padding:16px; width:100%; font-size:.75rem; }
  .photo-caption-title { font-size:.9375rem; }
  .redesigned-home .student-photo-frame { border-radius:80px 12px 80px 12px; }
  .redesigned-home .hero-message h1 { font-size:clamp(2.65rem,4.7vw,3.7rem); }
  .hero-secondary-link { margin-left:0; }
  .redesigned-home .product-row { padding:26px; gap:5%; }
  .redesigned-home .product-row .product-media { padding:12px; }
  .solution-tab { padding-inline:12px; }
  .team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:900px) {
  .solutions-toolbar {
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    grid-template-areas:"title title" "categories state";
    gap:10px 12px;
    min-height:0;
    padding:14px var(--gutter) 16px;
  }
  .solutions-toolbar-title { font-size:.875rem; }
  .solutions-toolbar .solutions-nav,
  .solutions-toolbar .state-switcher { width:100%; }
  .solutions-toolbar .solutions-nav.has-phone-picker > div { display:none; }
  .solutions-toolbar .phone-solution-picker,
  .solutions-state-picker { display:flex; flex-direction:column; align-items:stretch; gap:5px; padding:0; color:var(--muted); font-size:.6875rem; font-weight:700; }
  .solutions-toolbar .phone-solution-picker select,
  .solutions-state-picker select { width:100%; min-height:42px; padding:8px 29px 8px 10px; border:1px solid #c8dbe6; border-radius:5px; background:#fff; color:var(--ink); font-size:.8125rem; }
}
@media(max-width:760px) {
  :root { --gutter:22px; }
  html { scroll-padding-top:100px; }
  .header { padding:17px var(--gutter); }
  .header .brand img { width:180px; }
  .header .mobile-menu-toggle:not([hidden]) { background:#edf5fa; border:0; border-radius:7px; }
  .header nav { gap:0; }
  .state-switcher { padding:3px 14px; }
  .solutions-toolbar .state-switcher { padding:0; }
  .state-switcher a[data-state-choice] { font-size:.75rem; padding-inline:5px; }
  body[data-phone-dock] main > .section { padding:52px var(--gutter); }
  .section h2,.about.about-partnership h2,.demo-intro h2,.team-contact .team-heading h2 { font-size:2rem; line-height:1.15; }
  .redesigned-home .hero.hero-photography { padding:40px var(--gutter) 48px; }
  .redesigned-home .hero-body { grid-template-columns:1fr; gap:34px; }
  .redesigned-home .hero-top { margin-bottom:20px; }
  .redesigned-home .hero-top .eyebrow { font-size:.625rem; gap:8px; letter-spacing:.09em; }
  .redesigned-home .hero-top .eyebrow::before { width:16px; }
  .redesigned-home .hero-message h1 { font-size:clamp(2rem,8.4vw,3.5rem); line-height:1.1; letter-spacing:-.045em; margin-bottom:20px; }
  .redesigned-home .hero-message > p { font-size:1rem; line-height:1.65; }
  .redesigned-home .hero-message > .hero-solutions-link { margin-top:20px; padding:14px 18px; font-size:.875rem; }
  .hero-secondary-link { margin:10px 0 0 18px; font-size:.875rem; }
  .redesigned-home .hero-student-photo { width:100%; max-width:520px; padding:0 0 28px; }
  .redesigned-home .student-photo-frame { border-radius:64px 10px 64px 10px; }
  .redesigned-home .student-photo-frame img { aspect-ratio:1.45; }
  .redesigned-home .hero-student-photo::before { width:92px; height:92px; right:-12px; top:-14px; }
  .redesigned-home .hero-student-photo figcaption { left:12px; padding:15px 18px; width:calc(100% - 24px); font-size:.75rem; }
  .photo-caption-title { font-size:.9375rem; }
  .partner-strip { padding:26px var(--gutter); display:block; }
  .partner-strip > p { max-width:none; text-align:center; font-size:.8125rem; margin-bottom:20px; }
  .partner-strip > div { width:100%; gap:20px; }
  .partner-strip img { width:94px; max-height:38px; }
  .partner-strip a:nth-child(2) img { width:58px; }
  body.redesigned-home main > .solutions { padding-block:50px; }
  .redesigned-home .solutions .section-heading { display:block; margin-bottom:24px; }
  .redesigned-home .solutions .section-heading h2 { font-size:2rem; max-width:none; }
  .redesigned-home .solutions .section-heading > p { margin-top:16px; font-size:1rem; }
  .solution-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); border:1px solid #cfdee8; border-radius:9px; overflow:hidden; margin-bottom:22px; }
  .solution-tab { padding:14px 12px; border-bottom:2px solid transparent; }
  .solution-tab-logo { height:23px; margin-bottom:9px; }
  .solution-tab-logo img { max-width:82px; max-height:23px; }
  .solution-tab > span { font-size:.6875rem; margin-bottom:5px; }
  .solution-tab > strong { font-size:.8125rem; }
  .redesigned-home .product-row,.redesigned-home .product-row + .product-row { display:flex; flex-direction:column; padding:20px; gap:24px; border-radius:12px; }
  .redesigned-home .product-row .product-media { display:block; width:100%; padding:10px; }
  .redesigned-home .product-copy { display:block; width:100%; }
  .redesigned-home .product-heading { display:block; }
  .redesigned-home .product-heading .product-logo { display:flex; margin-bottom:18px; width:120px; height:40px; }
  .redesigned-home .product-heading .product-logo img { max-height:40px; }
  .redesigned-home .product-row h3 { font-size:1.6rem; }
  .redesigned-home .product-description { font-size:.9375rem; }
  .redesigned-home .product-contact { font-size:.8125rem; }
  .explorer-footer { display:block; font-size:.8125rem; }
  .explorer-footer a { display:inline-flex; min-height:44px; align-items:center; }
  body.redesigned-home main > .about-partnership { padding-block:54px; gap:34px; }
  .redesigned-home .about-partnership .about-statement { display:block; }
  .redesigned-home .about.about-partnership h2 { margin:0 0 24px; }
  .redesigned-home .about-partnership .about-copy .lead { display:block; font-size:1.6rem; margin:0 0 20px; }
  .redesigned-home .about-partnership .partnership-route { gap:12px; }
  body.redesigned-home main > .demo-section { padding-block:50px; gap:28px; }
  .redesigned-home .booking-calendar:not(.is-connected),.redesigned-home .booking-calendar { padding:24px 0 0; border:0; border-top:1px solid #ddcf9f; }
  body[data-phone-dock] main > .contact.team-contact.section { padding:52px var(--gutter); }
  .team-heading { margin-bottom:26px; }
  .team-grid { grid-template-columns:1fr; gap:0; }
  .team-person,.team-person:hover { display:grid; grid-template-columns:90px minmax(0,1fr); gap:16px; padding:18px 0; border:0; border-top:1px solid var(--rule); border-radius:0; }
  .team-person:last-child { border-bottom:1px solid var(--rule); }
  .team-person .team-portrait { width:90px; height:96px; max-height:none; border-radius:6px; aspect-ratio:auto; }
  .team-person .team-portrait img { height:100%; object-fit:cover; }
  .team-person .team-info { align-self:center; padding:0; }
  .team-person .team-info h3 { font-size:1rem; }
  .team-person .team-role { font-size:.75rem; }
  .team-person .team-links > a { font-size:inherit; }
  .team-person .team-links { font-size:.75rem; padding-top:7px; margin-top:8px; }
  body[data-phone-dock] main > .solutions-intro,body[data-phone-dock] main > .events-intro { padding-block:46px; }
  .solutions-intro h1,.events-intro h1 { font-size:2.6rem; }
  .solution-overview-row { padding:20px; border-radius:12px; }
  .solution-overview-row .phone-product { border:0; }
  .solution-overview-row .phone-product-summary { min-height:100px; }
  body.solution-page[data-phone-dock] main > .detail-hero { padding-block:24px 44px; }
  .solution-page .detail-hero h1 { font-size:2.4rem; }
  .solution-page .detail-feature { padding:24px; }
  .solution-page .district-scene { margin:0; }
  body[data-phone-dock] main > .solution-cta { padding-block:48px; }
  .site-footer { padding:44px var(--gutter) 26px; gap:28px 20px; }
  .site-footer .footer-brand img { width:175px; }
  .phone-dock { background:#ffffffed; backdrop-filter:blur(14px); border-top:1px solid #c8dbe7; box-shadow:0 -5px 25px #123c530a; }
}
@media(max-width:360px) { :root { --gutter:18px; } .header .brand img { width:165px; } .hero-secondary-link { margin-left:0; display:flex; width:fit-content; } .partner-strip img { width:82px; } .partner-strip > div { gap:12px; } .team-person,.team-person:hover { grid-template-columns:74px minmax(0,1fr); gap:14px; } .team-person .team-portrait { width:74px; height:84px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important; transition:none!important; } .lp-reveal { opacity:1; transform:none; } }
