/* Discovery-first public homepage; scoped to preserve the signed-in dashboard. */
.discovery-hero{position:relative;background:#142d3c;color:white;padding:150px 0 80px;isolation:isolate}
.discovery-hero-photo,.discovery-hero-photo:after{position:absolute;inset:0;z-index:-1}
.discovery-hero-photo:after{content:"";background:linear-gradient(90deg,rgba(11,31,44,.94),rgba(11,31,44,.68))}
.discovery-hero-photo img{width:100%;height:100%;object-fit:cover}
.discovery-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}
.discovery-hero h1{font-family:var(--font-serif);font-size:clamp(2.25rem,4vw,3.65rem);line-height:1.15;color:white;margin:18px 0 24px;max-width:650px}
.discovery-eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;font-weight:700;color:#2d6a4f;margin-bottom:14px}
.discovery-hero .discovery-eyebrow{color:#d1e9d8}
.discovery-intro{font-size:1.12rem;line-height:1.8;max-width:590px;color:#f3f5f4}
.discovery-home-form{background:#fff;color:#183344;padding:30px;border-radius:18px;box-shadow:0 20px 60px #0003}
.discovery-home-form label{display:block;font-weight:700;font-size:1.2rem;margin-bottom:16px}
.discovery-home-form textarea{display:block;width:100%;padding:16px;border:1px solid #80978d;border-radius:8px;resize:vertical;min-height:150px;font:inherit;line-height:1.65;color:#183344;background:#fbfcfa}
.discovery-home-form p,.discovery-small{font-size:.85rem;line-height:1.6;color:#52635b;margin:12px 0}
.discovery-button{display:inline-flex;justify-content:center;align-items:center;gap:18px;background:#2d6a4f;color:#fff!important;border:0;border-radius:7px;padding:14px 24px;font-weight:600;text-decoration:none;min-height:48px}
.discovery-button:hover{background:#204f3b}
.discovery-home-form button{width:100%}
.homepage-body :is(a,button,textarea):focus-visible{outline:3px solid #e7ac4a;outline-offset:4px}
.discovery-section{padding-top:68px;padding-bottom:68px;color:#183344}
.discovery-section h2{font-family:var(--font-serif);font-size:clamp(1.85rem,3vw,2.55rem);line-height:1.25;margin-bottom:24px;color:#183344}
.discovery-section h3{font-family:var(--font-serif);font-size:1.3rem;line-height:1.4}
.discovery-section p{line-height:1.8}
.discovery-section a:not(.discovery-button){color:#245d44;font-weight:600;text-underline-offset:4px}
.discovery-use-cases{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:32px 0 22px}
.discovery-use-cases article{border-top:2px solid #b4cbbb;padding:24px 0 0}
.discovery-use-cases span{display:block;font-size:.78rem;color:#52635b;margin-bottom:14px}
.discovery-band{background:#edf2ec}
.discovery-product{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:60px}
.discovery-screenshot{width:100%;height:auto;border:1px solid #d1dcd3;border-radius:12px;box-shadow:0 12px 32px #18334414}
.discovery-memory-card{border:1px solid #d1dcd3;border-radius:14px;overflow:hidden;background:white;box-shadow:0 12px 32px #1833440d}
.discovery-memory-card img{width:100%;height:220px;object-fit:cover}
.discovery-memory-card>div{padding:26px}.discovery-memory-card span,.discovery-memory-card small{color:#52635b;font-size:.8rem}
.discovery-memory-card h3{margin-top:12px}.discovery-memory-card blockquote{font-family:var(--font-serif);font-size:1.1rem;margin:18px 0}
.discovery-tools{grid-template-columns:1.1fr 1fr}.discovery-tools img{max-height:280px;object-fit:cover;object-position:top}
.discovery-final{text-align:center}.discovery-final>div{display:flex;justify-content:center;gap:28px;align-items:center;flex-wrap:wrap;margin-top:26px}
@media(max-width:991px){.discovery-hero-grid{gap:32px}.discovery-product{gap:30px}.homepage-body .site-nav .navbar-collapse{background:#142d3c;padding:16px;border-radius:8px}.homepage-body .navbar-toggler{background:#fff}}
@media(max-width:767px){.discovery-hero{padding:110px 0 42px}.discovery-hero-grid,.discovery-product,.discovery-use-cases{grid-template-columns:1fr}.discovery-hero-grid{gap:24px}.discovery-home-form{padding:22px}.discovery-section{padding-top:44px;padding-bottom:44px}.discovery-use-cases{gap:12px}.discovery-section h2{margin-bottom:18px}}
@media(max-width:991px){.homepage-body .site-nav.scrolled .navbar-collapse{background:#fff}}
@media(prefers-reduced-motion:reduce){.homepage-body .site-nav,.homepage-body .site-nav a{transition:none}}
/* Public homepage polish; dashboard and shared application styles remain unchanged. */
.homepage-body {
    --discovery-forest: #205640;
    --discovery-navy: #17364A;
    --discovery-ivory: #FAF8F2;
    --discovery-sage: #E8EFE7;
    background: var(--discovery-ivory);
}
.discovery-hero { background: var(--discovery-navy); padding: 152px 0 76px; }
.discovery-hero-photo { z-index: -2; }
.discovery-hero-photo:after {
    z-index: 0;
    background: linear-gradient(90deg, rgba(12,30,44,.98) 0%, rgba(16,39,55,.94) 34%, rgba(23,54,74,.70) 65%, rgba(23,54,74,.36) 100%);
}
.discovery-hero-grid { grid-template-columns: minmax(0,1.08fr) minmax(0,1fr); gap: clamp(40px,6vw,84px); }
.discovery-hero h1 { max-width: 15ch; font-size: clamp(2.5rem,3.8vw,3.55rem); line-height: 1.13; letter-spacing: -.025em; margin: 18px 0 26px; text-wrap: balance; }
.discovery-intro { max-width: 48ch; line-height: 1.75; color: #FAF8F2; }
.discovery-hero .discovery-eyebrow { color: #E8EFE7; letter-spacing: .1em; line-height: 1.8; }
.discovery-home-form { color: var(--discovery-navy); padding: 32px; border: 1px solid #ffffffa6; box-shadow: 0 20px 50px #07172238; }
.discovery-home-form textarea { color: var(--discovery-navy); background: #FAF8F2; border-color: #7c8f82; }
.discovery-home-form textarea::placeholder { color: #59685e; opacity: 1; }
.discovery-home-form p,.discovery-small { color: #4e6054; }
.discovery-button { background: var(--discovery-forest); border-radius: 8px; }
.discovery-button:hover { background: #173f2f; }
.discovery-section,.discovery-section h2,.discovery-section h3 { color: var(--discovery-navy); }
.discovery-eyebrow,.discovery-section a:not(.discovery-button) { color: var(--discovery-forest); }
.discovery-band { background: var(--discovery-sage); }
.discovery-use-cases { gap: 22px; margin-top: 30px; }
.discovery-use-cases .discovery-example-card { position: relative; display: flex; flex-direction: column; padding: 26px; border: 1px solid #d6ddd0; border-radius: 14px; background: #fff; box-shadow: 0 5px 18px #17364a06; transition: border-color .18s ease, box-shadow .18s ease; }
.discovery-example-icon { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; background: var(--discovery-sage); color: var(--discovery-forest); border-radius: 50%; font-size: 1.25rem; margin-bottom: 20px; }
.discovery-use-cases .discovery-example-label { font-size: .73rem; color: #4e6054; margin-bottom: 12px; }
.discovery-example-card h3 { font-size: 1.25rem; margin-bottom: 12px; }
.discovery-example-card p { font-size: .95rem; line-height: 1.75; margin-bottom: 22px; }
.discovery-example-card form { margin-top: auto; }
.discovery-example-action { border: 0; padding: 8px 0; min-height: 44px; background: transparent; color: var(--discovery-forest); font-weight: 700; text-align: left; }
.discovery-example-action i { margin-left: 8px; }
.discovery-example-action:after { content: ""; position: absolute; inset: 0; border-radius: 14px; }
.discovery-example-card:hover,.discovery-example-card:focus-within { border-color: var(--discovery-forest); box-shadow: 0 8px 24px #17364a12; }
.discovery-example-action:focus-visible { outline: none!important; }
.discovery-example-action:focus-visible:after { outline: 3px solid var(--discovery-forest); outline-offset: 4px; }
.homepage-body :is(a,button,textarea):focus-visible { outline-color: var(--discovery-forest); }
.homepage-body .site-nav a:focus-visible { outline-color: #FAF8F2; }
.homepage-body .site-nav.scrolled a:focus-visible { outline-color: var(--discovery-forest); }
.discovery-product { gap: 44px; grid-template-columns: minmax(0,1fr) minmax(0,1.2fr); }
#preview-section { grid-template-columns: minmax(0,.88fr) minmax(0,1.25fr); }
.discovery-product>div { min-width: 0; }
.discovery-screenshot { display: block; border: 1px solid #becdbd; border-radius: 14px; box-shadow: 0 14px 34px #17364a17; }
.discovery-memory-card { border-color: #d6ddd0; box-shadow: 0 8px 24px #17364a0a; }
.discovery-tools { grid-template-columns: minmax(0,1.1fr) minmax(0,1fr); }
.discovery-tools img { max-height: 300px; }
@media(max-width:991px) {
    .discovery-hero-grid { gap: 32px; }
    .discovery-hero h1 { font-size: 2.65rem; }
    .discovery-home-form { padding: 24px; }
    .discovery-use-cases { gap: 16px; }
    .discovery-use-cases .discovery-example-card { padding: 22px; }
    .discovery-product { gap: 28px; }
    .homepage-body .site-nav .navbar-collapse { background: var(--discovery-navy); }
}
@media(max-width:767px) {
    .discovery-hero { padding: 112px 0 44px; }
    .discovery-hero-photo:after { background: linear-gradient(180deg,rgba(12,30,44,.96),rgba(23,54,74,.85) 55%,rgba(23,54,74,.68)); }
    .discovery-hero-grid,.discovery-product,#preview-section,.discovery-tools { grid-template-columns: minmax(0,1fr); }
    .discovery-hero-grid { gap: 30px; }
    .discovery-hero h1 { font-size: clamp(2.2rem,8.7vw,3.2rem); max-width: 17ch; margin-bottom: 22px; }
    .discovery-intro { font-size: 1.05rem; margin-bottom: 0; }
    .discovery-home-form { padding: 24px 20px; }
    .discovery-home-form textarea { font-size: 1rem; padding: 14px; }
    .discovery-use-cases .discovery-example-card { padding: 24px; }
    .discovery-example-icon { margin-bottom: 16px; }
    .discovery-screenshot { max-width: 560px; margin-inline: auto; }
}
@media(prefers-reduced-motion:reduce) { .discovery-use-cases .discovery-example-card { transition: none; } }
/* Keep desktop headline phrases together where space allows, and draw a crisp menu icon without an image dependency. */
@media(min-width:992px) { .discovery-hero h1 { font-size: clamp(2.6rem,3.2vw,3.1rem); max-width: 100%; } }
.homepage-body .site-nav .navbar-toggler-icon,
.homepage-body .site-nav.scrolled .navbar-toggler-icon {
    background-image: linear-gradient(#17364A,#17364A),linear-gradient(#17364A,#17364A),linear-gradient(#17364A,#17364A);
    background-size: 22px 2px;
    background-position: center 6px,center 12px,center 18px;
    background-repeat: no-repeat;
}
