/* Landing-only styles: other public pages retain their existing presentation. */
.landingDailyShowcase { margin: 28px 0 10px; padding: 32px; border: 1px solid #f4b94235; border-radius: 16px; background: radial-gradient(ellipse at 0 0, #f4b9420b, transparent 55%), #101b2a; box-shadow: 0 24px 60px #0003; }
.landingShowcaseHeading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 28px; }
.landingShowcaseHeading h3 { font-size: 1.9rem; }
.shopperLanding .landingShowcaseHeading .landingKicker, .shopperLanding .landingDetailedWeek .landingKicker { margin-bottom: 8px; }
.landingExampleTag { flex-shrink: 0; border: 1px solid #ffffff20; border-radius: 20px; padding: 7px 11px; color: #aebfd2; font-size: .68rem; }
.landingDailyColumns { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; }
.landingDailyStory, .landingFullDay { min-width: 0; }
.landingWeatherExample { display: flex; gap: 12px; align-items: center; padding: 0 0 22px; }
.landingWeatherExample > span { color: #f4b942; font-size: 2.3rem; }
.landingWeatherExample strong { font-size: .93rem; }
.landingWeatherExample small { display: block; color: #a6b9cf; margin-top: 5px; font-size: .76rem; }
.landingProjection { display: flex; gap: 24px; margin-top: 20px; padding-top: 14px; border-top: 1px solid #ffffff16; }
.landingProjection b { color: #80e2a2; font-size: 1.5rem; }
.landingProjection small { color: #b6c5d6; font-size: .72rem; font-weight: 500; }
.landingFullBriefing { padding: 28px 0 0; }
.shopperLanding .landingFullBriefing .landingKicker { margin-bottom: 12px; }
.landingFullBriefing h4 { font-size: 1.65rem; line-height: 1.18; letter-spacing: -.025em; margin: 0 0 17px; }
.shopperLanding .landingFullBriefing > p:last-child { font-size: 1rem; line-height: 1.85; color: #dae4ef; margin: 0; }
.landingWatchFor { display: flex; gap: 12px; padding: 16px 18px; margin-top: 24px; border-left: 2px solid #f4b942; background: #f4b94209; }
.landingWatchFor > span { color: #f4b942; font-size: 1.5rem; }
.landingWatchFor p { margin: 0; font-size: .82rem; }
.landingWatchFor strong { display: block; color: #f4b942; margin-bottom: 5px; }
.landingDayTitle { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; padding: 12px 0 20px; }
.landingDayTitle h4 { margin: 0; font-size: 1rem; }.landingDayTitle > span { color: #a6b9cf; font-size: .75rem; white-space: nowrap; }
.landingFullDay .landingExpandedTimeline > div { grid-template-columns: 95px minmax(0, 1fr) 44px; padding: 21px 17px; min-height: 105px; gap: 12px; }
.landingBlockWeather { font-size: 1.55rem; text-align: center; align-self: center; }
.landingFullDay .landingBlockWeather small { display: block; color: #c7d2df; font-size: .78rem; font-weight: 700; white-space: nowrap; margin-top: 5px; }
.landingHeroOverview h2 { font-size: clamp(2rem, 4vw, 3rem); letter-spacing: -.04em; margin: 30px 0 16px; }
.landingHeroOverview > p, .landingHeroOverview li p { color: #b2bece; line-height: 1.6; }
.landingHeroOverview ul { list-style: none; padding: 0; margin: 28px 0; }
.landingHeroOverview li { display: flex; gap: 18px; padding: 18px 0; border-top: 1px solid #ffffff12; }
.landingHeroOverview li > span { color: #f4b942; font-weight: 800; }
.landingHeroOverview li p { margin: 6px 0 0; font-size: .9rem; }
#daily-preview-title, #full-day-preview { scroll-margin-top: 120px; }
.landingFullDay .landingExpandedTimeline .high { min-height: 142px; background: linear-gradient(90deg, #ff565614, transparent); }
.landingFullDay .landingExpandedTimeline .medium { min-height: 130px; background: linear-gradient(90deg, #ffac6012, transparent); }
.landingFullDay .landingExpandedTimeline .light { min-height: 145px; background: linear-gradient(90deg, #facc150d, transparent); }
.landingExpandedTimeline .sparse { color: #e0e8f1; }
.landingFullDay .landingExpandedTimeline time { font-size: .77rem; }
.landingFullDay .landingExpandedTimeline strong { font-size: .92rem; }
.landingFullDay .landingExpandedTimeline small { font-size: .78rem; line-height: 1.5; }
.landingExpandedTimeline b { display: block; margin-top: 14px; font-size: 1.24rem; }
.landingDailyShowcase > .landingPreviewCaption { max-width: 800px; margin: 26px auto 0; }
.landingWeeklySplit .landingFeatureCopy { grid-column: 1 / -1; max-width: 720px; }
.landingWeekPreview.landingDetailedWeek { grid-column: 1 / -1; width: 100%; padding-top: 30px; box-shadow: 0 24px 60px #0003; }
.landingDetailedWeek .landingWeekHeading { padding: 0 28px 24px; }
.landingDetailedWeek .landingWeekHeading strong { font-size: 1.65rem; }
.landingPreferencePreview { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 0 28px; }
.landingPreferencePreview > div { padding: 16px; background: #07101b; border: 1px solid #ffffff1c; border-radius: 8px; }
.landingPreferencePreview span { display: block; color: #b1c2d6; font-size: .75rem; margin-bottom: 10px; }
.landingPreferencePreview strong { font-size: 1.65rem; font-weight: 800; }.landingPreferencePreview small { font-size: .8rem; color: #a6b9cf; }
.shopperLanding .landingWeekHelp { margin: 16px 28px 24px; font-size: .8rem; }
.landingDetailedWeek .landingRateGrid { min-width: 740px; grid-template-columns: 62px repeat(7, 1fr); grid-template-rows: 48px repeat(10, 68px); font-size: .83rem; }
.landingRateGrid > span { align-content: center; gap: 4px; }
.landingRateGrid strong { font-size: .96rem; }.landingRateGrid strong small { font-size: .64rem; font-weight: 500; padding-left: 2px; }
.landingRateGrid em { font-size: .66rem; font-style: normal; color: #91efb0; }
.landingDetailedWeek .landingRateGrid .high { color: #ff8585; }.landingDetailedWeek .landingRateGrid .medium { color: #ffb269; }.landingDetailedWeek .landingRateGrid .light { color: #f4d968; }
.landingRateGrid > .focus { background: #14392f; }
.landingRateGrid > .focusStart { border-top: 2px solid #44bf79; border-radius: 8px 8px 0 0; }
.landingRateGrid > .focusEnd { border-bottom: 2px solid #44bf79; border-radius: 0 0 8px 8px; }
.landingRateGrid > time { position: sticky; left: 0; background: #0e1928; z-index: 1; }
.landingWeekLegend { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin: 20px 28px 0; color: #a6b9cf; font-size: .76rem; }
.landingWeekLegend i { display: inline-block; width: 12px; height: 12px; margin-right: 5px; background: #14392f; border: 1px solid #44bf79; vertical-align: middle; }
.landingHistoryIllustration { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; padding: 32px; border: 1px solid #ffffff1a; border-radius: 14px; background: linear-gradient(120deg, #182536, #0c1725); margin: 0 0 42px; }
.landingEarningsVisual, .landingStoreVisual { min-width: 0; }
.landingEarningsHeadline { display: flex; align-items: center; justify-content: space-between; gap: 20px; }.landingEarningsHeadline strong { font-size: 2.9rem; letter-spacing: -.04em; }.landingEarningsHeadline span { font-size: .76rem; color: #a6b9cf; line-height: 1.6; }
.landingEarningsVisual svg { display: block; width: 100%; height: auto; margin-top: 22px; }
.landingChartDays { display: flex; justify-content: space-between; font-size: .69rem; color: #a6b9cf; padding: 0 5px; }
.landingStoreVisual > div { margin-top: 23px; }.landingStoreVisual > div > span { display: flex; gap: 10px; align-items: baseline; font-size: .93rem; }.landingStoreVisual b { color: #839bb6; font-size: .72rem; }.landingStoreVisual strong { margin-left: auto; color: #e5cf98; }
.landingStoreVisual i { display: block; width: var(--store-share); height: 7px; border-radius: 3px; margin-top: 12px; background: linear-gradient(90deg, #d5a74e, #f4d693); }
.landingSignalVisual { background: radial-gradient(ellipse at 100% 0, #f4b94218, transparent 70%), #111f30; }
@media (max-width: 700px) {
  .landingDailyShowcase { padding: 22px 16px; }
  .landingShowcaseHeading { align-items: start; flex-direction: column; gap: 12px; }
  .landingDailyColumns, .landingHistoryIllustration { grid-template-columns: 1fr; gap: 25px; }
  .landingFullDay .landingExpandedTimeline > div { grid-template-columns: 70px minmax(0, 1fr) 40px; padding: 20px 10px; gap: 8px; }
  .landingDayTitle { flex-wrap: wrap; }
  .landingPreferencePreview { margin: 0 14px; gap: 7px; }
  .landingPreferencePreview > div { padding: 12px 8px; }.landingPreferencePreview span { font-size: .64rem; min-height: 26px; }
  .landingPreferencePreview strong { font-size: 1.18rem; }.landingPreferencePreview small { font-size: .65rem; }
  .landingDetailedWeek .landingWeekHeading { padding: 0 16px 20px; flex-direction: column; align-items: start; }
  .shopperLanding .landingWeekHelp { margin: 15px 16px 20px; }
  .landingWeekLegend { margin: 20px 16px 0; }.landingDetailedWeek > .landingPreviewCaption { padding: 0 16px; }
  .landingHistoryIllustration { padding: 24px 18px; }
}

/* Compact conversion-focused landing page. */
.landingSimple section { border-top: 1px solid #ffffff16; }
.landingSimple .simpleHero { border-top: 0; }
.simpleHero { display: grid; grid-template-columns: 1.08fr .92fr; gap: 80px; align-items: center; padding: 82px 0 76px; }
.simpleHero h1 { font-size: clamp(3.4rem, 6vw, 5.4rem); line-height: 1.02; letter-spacing: -.055em; margin: 0 0 28px; }
.simpleHero h1 em { color: #f4b942; font-style: normal; }
.simpleHero .landingLead { max-width: 600px; margin-bottom: 30px; }
.simpleTrust { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 24px; color: #aebfd1; font-size: .73rem; }
.simpleTrust span::before { content: '✓'; color: #f4b942; margin-right: 7px; }
.simpleAppPreview { min-width: 0; padding-left: 34px; border-left: 1px solid #f4b94255; }
.simpleAppBar, .simplePreviewHeading { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.simpleAppBar { padding-bottom: 22px; border-bottom: 1px solid #ffffff18; color: #f4b942; font-size: .76rem; font-weight: 800; }
.simpleAppBar .wordLogo { font-size: 1.25rem; }
.simplePlanDate { display: grid; gap: 8px; padding: 26px 0 18px; }
.simplePlanDate small, .simplePreviewHeading small { color: #8ea4bd; font-size: .67rem; letter-spacing: .08em; }
.simplePlanDate strong { font-size: 1.35rem; }
.simpleRecommendation { padding: 20px; margin-bottom: 8px; background: linear-gradient(110deg, #164033, #111f2c); border-left: 3px solid #4ade80; }
.simpleRecommendation span, .simpleRecommendation small { display: block; color: #b8ccca; font-size: .7rem; }
.simpleRecommendation strong { display: block; margin: 5px 0; font-size: 2rem; }
.simpleHour { display: grid; grid-template-columns: 82px 1fr auto; gap: 10px; align-items: center; padding: 17px 10px; border-bottom: 1px solid #ffffff12; border-left: 3px solid #ff6b6b; }
.simpleHour time { color: #adbed1; font-size: .7rem; }
.simpleHour span strong, .simpleHour span small { display: block; }
.simpleHour span strong { color: #ff8585; font-size: .8rem; }.simpleHour span small { color: #aebed0; font-size: .67rem; margin-top: 4px; }
.simpleHour > b { color: #ff8585; white-space: nowrap; }.simpleHour > b small { font-size: .58rem; }
.simpleAppPreview > p { font-size: .64rem; margin: 16px 0 0; }
.simpleValue, .simpleProduct, .simpleSteps { padding: 76px 0; }
.simpleValueGrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 46px; }
.simpleValueGrid article { padding-top: 20px; border-top: 1px solid #ffffff28; }
.simpleValueGrid span { color: #f4b942; font-size: .69rem; letter-spacing: .12em; }
.simpleValueGrid h3 { margin: 18px 0 10px; font-size: 1.35rem; }
.simpleValueGrid p { margin: 0; font-size: .88rem; }
.simpleProductGrid { display: grid; grid-template-columns: 1fr 1.2fr; gap: 28px 46px; align-items: stretch; }
.simpleProductGrid article { padding: 26px 0; border-top: 1px solid #ffffff25; }
.simplePreviewHeading > span { font-size: .85rem; font-weight: 800; color: #f4c76a; }
.simpleBigNumber { display: block; font-size: 2.8rem; margin: 26px 0 0; letter-spacing: -.04em; }
.simpleMetricLabel { font-size: .65rem; color: #91a5bc; letter-spacing: .1em; }
.simpleMetrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; margin: 25px 0; }
.simpleMetrics strong, .simpleMetrics small { display: block; }.simpleMetrics small { color: #91a5bc; font-size: .66rem; margin-top: 5px; }
.simpleStore { display: flex; justify-content: space-between; padding: 12px 0; border-top: 1px solid #ffffff12; font-size: .78rem; }
.simpleStore strong { color: #e9cf93; }
.simpleBriefPreview { grid-row: span 2; padding-left: 34px !important; border-left: 1px solid #ffffff20; }
.simpleBriefPreview h3 { font-size: clamp(1.8rem, 3vw, 2.45rem); margin: 35px 0 20px; }
.simpleBriefPreview > p { font-size: .98rem; line-height: 1.85; }
.simpleBriefPreview > div:last-child { display: flex; justify-content: space-between; margin-top: 32px; padding-top: 20px; border-top: 1px solid #ffffff18; font-size: .72rem; color: #9cb0c6; }
.simpleBriefPreview > div:last-child strong { color: #fff; font-size: 1.05rem; }
.simpleWeekDays { display: grid; grid-template-columns: repeat(5,1fr); margin: 25px 0 18px; }
.simpleWeekDays span { padding: 10px 5px; border-left: 1px solid #ffffff1a; color: #91a5bc; font-size: .62rem; }
.simpleWeekDays strong { display: block; color: #ecf2f9; margin-top: 8px; font-size: .75rem; }
.simpleWeekPreview p { margin: 0; font-size: .8rem; }
.simpleCenteredCta { display: flex; width: fit-content; margin: 42px auto 0; }
.simpleSteps { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; }
.simpleSteps ol { list-style: none; padding: 0; margin: 0; }
.simpleSteps li { display: grid; grid-template-columns: 55px 1fr; gap: 20px; padding: 22px 0; border-top: 1px solid #ffffff20; }
.simpleSteps li > span { color: #f4b942; font-size: .7rem; }
.simpleSteps h3 { margin: 0 0 7px; }.simpleSteps p { margin: 0; font-size: .86rem; }
.simpleFinal { text-align: center; padding: 72px 0; }
.simpleFinal h2 { max-width: 800px; margin: 0 auto 30px; }
.simpleFinal .primaryCta { display: flex; width: fit-content; margin: 0 auto; }
.simpleFinal > p:last-child { margin: 18px auto 0; font-size: .72rem; }
@media (max-width: 760px) {
  .simpleHero { grid-template-columns: 1fr; gap: 45px; padding: 52px 0; }
  .simpleHero h1 { font-size: clamp(2.8rem, 12vw, 4rem); line-height: 1.06; }
  .simpleTrust { display: grid; gap: 9px; }
  .simpleAppPreview { padding: 28px 0 0; border-left: 0; border-top: 1px solid #f4b94255; }
  .simpleValue, .simpleProduct, .simpleSteps { padding: 54px 0; }
  .simpleValueGrid, .simpleProductGrid, .simpleSteps { grid-template-columns: 1fr; gap: 28px; }
  .simpleBriefPreview { grid-row: auto; padding-left: 0 !important; border-left: 0; }
  .simpleWeekDays { overflow-x: auto; }
  .simpleSteps { gap: 10px; }
  .simpleFinal { padding: 52px 0; }
}
.shopperLanding { --landing-muted: #b6c5d6; }
.shopperLanding::before, .shopperLanding::after { display: none; }
body.shopperLanding { background: radial-gradient(ellipse at 85% 4%, #192a3d 0, transparent 32%), #09111d; }
.shopperLanding main, .shopperLanding .marketingNav { width: min(100%, 1200px); padding-left: 28px; padding-right: 28px; }
.shopperLanding .marketingNav { border-radius: 0; background: rgba(9,17,29,.94); backdrop-filter: blur(12px); border-bottom: 1px solid #ffffff10; min-height: 84px; }
.shopperLanding .wordLogo { font-size: clamp(1.3rem, 3vw, 2rem); }
.shopperLanding p { line-height: 1.65; color: var(--landing-muted); }
.shopperLanding h2 { font-size: clamp(2rem, 4.3vw, 3.6rem); line-height: 1.1; letter-spacing: -.035em; }
.shopperLanding h3 { line-height: 1.2; letter-spacing: -.025em; }
.shopperLanding a:focus-visible, .shopperLanding [tabindex]:focus-visible { outline: 3px solid #f4b942; outline-offset: 5px; }
.shopperLanding .primaryCta, .shopperLanding .secondaryCta { min-height: 52px; font-weight: 800; gap: 20px; border-radius: 9px; }
.shopperLanding .primaryCta:hover { background: #ffd273; }
.shopperLanding .secondaryCta:hover { background: #ffffff1c; }
.landingSkip { position: fixed; top: -100px; left: 15px; z-index: 100; padding: 15px; background: #f4b942; color: #09111d; }
.landingSkip:focus { top: 10px; }
.shopperHero { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: 64px; padding: 82px 0 88px; }
.shopperHeroCopy { min-width: 0; }
.shopperLanding .landingKicker { color: #f4b942; font-weight: 800; font-size: .73rem; text-transform: uppercase; letter-spacing: .13em; margin-bottom: 20px; }
.landingKicker > span { display: inline-block; width: 7px; height: 7px; background: #58d790; border-radius: 50%; margin-right: 6px; }
.shopperHero h1 { font-size: clamp(3.3rem, 6.5vw, 5.6rem); line-height: 1.01; letter-spacing: -.055em; margin: 0 0 26px; }
.shopperHero h1 em { color: #f4b942; font-style: normal; }
.shopperLanding .landingLead { font-size: 1.2rem; color: #e0e8f1; margin-bottom: 16px; }
.landingHeroDetail { font-size: .97rem; margin-bottom: 27px; }
.landingActions { display: flex; flex-wrap: wrap; gap: 12px; }
.landingActions a { padding: 14px 22px; }
.shopperLanding .landingFine { font-size: .78rem; margin: 16px 0 0; }
.landingAppPreview { border: 1px solid #ffffff20; border-radius: 18px; background: #0e1928; box-shadow: 0 30px 70px #0005; padding: 24px; transform: rotate(1deg); min-width: 0; }
.landingPreviewBrand, .landingPreviewDate, .landingWeekHeading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.landingPreviewBrand .wordLogo { font-size: 1.3rem; }
.landingPreviewBadge { color: #b6c5d6; font-size: .72rem; }
.landingPreviewTabs { display: grid; grid-template-columns: repeat(4, 1fr); text-align: center; background: #07101b; padding: 5px; gap: 4px; margin: 20px 0; border-radius: 8px; font-size: .7rem; color: #a3b5c9; font-weight: 800; }
.landingPreviewTabs span { padding: 12px 2px; }
.landingPreviewTabs .selected { background: #f4b942; color: #111827; border-radius: 5px; }
.landingPreviewDate { font-size: .76rem; color: #b6c5d6; margin-bottom: 17px; }
.landingPreviewDate > span:first-child { color: #fff; font-size: 1.08rem; font-weight: 800; }
.landingRecommendation { border-left: 4px solid #4ade80; padding: 17px 19px; background: linear-gradient(110deg, #153a32, #14232b); }
.landingRecommendation > span { font-size: .72rem; color: #c1d8d0; font-weight: 700; }
.landingRecommendation > strong { display: block; font-size: 2rem; margin-top: 5px; letter-spacing: -.03em; }
.landingRecommendation p { font-size: .78rem; margin: 5px 0 0; }
.landingBriefing { padding: 23px 0 19px; }
.shopperLanding .landingBriefing .landingKicker { font-size: .67rem; margin-bottom: 9px; }
.landingBriefing > p:last-child { font-size: .88rem; color: #dbe5ef; margin: 0; }
.landingTimeline { border: 1px solid #ffffff10; }
.landingTimeline > div { display: grid; grid-template-columns: 90px 1fr; align-items: center; border-left: 3px solid; padding: 13px 12px; background: #ffffff03; }
.landingTimeline > div + div { border-top: 1px solid #ffffff12; }
.landingTimeline time { color: #b6c5d6; font-size: .67rem; font-weight: 700; }
.landingTimeline strong { font-size: .79rem; }
.landingTimeline small { display: block; color: #b6c5d6; font-size: .7rem; margin-top: 4px; }
.landingTimeline .light { color: #facc15; }.landingTimeline .high { color: #ff7878; }.landingTimeline .medium { color: #ffad60; }
.shopperLanding .landingPreviewCaption { font-size: .68rem; color: #91a6c0; margin: 14px 0 0; text-align: center; }
.landingChoiceSection, .landingPlusSection, .landingStatsSection { padding: 68px 0; border-top: 1px solid #ffffff12; }
.landingSectionIntro { max-width: 700px; margin-bottom: 36px; }
.landingSectionIntro h2 { margin-bottom: 20px; }
.landingSectionIntro > p:last-child { margin-bottom: 0; max-width: 590px; }
.landingPlanGrid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.landingExportPlans { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.landingPrice { font-size: 2.3rem; font-weight: 800; color: #f8fafc; margin: 18px 0 8px; }
.landingPrice span { font-size: .9rem; color: #b6c5d6; }
.landingSavings { color: #f4b942; font-size: 1.15rem; }
#export-plans { scroll-margin-top: 100px; }
@media (max-width: 760px) { .landingExportPlans { grid-template-columns: 1fr; } }
.landingPlan { display: flex; flex-direction: column; padding: 32px; border: 1px solid #ffffff1c; border-radius: 12px; background: #101c2b; }
.landingPlanPlus { border-color: #f4b94270; background: linear-gradient(135deg, #29291f, #131e2b 70%); }
.landingPlanHeading h3 { font-size: 1.6rem; margin-bottom: 9px; }.landingPlanHeading h3 span { color: #f4b942; }
.landingPlanHeading > span { font-size: .72rem; color: #b6c5d6; text-transform: uppercase; letter-spacing: .06em; }
.landingPlanPitch { margin: 24px 0 0; }
.landingPlan ul, .landingFeatureCopy ul { list-style: none; padding: 0; margin: 20px 0 28px; }
.landingPlan li, .landingFeatureCopy li { position: relative; padding-left: 24px; line-height: 1.55; margin-bottom: 12px; color: #dce6f1; font-size: .92rem; }
.landingPlan li::before, .landingFeatureCopy li::before { content: '✓'; position: absolute; left: 0; color: #f4b942; }
.landingPlan a { margin-top: auto; }
.landingPlan small { margin-top: 13px; font-size: .72rem; color: #a5b5c7; line-height: 1.6; }
#giglogging-plus { scroll-margin-top: 100px; }
.landingFeatureSplit { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; padding: 30px 0; }
.landingStep { display: block; color: #f4b942; font-size: .72rem; font-weight: 800; letter-spacing: .12em; margin-bottom: 20px; }
.landingFeatureCopy h3 { font-size: clamp(1.8rem, 3vw, 2.6rem); margin-bottom: 20px; }
.landingFeatureCopy p { font-size: .98rem; }
.landingInsightVisual { padding: 34px; background: #111f30; border-radius: 12px; border: 1px solid #ffffff15; }
.landingInsightVisual h4 { font-size: 1.65rem; letter-spacing: -.025em; margin: 0 0 26px; }.landingInsightVisual h4 em { font-style: normal; color: #f4b942; }
.landingInsightVisual > div { display: grid; gap: 6px; padding: 16px 0; border-top: 1px solid #ffffff15; }
.landingInsightVisual span { color: #9eb1c8; font-size: .76rem; }.landingInsightVisual strong { font-size: 1.02rem; }
.landingInsightVisual > p:last-child { margin: 22px 0 0; font-size: .8rem; }
.landingWeeklySplit { padding-top: 56px; }
.landingWeekPreview { min-width: 0; border: 1px solid #ffffff1c; border-radius: 12px; background: #0e1928; overflow: hidden; padding: 22px 0 18px; }
.landingWeekHeading { padding: 0 20px 22px; }.landingWeekHeading span { font-size: .67rem; color: #b6c5d6; }
.landingWeekScroll { overflow-x: auto; scrollbar-color: #51657b #0e1928; }
.landingWeekGrid { display: grid; min-width: 440px; grid-template-columns: 48px repeat(7, 1fr); grid-template-rows: 36px repeat(4, 60px); font-size: .66rem; }
.landingWeekGrid > * { display: grid; place-items: center; border-bottom: 1px solid #ffffff10; border-right: 1px solid #ffffff09; }
.landingWeekGrid time, .landingWeekCorner { color: #9eb1c8; }.landingWeekGrid b { color: #c7d6e7; }
.landingWeekGrid .focus { background: #154536; color: #91efb0; border-left: 2px solid #44bf79; border-right: 2px solid #44bf79; font-weight: 800; }
.landingWeekGrid .off { background: #ffffff02; color: #98a7bb; font-size: .6rem; }
.landingBenefitGrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 34px; }
.landingBenefitGrid article > span { display: inline-grid; place-items: center; width: 42px; height: 42px; color: #f4b942; font-size: 1.5rem; background: #f4b94210; margin-bottom: 20px; border-radius: 9px; }
.landingBenefitGrid h3 { font-size: 1.23rem; margin-bottom: 13px; }.landingBenefitGrid p { font-size: .95rem; margin: 0; }
.landingConnectionSection { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; padding: 48px; margin: 20px 0 70px; background: #111e2d; border-radius: 14px; }
.landingConnectionSection h2 { font-size: clamp(1.9rem, 3.2vw, 2.5rem); margin-bottom: 22px; }
.landingConnectionSection p { font-size: .93rem; }.landingConnectionNotes article + article { margin-top: 25px; }.landingConnectionNotes h3 { font-size: 1rem; margin-bottom: 8px; }.landingConnectionNotes p { font-size: .84rem; margin: 0; }
.landingFinalCta { text-align: center; padding: 30px 0 60px; }.landingFinalCta h2 { margin-bottom: 28px; }.landingFinalCta a { width: fit-content; margin: 0 auto; padding: 16px 30px; }.landingFinalCta > p:last-child { font-size: .84rem; margin-top: 18px; }
.shopperLanding .landingDisclaimer { text-align: center; max-width: 740px; margin: 0 auto 30px; font-size: .72rem; color: #96a7bc; }
.landingFinalCta > p a { display: inline; padding: 0; color: #f4b942; }
@media (max-width: 900px) {
  .shopperHero { gap: 32px; }.landingFeatureSplit { gap: 30px; }.landingPlan { padding: 24px; }.landingConnectionSection { padding: 28px; gap: 30px; }
}
@media (max-width: 700px) {
  .shopperLanding main, .shopperLanding .marketingNav { padding-left: 20px; padding-right: 20px; }
  .shopperLanding .marketingNav { min-height: 72px; }.shopperLanding .marketingNav .wordLogo { font-size: 1.3rem; }
  .shopperLanding .landingAuthNav a { min-width: 0; padding: 9px 12px; font-size: .75rem; }
  .shopperHero { grid-template-columns: 1fr; padding: 45px 0 50px; gap: 35px; }
  .shopperHero h1 { font-size: clamp(3.35rem, 12vw, 4.8rem); }.shopperLanding .landingLead { font-size: 1.1rem; }
  .landingActions { display: grid; grid-template-columns: 1fr; }.landingAppPreview { transform: none; padding: 19px; }
  .landingChoiceSection, .landingPlusSection, .landingStatsSection { padding: 48px 0; }
  .landingPlanGrid, .landingFeatureSplit, .landingConnectionSection { grid-template-columns: 1fr; }
  .landingPlan { padding: 25px; }.landingFeatureSplit { padding: 20px 0; gap: 22px; }.landingWeeklySplit { padding-top: 42px; }
  .landingBenefitGrid { grid-template-columns: 1fr; gap: 30px; }.landingBenefitGrid article > span { margin-bottom: 12px; }
  .landingInsightVisual { padding: 25px; }.landingConnectionSection { padding: 25px; margin-bottom: 45px; }
  .landingFinalCta h2 { font-size: 2rem; }.landingPreviewDate { font-size: .69rem; }
}
@media (max-width: 360px) {
  .shopperLanding .marketingNav { padding-left: 12px; padding-right: 12px; gap: 6px; }
  .shopperLanding .marketingNav .wordLogo { font-size: 1.02rem; }
  .shopperLanding .landingAuthNav { gap: 5px; }
  .shopperLanding .landingAuthNav a { padding: 9px; font-size: .68rem; }
}

/* Open-region landing presentation. Product examples retain their own visual language. */
body.shopperLanding { background: radial-gradient(ellipse at 90% 0, #20314880, transparent 28%), #09111d; }
.shopperLanding main, .shopperLanding .marketingNav { width: min(100%, 1240px); }
.shopperLanding .marketingNav { min-height: 76px; }
.shopperLanding .landingAuthNav a { border-radius: 6px; box-shadow: none; }
.shopperLanding .primaryCta, .shopperLanding .secondaryCta { border-radius: 6px; box-shadow: none; font-weight: 700; }
.shopperLanding .secondaryCta { background: transparent; }
.shopperLanding .landingFine a, .landingTextLink { color: #f4c76a; text-decoration: underline; text-underline-offset: 4px; }
.shopperLanding .landingKicker { font-weight: 700; letter-spacing: .14em; }
.shopperHero { grid-template-columns: 1.12fr 1fr; gap: 76px; padding: 92px 0 64px; }
.shopperHero h1 { font-size: clamp(3.3rem, 5.8vw, 5.1rem); line-height: 1.07; letter-spacing: -.05em; }
.shopperLanding .landingLead { max-width: 510px; margin-bottom: 30px; line-height: 1.75; font-size: 1.16rem; }
.landingHeroPlan { min-width: 0; padding: 28px 0 16px 32px; border-left: 1px solid #f4b94242; }
.landingHeroPlan .landingPreviewBrand { margin-bottom: 34px; }
.landingHeroPlan .landingKicker { margin: 0 0 12px; }
.landingHeroPlan h2 { font-size: clamp(1.7rem, 2.8vw, 2.5rem); margin: 0 0 12px; }
.landingHeroPlan > p { font-size: .9rem; }
.landingHeroHours { padding: 24px 0; }
.landingHeroHours > strong { display: block; font-size: 2.5rem; letter-spacing: -.04em; }
.landingHeroHours > span { display: block; margin-top: 6px; color: #b6c5d6; font-size: .78rem; }
.landingHeroWindows > div { display: grid; grid-template-columns: 86px 1fr auto; gap: 12px; padding: 19px 0; border-top: 1px solid #ffffff18; align-items: center; }
.landingHeroWindows time { font-size: .72rem; color: #b6c5d6; }
.landingHeroWindows strong { font-size: .88rem; }
.landingHeroWindows span small { display: block; color: #ff9696; font-size: .72rem; margin-top: 5px; }
.landingHeroWindows > div:last-child span small { color: #f1d777; }
.landingHeroWindows b { color: #ff9696; font-size: 1.2rem; white-space: nowrap; }
.landingHeroWindows b small { font-size: .62rem; }
.landingHeroWindows > div:last-child b { color: #f1d777; }
.landingTrust { display: flex; gap: 18px 36px; flex-wrap: wrap; padding: 26px 0; border-block: 1px solid #ffffff18; }
.landingTrust > span { color: #e2e8ef; font-size: .85rem; }
.landingTrust > span::before { content: '✓'; color: #f4c76a; margin-right: 10px; }
.landingTrust p { width: 100%; font-size: .78rem; margin: 0; }
.landingQuestions, .landingHow { padding: 88px 0; }
.landingQuestionGrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 44px; padding: 0; margin: 0; list-style: none; }
.landingQuestionGrid article, .landingQuestionGrid li { padding-top: 22px; border-top: 1px solid #ffffff26; }
.landingQuestionGrid span { color: #f4c76a; font-size: .73rem; letter-spacing: .1em; }
.landingQuestionGrid h3 { font-size: 1.45rem; max-width: 290px; margin: 22px 0 14px; }
.landingQuestionGrid p { font-size: .94rem; margin: 0; }
.landingChoiceSection, .landingPlusSection, .landingStatsSection { padding: 88px 0; }
.landingSectionIntro { max-width: 760px; margin-bottom: 42px; }
.landingExportPlans { gap: 0; border-block: 1px solid #ffffff22; }
.landingPlan { border: 0; border-radius: 0; padding: 30px; background: transparent; }
.landingPlan + .landingPlan { border-left: 1px solid #ffffff22; }
.landingPlanPlus { background: linear-gradient(155deg, #f4b94212, transparent 75%); box-shadow: inset 0 3px #f4b942; }
.landingPlan h3 { font-size: 1.55rem; margin: 0; }
.shopperLanding .landingPlanEyebrow { font-size: .73rem; color: #c0cedd; margin: 0 0 22px; text-transform: uppercase; letter-spacing: .12em; }
.shopperLanding .landingPlanPlus .landingPlanEyebrow { color: #f4c76a; }
.shopperLanding .landingPrice { color: #f8fbff; font-size: clamp(2.25rem, 3.3vw, 2.85rem); line-height: 1.2; letter-spacing: -.04em; margin: 24px 0 12px; }
.landingPrice span { display: block; font-size: .85rem; font-weight: 500; letter-spacing: 0; margin-top: 8px; }
.landingPlan:first-child .landingPrice { padding-bottom: 25px; }
.landingPlanBilling { font-size: .86rem; min-height: 48px; }
.landingPlanBilling strong { color: #e5ecf5; font-weight: 600; }
.landingPlan ul { margin: 20px 0 30px; }
.landingPlan li { font-size: .86rem; }
.landingPlan li small { display: block; margin-top: 4px; color: #f4c76a; }
.landingPlan a { font-size: .88rem; padding-inline: 12px; text-align: center; }
.shopperLanding .landingPricingNotice { border-left: 2px solid #f4b94266; padding-left: 12px; margin: 0 0 24px; }
.landingExportStory { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; padding-top: 52px; }
.landingExportStory h3 { font-size: 2rem; margin: 0; }
.landingExportStory p { margin-top: 0; }
.landingDailyShowcase { border: 0; border-radius: 0; background: transparent; box-shadow: none; padding: 0; margin-top: 0; }
.landingDailyColumns { grid-template-columns: 1fr; }
.landingDailyStory { display: grid; grid-template-columns: .8fr 1.2fr; gap: 24px 52px; align-items: start; }
.landingWeatherExample { grid-column: 1; padding-bottom: 0; }
.landingRecommendation { grid-column: 1; padding: 24px; }
.landingFullBriefing { grid-column: 2; grid-row: 1 / span 3; padding: 0 0 0 30px; border-left: 1px solid #ffffff1c; }
.shopperLanding .landingFullBriefing > p:last-child { font-size: .98rem; line-height: 1.85; }
.landingWatchFor { grid-column: 1; margin: 0; padding: 0; border: 0; background: transparent; }
.landingExampleTag { border-radius: 3px; }
.landingPreviewDisclosure { border: 0; border-block: 1px solid #ffffff22; border-radius: 0; background: transparent; width: 100%; }
.landingPreviewDisclosure > summary { cursor: pointer; padding: 23px 0; color: #f1ca76; font-weight: 650; font-size: 1rem; }
.landingPreviewDisclosure > summary > span { float: right; margin-right: 8px; }
.landingPreviewDisclosure > summary:focus-visible { outline: 3px solid #f4b942; outline-offset: 4px; }
.landingPreviewDisclosure[open] > summary { margin-bottom: 22px; }
.landingFullDay .landingExpandedTimeline > div { min-height: 100px; grid-template-columns: 110px minmax(0,1fr) 50px; }
.landingFullDay .landingExpandedTimeline .high, .landingFullDay .landingExpandedTimeline .medium, .landingFullDay .landingExpandedTimeline .light { min-height: 100px; }
.landingFullDay .landingExpandedTimeline { margin-bottom: 28px; }
.landingWeekPreview.landingDetailedWeek { padding: 0; box-shadow: none; border-radius: 0; background: transparent; }
.landingWeeklySplit { gap: 20px; }
.landingWeeklySplit .landingFeatureCopy { display: grid; grid-template-columns: 1fr auto; max-width: none; column-gap: 50px; align-items: center; }
.landingWeeklySplit .landingFeatureCopy .landingStep, .landingWeeklySplit .landingFeatureCopy h3, .landingWeeklySplit .landingFeatureCopy p { grid-column: 1; }
.landingWeeklySplit .landingFeatureCopy a { grid-column: 2; grid-row: 2 / 4; }
.landingPreferencePreview > div { background: transparent; border: 0; border-radius: 0; border-left: 1px solid #ffffff25; }
.landingDetailedWeek .landingRateGrid { grid-template-rows: 48px repeat(10, 52px); }
.landingDetailedWeek > .landingPreviewCaption { margin-bottom: 22px; }
.landingHistoryIllustration { border: 0; border-radius: 0; padding: 18px 0; background: transparent; gap: 80px; }
.landingStoreVisual { border-left: 1px solid #ffffff22; padding-left: 38px; }
.landingBenefitGrid article > span { background: none; padding: 0; width: auto; height: auto; }
.landingBenefitGrid h3 { font-size: 1.15rem; }
.landingHow { border-top: 1px solid #ffffff18; }
.landingHow > a { margin-top: 36px; }
.landingConnectionSection { background: transparent; border-radius: 0; border-top: 1px solid #ffffff18; padding: 64px 0; margin: 0; }
.landingFinalCta { padding: 65px 0; border-top: 1px solid #ffffff18; }
@media (max-width: 900px) {
  .shopperHero { gap: 34px; }
  .landingHeroPlan { padding-left: 22px; }
  .landingPlan { padding: 26px 20px; }
  .landingQuestionGrid { gap: 28px; }
  .landingDailyStory { gap: 24px 30px; }
}
@media (max-width: 760px) {
  .landingPlan + .landingPlan { border-left: 0; border-top: 1px solid #ffffff22; }
  .landingPlan { padding: 30px 24px; }
  .landingPlan:first-child .landingPrice { padding-bottom: 0; }
  .landingPlanBilling { min-height: 0; }
}
@media (max-width: 700px) {
  .shopperLanding .marketingNav { min-height: 68px; }
  .shopperHero { grid-template-columns: 1fr; padding: 54px 0 36px; gap: 42px; }
  .shopperHero h1 { font-size: clamp(2.75rem, 10vw, 4rem); line-height: 1.09; }
  .shopperLanding .landingLead { font-size: 1.06rem; line-height: 1.75; }
  .landingHeroPlan { border-left: 0; border-top: 1px solid #f4b94242; padding: 28px 0 0; }
  .landingHeroPlan .landingPreviewBrand { margin-bottom: 28px; }
  .landingHeroPlan h2 { font-size: 1.8rem; }
  .landingHeroWindows > div { grid-template-columns: 75px 1fr auto; gap: 8px; }
  .landingHeroWindows strong { font-size: .8rem; }
  .landingHeroWindows b { font-size: 1.05rem; }
  .landingTrust { gap: 14px; flex-direction: column; }
  .landingQuestions, .landingHow, .landingChoiceSection, .landingPlusSection, .landingStatsSection { padding: 58px 0; }
  .landingQuestionGrid, .landingExportStory { grid-template-columns: 1fr; gap: 28px; }
  .landingQuestionGrid h3 { max-width: none; margin-top: 14px; }
  .landingExportStory { padding-top: 36px; gap: 22px; }
  .landingDailyStory { grid-template-columns: 1fr; gap: 24px; }
  .landingFullBriefing { grid-column: 1; grid-row: auto; border: 0; padding: 12px 0 0; }
  .landingWatchFor { grid-column: 1; }
  .landingFullDay .landingExpandedTimeline > div { grid-template-columns: 66px minmax(0,1fr) 38px; padding: 20px 8px; gap: 8px; }
  .landingFullDay .landingExpandedTimeline strong { font-size: .85rem; }
  .landingPreviewDisclosure > summary { font-size: .94rem; }
  .landingWeeklySplit .landingFeatureCopy { display: block; }
  .landingWeeklySplit .landingFeatureCopy a { margin-top: 12px; }
  .landingHistoryIllustration { padding: 0; gap: 32px; }
  .landingStoreVisual { border-left: 0; border-top: 1px solid #ffffff22; padding: 26px 0 0; }
  .landingConnectionSection { padding: 48px 0; }
  .landingFinalCta { padding: 48px 0; }
}
