/* Final shared logo sizing and readable brand colors across public pages. */
:root {
    --primary:#7438a4;
    --primary-light:#7940ac;
    --primary-dark:#5c2987;
    --accent:#246e7b;
    --accent-green:#246e70;
    --text-primary:#292235;
    --text-secondary:#62576e;
    --text-muted:#74667f;
}
.nav-logo img.brand-logo,.footer-wordmark img.brand-logo,.footer-brand img.brand-logo,.brand-logo {
    display:block;width:210px;max-width:100%;height:auto;max-height:none;object-fit:contain;
}
.auth-header img.brand-logo {width:220px;height:auto;max-height:none;margin:0 auto 30px;}
.logo img.brand-logo {width:220px;height:auto;margin:0 auto;}
.page-brand {display:flex;justify-content:center;padding:30px 20px 5px;position:relative;z-index:1;}
.gradient-text {background-image:linear-gradient(110deg,#7438a4 5%,#a13977 48%,#246e7b 95%);}
.section-description,.hero-description,.feature-card p,.step-content p,.auth-header p,.auth-footer,.pricing-features li {color:#62576e;}
.popular .pricing-features li {color:#eee3f5;}
.pricing-card.popular .pricing-header h3{color:#fff;}
.pricing-card.popular .pricing-features strong{color:#f2cbe9;}
.pricing-card .pricing-features li{font-size:12px;}
.pricing-period,.pricing-amount .period {color:#74667f;}
.popular .pricing-period,.popular .period {color:#d8c8e3;}
.feature-tag {color:#6e4f82;background:#f0e8f6;}
.trust-label,.trust-logo {color:#72627e;}
.brand-wordmark small,.scene-caption,.directory-panel small {color:#74627f;}
.directory-panel a span,.footer-links a,.footer-brand p {color:#6c5b78;}
.auth-container .back-link {color:#65318e;background:#ffffffd9;border:1px solid #e2d3ed;border-radius:50px;padding:10px 16px;}
.auth-card .auth-btn,.auth-card .modal-btn {background:#7438a4;color:white;box-shadow:none;}
.auth-card .auth-btn:hover,.auth-card .modal-btn:hover {background:#5c2987;box-shadow:0 5px 18px #7438a425;}
.auth-card input::placeholder {color:#7b7184;opacity:1;}
.auth-card .input-wrapper i {color:#796886;}
.auth-card .form-group input:focus {border-color:#7940ac;box-shadow:0 0 0 3px #9960ce18;}
@media(max-width:600px){.nav-logo img.brand-logo{width:165px}.auth-header img.brand-logo{width:205px}.footer-brand img.brand-logo{width:195px}}

/* A single shared baseline for links and the native Explore disclosure. */
.features-grid{max-width:none;}
.hero-stats{padding:20px 24px;}
@media(max-width:800px){.hero-stats{display:flex;flex-direction:row;justify-content:space-between;gap:12px;padding:18px 20px;}.hero-stats .stat-divider{width:1px;height:28px;}.hero-stats .stat-item{min-width:0;}.step-card{text-align:left;}}
.toolkit-extras{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-block:1px solid #e8deee;margin-top:35px;padding:28px 0;}
.extended-toolkit{padding:0 0 90px;position:relative;}
.groups-callout{display:flex;align-items:center;gap:35px;justify-content:space-between;margin-top:26px;padding:30px;border:1px solid #e1d4eb;border-radius:22px;background:linear-gradient(110deg,#f1e8f9,#edf8f6);}
.groups-callout .section-badge{margin-bottom:12px;font-size:8px;}
.groups-callout h3{font-size:22px;margin-bottom:12px;}
.groups-callout p{font-size:13px;color:#62576e;line-height:1.8;max-width:750px;}
.groups-callout>i{font-size:35px;color:#7940ac;}
@media(max-width:600px){.groups-callout{padding:24px;}.groups-callout>i{display:none;}.extended-toolkit{padding-bottom:60px;}}
.toolkit-extras>div{display:grid;grid-template-columns:25px 1fr;gap:7px 10px;align-content:start;}
.toolkit-extras i{color:#7940ac;font-size:18px;grid-row:span 2;margin-top:3px;}
.toolkit-extras strong{font-size:13px;font-weight:600;color:#292235;}
.toolkit-extras span{font-size:12px;color:#62576e;line-height:1.8;}
.capability-note{color:#74667f;font-size:12px;line-height:1.8;max-width:850px;margin-top:23px;}
.toolkit-docs{margin-top:20px;}
.annual-option{font-size:10px;color:#74667f;margin-top:9px;line-height:1.7;}
.popular .annual-option{color:#d8c8e3;}
.pricing-explainer{margin-top:25px;border:1px solid #e5d9ed;border-radius:18px;padding:24px;background:#fff;display:flex;justify-content:space-between;gap:25px;align-items:center;}
.pricing-explainer h3{font-size:16px;margin-bottom:8px;}.pricing-explainer p{font-size:12px;line-height:1.8;color:#62576e;max-width:720px;}.addon-price{font-size:27px;font-weight:700;color:#7438a4;white-space:nowrap;}.addon-price small{font-size:11px;font-weight:400;}
@media(max-width:600px){.pricing-explainer{flex-direction:column;align-items:flex-start;}}
.steps-container{grid-template-columns:repeat(4,minmax(0,1fr));}
@media(max-width:1000px){.steps-container{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:800px){.steps-container{grid-template-columns:1fr;}.toolkit-extras{grid-template-columns:1fr;gap:22px;}}
.navbar .container {gap:20px;min-height:48px;}
.navbar .nav-logo {flex-shrink:0;}
.navbar .nav-links {
    align-items:center;flex-wrap:nowrap;gap:4px;
    padding:4px;border:1px solid #e9e0ef;border-radius:50px;
    background:#ffffffb3;box-shadow:0 2px 8px #49345503;
}
.navbar .nav-links > a,
.navbar .nav-directory > summary {
    display:inline-flex;align-items:center;justify-content:center;
    height:38px;padding:0 15px;margin:0;white-space:nowrap;
    border-radius:50px;font-size:12px;font-weight:600;
    line-height:1;color:#665573;text-decoration:none;
    transition:background .18s,color .18s;
}
.navbar .nav-directory {display:block;flex-shrink:0;}
.navbar .nav-directory > summary {gap:7px;cursor:pointer;list-style:none;}
.navbar .nav-directory > summary::-webkit-details-marker {display:none;}
.navbar .nav-directory > summary > span {font-size:13px;line-height:1;transition:transform .18s;}
.navbar .nav-links > a:hover,
.navbar .nav-directory > summary:hover {background:#f2eaf8;color:#663190;}
.navbar .nav-directory[open] > summary {background:#ede1f6;color:#663190;}
.navbar .nav-directory[open] > summary > span {transform:rotate(180deg);}
.navbar .nav-links > a:focus-visible,
.navbar .nav-directory > summary:focus-visible {outline:2px solid #7940ac;outline-offset:2px;}
.navbar .directory-panel {top:calc(100% + 15px);right:-12px;}
.navbar .nav-actions {flex-shrink:0;}
@media(min-width:969px) and (max-width:1100px){
    .navbar .container{gap:12px;padding-inline:24px;}
    .navbar .nav-logo img.brand-logo{width:180px;}
    .navbar .nav-links > a,.navbar .nav-directory > summary{padding-inline:11px;font-size:11px;}
    .navbar .nav-actions .btn{padding:11px 14px;font-size:11px;}
}
@media(prefers-reduced-motion:reduce){.navbar .nav-links > a,.navbar .nav-directory > summary,.navbar .nav-directory > summary > span{transition:none;}}
