/* Approved product palette: primary #8F0606, shade #4A0000, light #C20D0D. */
.brand-home { --brand-red:#8f0606; --brand-dark:#4a0000; --brand-glow:#c20d0d; --brand-title:#ffe8ae; --brand-line:#f6c653; background:#faf7f2; }
.brand-home .site-header,.brand-home .site-header.scrolled,.brand-home .site-header.menu-open { background:rgba(96,5,3,.97); border-bottom:1px solid #f6c65330; }
.brand-home .brand strong,.brand-home .brand small { color:#ffe8ae; }
.brand-home .trusted-hero { padding:115px 0 30px; background:radial-gradient(ellipse at 76% 52%,#c20d0d 0,transparent 49%),linear-gradient(110deg,#660202,#8f0606 52%); }
.brand-home .trusted-hero::before { content:none; display:none; }
.brand-home .trusted-hero-grid { padding:28px 0; min-height:435px; display:flex; align-items:center; }
.brand-home .trusted-hero-copy { width:56%; }
.brand-home .trusted-hero-copy h1 { font-size:clamp(42px,5.6vw,78px); line-height:.99; letter-spacing:-.035em; text-wrap:initial; margin:0 0 22px; }
.brand-home .trusted-hero-copy h1 > span,.brand-home .trusted-hero-copy h1 em { color:#ffe8ae; -webkit-text-fill-color:#ffe8ae; }
.brand-home .trusted-hero-copy h1 > span { display:block; max-width:9.8ch; }
.brand-home .trusted-hero-copy h1 br { display:none; }
.brand-home .trusted-hero-copy h1 em { display:block; font-size:.65em; line-height:1.15; margin-top:9px; font-style:normal; }
.brand-home .trusted-hero-copy > p { font-size:20px; color:#fff; line-height:1.5; margin:0 0 26px; }
.brand-home .trusted-hero-copy .eyebrow { display:none; }
.brand-home .trusted-hero-visual { inset:86px 2% 0 auto; width:48%; height:calc(100% - 86px); -webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 60px),transparent); mask-image:linear-gradient(to bottom,#000 calc(100% - 60px),transparent); }
.brand-home .trusted-hero-visual::after { display:none; }
.brand-home .cms-hero-image { position:static; width:100%; height:100%; object-fit:cover; object-position:center top; }
.brand-home .hero-store-actions { --download-height:60px; --download-radius:8px; display:grid; grid-template-columns:repeat(2,max-content); align-items:center; gap:12px 16px; width:100%; max-width:450px; margin:0; }
.brand-home .hero-apk-download { position:relative; isolation:isolate; overflow:hidden; min-width:0; width:calc(var(--download-height) * 3.357143); height:var(--download-height); min-height:var(--download-height); padding:10px 12px; border-radius:var(--download-radius); font-size:17px; gap:8px; line-height:1.2; }
.brand-home .hero-apk-download::before { content:""; display:block; position:absolute; pointer-events:none; z-index:0; inset:-40% auto -40% -32%; width:28%; background:linear-gradient(90deg,transparent,#fff9df99,transparent); filter:none; opacity:0; transform:translateX(0) skewX(-22deg); animation:heroApkSheen 4.8s ease-in-out infinite; }
@keyframes heroApkSheen { 0%,58% { transform:translateX(0) skewX(-22deg); opacity:0; } 64% { opacity:.8; } 84% { transform:translateX(500%) skewX(-22deg); opacity:.8; } 88%,100% { transform:translateX(500%) skewX(-22deg); opacity:0; } }
.brand-home .button-gold,.brand-home .button-cream { background:linear-gradient(#ffe8ae,#f6c653); border-color:#ffe8ae; color:#4a0000; }
.brand-home .hero-apk-download { background:linear-gradient(180deg,#ffe99c,#f4bb36 55%,#e49a12); border:2px solid #fff0a8; color:#24101d; box-shadow:0 0 0 3px #a7690b8c,0 12px 26px #f2bd5533; }
.brand-home .hero-apk-download:hover { background:linear-gradient(180deg,#fff0b5,#f8c64b 55%,#eaa21b); box-shadow:0 0 0 3px #a7690b94,0 16px 34px #f2bd554a; }
/* The official 646x250 badge includes 41px transparent padding on every side.
   Align its visible 564x168 outline, without stretching or changing the artwork. */
.brand-home .hero-google-download { display:block; position:relative; min-width:0; width:calc(var(--download-height) * 3.357143); height:var(--download-height); overflow:hidden; border-radius:var(--download-radius); background:#000; line-height:0; }
.brand-home .hero-google-download::after { content:""; position:absolute; inset:0; border:1px solid #b4b4b4; border-radius:inherit; pointer-events:none; }
.brand-home .hero-google-download img { display:block; position:absolute; max-width:none; width:calc(var(--download-height) * 3.845238); height:calc(var(--download-height) * 1.488095); left:calc(var(--download-height) * -.244048); top:calc(var(--download-height) * -.244048); }
.brand-home .hero-google-download:hover { filter:brightness(1.12); }
.brand-home .hero-free-link { grid-column:1 / -1; justify-self:start; padding:5px 0; color:#ffe8ae; font-size:14px; font-weight:650; text-decoration:underline; text-underline-offset:4px; }
.brand-home .hero-free-link:hover { color:#fff; }
.brand-home .trusted-download-meta { font-weight:400; color:#fff; margin-top:12px; }
.brand-home .trusted-download-meta span:not(:last-child) { display:none; }
.brand-home .hero-practice-link { font-size:11px; color:#ffe8ae; margin-top:9px; }
.brand-benefits { background:#8f0606; border-block:1px solid #f6c65340; }
.brand-benefit-grid { display:grid; grid-template-columns:repeat(3,1fr); padding-block:24px; }
.brand-benefit-grid a { display:flex; gap:20px; padding:0 30px; align-items:center; color:white; text-decoration:none; border-right:1px solid #f6c65360; }
.brand-benefit-grid a:first-child { padding-left:0; }
.brand-benefit-grid a:last-child { border-right:0; }
.brand-benefit-grid svg { width:44px; height:44px; flex-shrink:0; fill:none; stroke:#f6c653; stroke-width:1.8; stroke-linejoin:round; stroke-linecap:round; }
.brand-benefit-grid strong { display:block; font-size:19px; line-height:1.25; }
.brand-benefit-grid small { display:block; font-size:14px; line-height:1.5; margin-top:5px; }
.brand-benefit-grid b { display:none; }
.brand-benefit-grid a:hover strong { color:#ffe8ae; }
.brand-home .home-rules { padding:36px 0; background:#faf7f2; }
.brand-home .home-rules .section-heading { display:block; text-align:center; margin-bottom:24px; }
.brand-home .home-rules .section-heading h2 { font-size:32px; color:#780606; }
.brand-home .home-rules .section-heading .kicker { display:none; }
.brand-home .home-rules .section-heading p { font-size:14px; margin:10px auto 0; max-width:none; }
.brand-home .rule-flow { gap:20px; }
.brand-home .home-rules .rule-card { padding:25px 22px 25px 100px; min-height:128px; position:relative; border:0; border-radius:12px; background:white; }
.brand-home .home-rules .rule-card > span { position:absolute; top:28px; left:22px; width:56px; height:56px; border-radius:50%; background:#ffe8ae; color:#690303; display:grid; place-items:center; font-size:24px; font-weight:800; }
.brand-home .rule-suit { display:none; }
.brand-home .home-rules .rule-card h3 { color:#780606; font-size:22px; margin:0 0 6px; }
.brand-home .home-rules .rule-card p { font-size:14px; line-height:1.5; margin:0; }
.brand-home .home-rules .section-link { display:block; width:max-content; margin:18px auto 0; font-size:13px; }
.brand-home .final-cta { padding:30px 0; background:linear-gradient(105deg,#8f0606,#a50808); }
.brand-home .final-cta h2 { color:#ffe8ae; font-size:34px; }
.brand-home .final-cta .kicker { color:#fff; font-size:10px; }
.brand-home .final-cta .button { min-height:54px; }
.brand-home .home-faq { padding:42px 0; }
.brand-home .home-faq .faq-grid { gap:30px; }
.brand-home .home-faq .faq-heading h2 { font-size:29px; color:#780606; }
/* Quiet wine-red surfaces and champagne accents, subordinate to the hero red. */
.brand-home .faq-browser { color:#f7ede6; background:linear-gradient(110deg,#701e22,#561216); border-color:#d8b77b55; box-shadow:0 12px 30px #46151a14; }
.brand-home .faq-browser-head strong { color:#f7e7c4; }
.brand-home .faq-browser-head .kicker { color:#d9b87e; }
.brand-home .faq-browser .faq-search { background:#fffaf1; border-color:#e5cfaa; }
.brand-home .faq-browser .faq-search svg { stroke:#8f0606; }
.brand-home .faq-browser .faq-search input { color:#4a0000; }
.brand-home .faq-browser .faq-search input::placeholder { color:#78635a; opacity:1; }
.brand-home .faq-browser .faq-search:focus-within { background:#fffaf1; border-color:#d9b87e; box-shadow:0 0 0 3px #e5cfaa26; }
.brand-home .faq-browser .faq-category-button { color:#f7ede6; background:#ffffff08; border-color:#e0bd7d44; }
.brand-home .faq-browser .faq-category-button:hover { color:#fffaf1; background:#ffffff14; border-color:#e0bd7d99; }
.brand-home .faq-browser .faq-category-count { color:#f7ede6; background:#ffffff12; }
.brand-home .faq-browser .faq-category-button[aria-pressed="true"] { color:#4a171a; background:linear-gradient(#f7e7c4,#dfbf79); border-color:#e5cfaa; }
.brand-home .faq-browser .faq-category-button[aria-pressed="true"] .faq-category-count { color:#4a0000; background:#4a000014; }
.brand-home .faq-browser .faq-category-button:focus-visible { outline-color:#ffe8ae; }
.brand-home .quick-table { border-color:#c8a36566; box-shadow:0 16px 40px #35121426; }
.brand-home .quick-table-bar { color:#f7ede6; background:linear-gradient(110deg,#60171a,#722125); border-color:#d8b77b55; }
.brand-home .quick-table-footer { color:#e4cdc3; background:#561417; border-color:#d8b77b44; }
.brand-home .quick-table-brand strong { color:#f7e7c4; }
.brand-home .quick-table-brand small { color:#e4cdc3; border-color:#d8b77b55; }
.brand-home .quick-turn-steps span { color:#ead7cf; background:#ffffff05; border-color:#e0bd7d33; }
.brand-home .quick-turn-steps span.done { color:#eed8ad; background:#ffffff08; border-color:#e0bd7d66; }
.brand-home .quick-turn-steps span.active { color:#4a171a; background:#eddbb2; border-color:#dfbf79; }
.brand-home .quick-table-footer a { color:#eed8ad; }
.brand-home .quick-table-footer a:hover { color:#fff; }
.brand-home .quick-table-footer a:focus-visible { outline-color:#ffe8ae; }
.brand-home .features,.brand-home .download-guide { background:#f5eee4; }
.brand-home .feature-card { display:flex; flex-direction:column; min-width:0; height:auto; }
.brand-home .feature-card .card-tag { position:static; inset:auto; display:block; margin-top:auto; padding-top:18px; }
.brand-home .community-section { background:#8f0606; }
.brand-home .community-board { background:#660303; }
.brand-home .community-form input,.brand-home .community-form textarea { color:#fff6df; caret-color:#ffe8ae; }
.brand-home .community-form input::placeholder,.brand-home .community-form textarea::placeholder { color:#f4d9bd; opacity:1; }
.brand-home .site-footer { background:#690202; }
@media(max-width:1000px) and (min-width:721px) {
 .brand-home .trusted-hero-copy { width:48%; }
 .brand-home .trusted-hero-copy > p { max-width:100%; font-size:17px; }
 .brand-home .hero-store-actions { --download-height:44px; column-gap:12px; }
 .brand-home .hero-apk-download { font-size:14px; padding:8px 6px; gap:6px; }
 .brand-benefit-grid a { gap:12px; padding-inline:16px; }
 .brand-benefit-grid strong { font-size:16px; }
 .brand-home .home-rules .rule-card { padding:20px; }
 .brand-home .home-rules .rule-card > span { position:static; margin-bottom:15px; }
}
@media(max-width:720px) {
 .brand-home .trusted-hero { padding:84px 0 22px; background:radial-gradient(ellipse at 50% 45%,#c20d0d,transparent 60%),#8f0606; }
 .brand-home .trusted-hero-grid { display:block; min-height:0; padding:0; }
 .brand-home .trusted-hero-copy { width:100%; }
 .brand-home .trusted-hero-copy h1 { font-size:clamp(30px,8.5vw,36px); line-height:1.03; margin:0 0 10px; }
 .brand-home .trusted-hero-copy h1 > span { margin:auto; max-width:12ch; }
 .brand-home .trusted-hero-copy h1 em { font-size:clamp(22px,6vw,26px); margin-top:5px; }
 .brand-home .trusted-hero-copy > p { font-size:14px; margin:0 auto; }
 .brand-home .hero-mobile-cards { height:clamp(136px,calc(100svh - 460px),236px); margin:12px -18px 8px; background:none; -webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 28px),transparent); mask-image:linear-gradient(to bottom,#000 calc(100% - 28px),transparent); }
 .brand-home .hero-mobile-cards .cms-mobile-hero-image { object-fit:contain; object-position:center top; width:100%; height:145%; }
 .brand-home .hero-mobile-cards::after { display:none; }
 .brand-home .hero-store-actions { --download-height:60px; position:relative; grid-template-columns:minmax(0,1fr); justify-items:center; max-width:340px; margin:0 auto; gap:8px; }
 .brand-home .hero-apk-download { font-size:16px; padding:10px 12px; gap:8px; }
 .brand-home .hero-free-link { justify-self:center; }
 .brand-home .hero-practice-link { font-size:10px; }
 .brand-benefit-grid { display:block; padding-block:8px; }
 .brand-benefit-grid a,.brand-benefit-grid a:first-child { border-right:0; border-bottom:1px solid #f6c65345; padding:16px 4px; gap:18px; }
 .brand-benefit-grid a:last-child { border-bottom:0; }
 .brand-benefit-grid svg { width:32px; height:32px; }
 .brand-benefit-grid strong { font-size:16px; }
 .brand-benefit-grid small { font-size:12px; margin-top:3px; }
 .brand-benefit-grid b { display:block; margin-left:auto; color:#ffe8ae; font-size:28px; }
 .brand-home .home-rules { padding:28px 0; }
 .brand-home .home-rules .section-heading h2 { font-size:26px; }
 .brand-home .rule-flow { display:grid; grid-template-columns:1fr; gap:12px; }
 .brand-home .home-rules .rule-card { min-height:98px; padding:20px 16px 20px 86px; }
 .brand-home .home-rules .rule-card > span { width:48px; height:48px; left:20px; top:24px; font-size:22px; }
 .brand-home .home-rules .rule-card h3 { font-size:19px; }
 .brand-home .final-cta { padding:28px 0; text-align:center; }
 .brand-home .final-cta-inner { display:flex; flex-direction:column; gap:20px; }
 .brand-home .final-cta h2 { font-size:28px; }
 .brand-home .final-cta .button { width:100%; }
 .brand-home .home-faq { padding:32px 0; }
}
@media(prefers-reduced-motion:reduce) {
 .brand-home .hero-apk-download::before { display:none; animation:none; }
}
