/*────────────────────────────────────────────────────────────────────────────── DESIGN TOKENS & PALETTE ──────────────────────────────────────────────────────────────────────────────*/ :root { --nav-bg: #000000; --dark-odd: #191919; --dark-even: #232323; --page-max-narrow: 70rem; --page-max-wide: 96rem; --gutter: 2rem; --accent: #46c290; --text-light: #e8e8e8; --text-muted: #b6b6b6; --text-lighter: #e0e0e0; } /* define your nav height once */ :root { --nav-height-desktop: 4rem; --nav-height-mobile: 3rem; } /* apply the larger of the two as the default scroll offset */ html { scroll-padding-top: var(--nav-height-desktop); } /* when on mobile, use the smaller nav height */ @media (max-width: 600px) { html { scroll-padding-top: var(--nav-height-mobile); } } /*────────────────────────────────────────────────────────────────────────────── RESET & BASE TYPOGRAPHY ──────────────────────────────────────────────────────────────────────────────*/ html { box-sizing: border-box; font-size: 100%; } *, *::before, *::after { box-sizing: inherit; margin: 0; padding: 0; } body { font-family: system-ui, sans-serif; font-size: 1rem; line-height: 1.6; background: var(--dark-even); color: var(--text-light); } a, a:visited { color: #fff; text-decoration: none; } /*────────────────────────────────────────────────────────────────────────────── NAVIGATION ──────────────────────────────────────────────────────────────────────────────*/ .main-nav { display: flex; justify-content: space-between; align-items: center; background: var(--nav-bg); padding: .75rem var(--gutter); position: sticky; top: 0; z-index: 1000; } .edge-link, .nav-link { color: var(--text-light); display: inline-block; padding: .75rem 1.5rem; border-radius: .25rem; text-transform: uppercase; font-size: .9rem; transition: background .2s ease, color .2s ease; } .edge-link:hover, .nav-link:hover { background: #2a2a2a; color: #ffffff; } .center-nav { display: flex; align-items: center; gap: 3rem; } .logo img { height: 4rem; transition: height .3s ease; } /*────────────────────────────────────────────────────────────────────────────── SECTION STRIPES & SPACING ──────────────────────────────────────────────────────────────────────────────*/ section { width: 100%; padding-block: 5rem; } #hero { padding-top: 1.5rem; padding-bottom: 6rem; } .bg-odd { background: var(--dark-odd); } .bg-even { background: var(--dark-even); } /*────────────────────────────────────────────────────────────────────────────── WRAPPER & GUTTERS ──────────────────────────────────────────────────────────────────────────────*/ .wrapper { max-width: var(--page-max-narrow); margin-inline: auto; padding-inline: var(--gutter); text-align: left; } .wrapper--wide { max-width: var(--page-max-wide); } /*────────────────────────────────────────────────────────────────────────────── HEADINGS ──────────────────────────────────────────────────────────────────────────────*/ h1, h2, h3 { font-family: 'Open Sans', Arial, sans-serif; font-weight: 700; line-height: 1.1; } h1 { font-size: 2.4rem; margin-bottom: 1.2rem; } h2 { font-size: 2rem; margin-bottom: 1rem; } /* Center top‐level headings */ .wrapper h1, .wrapper h2.subhead { text-align: center; } /* Section headings */ .wrapper h2 { margin-bottom: 1rem; text-align: center; } #who-trusts h2, #price h2 { font-size: 2rem; margin-block: 2rem; } /*────────────────────────────────────────────────────────────────────────────── PRICING TABLE ──────────────────────────────────────────────────────────────────────────────*/ .account-table { border-collapse: collapse; margin: 2rem auto 1.2rem; } .account-table td { border: 2px solid #fff; padding: 1rem 2.2rem; text-align: right; color: #fff; background: transparent; font-size: 1.08rem; } /*────────────────────────────────────────────────────────────────────────────── HERO SPECIFICS & CTA ──────────────────────────────────────────────────────────────────────────────*/ #hero h1 { font-size: 2.5rem; margin-bottom: 1rem; } .subhead { font-size: 1.25rem; font-weight: 300; color: var(--text-lighter); margin-bottom: 2rem; } .coverage { font-size: .9rem; color: var(--text-muted); letter-spacing: .05em; margin: 2rem 0; text-align: center; } .hero-bullets { margin: 2rem auto; max-width: 40rem; text-align: center; } .hero-bullets ul { display: inline-block; list-style: disc inside; text-align: left; margin: 0; padding: 0; } .cta-buttons { display: flex; justify-content: center; gap: 3rem; margin-top: 3.5rem; } .button { display: inline-block; padding: 1rem 2.5rem; border: 2px solid var(--accent); border-radius: .35rem; color: white; text-decoration: none; font-weight: 500; transition: background .2s ease, color .2s ease, border-color .2s ease; } .button:hover { background: #2a2a2a !important; color: #ffffff !important; border-color: #ffffff !important; } /*────────────────────────────────────────────────────────────────────────────── LISTS & BLOCKQUOTES ──────────────────────────────────────────────────────────────────────────────*/ ul { list-style: disc inside; margin: 2rem 0; } ul li { white-space: nowrap; overflow-wrap: normal; font-size: 1.5rem; margin: .5rem 0; } .list-summary { text-align: center; margin-bottom: 2rem; color: var(--text-lighter); } blockquote { margin: 2rem auto; font-style: italic; color: var(--text-lighter); max-width: 60ch; } /*────────────────────────────────────────────────────────────────────────────── GALLERY GRID ──────────────────────────────────────────────────────────────────────────────*/ /*────────────────────────────────────────────────────────────────────────────── GALLERY GRID — DEFAULT (DESKTOP) ──────────────────────────────────────────────────────────────────────────────*/ .gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; margin: 2rem 0; } /*────────────────────────────────────────────────────────────────────────────── “FLATTEN” THE ROW WRAPPERS ON DESKTOP ──────────────────────────────────────────────────────────────────────────────*/ @media (min-width: 768px) { .gallery-row { /* display: contents makes the wrapper disappear from layout, so its children become the direct grid items again */ display: contents; } } /* LIGHTBOX ENLARGED IMAGES */ /* hidden by default */ #lightbox-overlay { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0,0,0,0.85); display: flex; align-items: center; justify-content: center; visibility: hidden; opacity: 0; transition: opacity .3s ease; z-index: 10000; } #lightbox-overlay.visible { visibility: visible; opacity: 1; } #lightbox-overlay img { max-width: 90%; max-height: 90%; box-shadow: 0 8px 24px rgba(0,0,0,0.6); border-radius: .5rem; } #lightbox-close { position: absolute; top: 1rem; right: 1rem; background: transparent; border: none; font-size: 2rem; color: #fff; cursor: pointer; } /*────────────────────────────────────────────────────────────────────────────── NICE & NEAT DESKTOP GALLERY (3×2) ──────────────────────────────────────────────────────────────────────────────*/ #works-with .gallery-grid { /* cap its width so it never blows out full‑screen */ max-width: 60rem; margin: 2rem auto; /* center it */ display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; } #works-with .gallery-item { text-align: center; padding: 1rem 0; /* give a little top/bottom breathing room */ } #works-with .gallery-item img { max-width: 80%; /* only 80% of the cell’s width */ height: auto; margin: 0 auto; /* center it in that cell */ display: block; } /*────────────────────────────────────────────────────────────────────────────── MOBILE GALLERY: 2 slides of 3 items each, swipe‑to‑see ──────────────────────────────────────────────────────────────────────────────*/ @media (max-width: 767px) { /* Turn the container into two stacked slides */ #works-with .gallery-grid { display: flex !important; flex-direction: column; gap: 2rem; } /* Each gallery-row becomes its own horizontal carousel */ #works-with .gallery-row { display: flex !important; flex-wrap: nowrap; gap: 1rem; overflow-x: auto; padding-bottom: 0.5rem; /* room for scrollbar */ scroll-snap-type: x mandatory; } /* hide native scrollbars */ #works-with .gallery-row::-webkit-scrollbar { display: none; } #works-with .gallery-row { -ms-overflow-style: none; scrollbar-width: none; } /* Ensure each item never shrinks below its content & snaps */ #works-with .gallery-item { flex: 0 0 auto; scroll-snap-align: start; text-align: center; } /* Each row is a horizontal swiper of 3 items */ #works-with .gallery-row { display: flex !important; overflow-x: auto; gap: 1rem; padding-bottom: .5rem; scroll-snap-type: x mandatory; } #works-with .gallery-row::-webkit-scrollbar { display: none; } #works-with .gallery-row { -ms-overflow-style: none; scrollbar-width: none; } /* Fix each item to 50% of the viewport */ #works-with .gallery-item { flex: 0 0 50vw; scroll-snap-align: start; } /* Now make the image fill that cell */ #works-with .gallery-item img { width: 100%; height: auto; display: block; margin: 0; } } /*────────────────────────────────────────────────────────────────────────────── PRICING CARDS ──────────────────────────────────────────────────────────────────────────────*/ .pricing-options { display: flex; gap: 2rem; justify-content: center; margin: 2rem 0; } .pricing-card { background: #1C2020; padding: 1.5rem; border-radius: .35rem; flex: 1; max-width: 14rem; } .pricing-card h3 { margin-bottom: .5rem; } /*────────────────────────────────────────────────────────────────────────────── FAQ ──────────────────────────────────────────────────────────────────────────────*/ .faq-item { margin: 1.5rem 0; } .faq-item strong { display: block; margin-bottom: .5rem; } /*────────────────────────────────────────────────────────────────────────────── QRCODES ──────────────────────────────────────────────────────────────────────────────*/ .ian-connect-row { display: flex; align-items: center; justify-content: center; gap: 1rem; max-width: 760px; margin: 1.2rem auto; padding: .2rem 1rem; min-height: 9rem; } .ian-photo, .ian-qrcode { width: 7.5rem; height: 7.5rem; object-fit: cover; border-radius: .5rem; background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.08); flex-shrink: 0; } .ian-qrcode { padding: .4rem; } .ian-connect-text { flex: 0 1 auto; font-size: 1.13rem; color: #fff; text-align: center; line-height: 1.4; word-break: break-word; } @media (max-width: 900px) { .ian-connect-row { max-width: 98vw; gap: 1rem; } .ian-photo, .ian-qrcode { width: 7rem; height: 7rem; } .ian-connect-text { font-size: 1rem; } } @media (max-width: 600px) { .ian-connect-row { flex-direction: column; gap: .7rem; padding: .5rem .3rem; min-height: 17rem; } .ian-photo, .ian-qrcode { width: 5rem; height: 5rem; } .ian-connect-text { margin: 0; padding: .3rem 0; } } /*────────────────────────────────────────────────────────────────────────────── TESTIMONIALS ──────────────────────────────────────────────────────────────────────────────*/ .testimonial-block { max-width: 38rem; margin: 3rem auto 0; padding: 0 1.2rem; display: flex; flex-direction: column; } .testimonial-quote { font-size: 1.12rem; font-style: italic; color: #e0e0e0; text-align: left; line-height: 1.5; } .testimonial-attribution { margin-top: .7rem; text-align: right; font-size: .98rem; color: #a0a0a0; } /*────────────────────────────────────────────────────────────────────────────── FLAGS ──────────────────────────────────────────────────────────────────────────────*/ .flag-strip { display: flex; flex-wrap: wrap; justify-content: center; gap: .5em; } .flag-strip .flag { width: 2.2em; height: 1.5em; object-fit: cover; border-radius: 2px; box-shadow: 0 1px 4px rgba(0,0,0,0.08); } @media (max-width: 600px) { .flag-strip .flag { width: 1.5em; height: 1em; } } /*────────────────────────────────────────────────────────────────────────────── NARROW CONTENT & NOTES ──────────────────────────────────────────────────────────────────────────────*/ .narrow-content, .note { max-width: 38rem; margin: 2.5rem auto 0; padding: 0 1rem; } .note { text-align: center; font-style: italic; color: #ccc; } /*────────────────────────────────────────────────────────────────────────────── NARROW LIST ──────────────────────────────────────────────────────────────────────────────*/ .narrow-list { max-width: 38rem; margin: 2rem auto 0; padding-left: 1.5rem; text-align: left; } .narrow-list li { margin-bottom: .5em; } /*────────────────────────────────────────────────────────────────────────────── FOOTER ──────────────────────────────────────────────────────────────────────────────*/ .site-footer { background: #181818; color: #bbb; font-size: 1rem; padding: 2rem 0 1rem; margin-top: 2rem; } .site-footer .wrapper { text-align: center; } .footer-flex { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: 2rem; max-width: 1200px; margin: 0 auto; padding: 0 1.5rem; } .footer-contact, .footer-social, .footer-links { min-width: 180px; font-size: 1rem; } .footer-social { text-align: center; } .footer-social a, .footer-links a { color: #bbb; text-decoration: none; margin: 0 .3em; transition: color .2s; } .footer-social a:hover, .footer-links a:hover { color: var(--accent); text-decoration: underline; } .footer-meta { text-align: center; font-size: .85rem; color: #888; line-height: 1.5; margin-top: 1.2rem; padding: 0 1rem; } @media (max-width: 700px) { .footer-flex { flex-direction: column; align-items: center; text-align: center; gap: 1rem; } .footer-links { text-align: center; margin-bottom: .5rem; } } /*────────────────────────────────────────────────────────────────────────────── 1) CENTER ALL H1s ──────────────────────────────────────────────────────────────────────────────*/ h1 { text-align: center; } /*────────────────────────────────────────────────────────────────────────────── 2) GLOBAL LINK STYLE: WHITE + UNDERLINED ──────────────────────────────────────────────────────────────────────────────*/ a, a:visited { color: #fff; /* never blue or purple */ text-decoration: underline; } /*────────────────────────────────────────────────────────────────────────────── 3) NAV LINKS: NO UNDERLINE ──────────────────────────────────────────────────────────────────────────────*/ .edge-link, .nav-link { text-decoration: none; } /*────────────────────────────────────────────────────────────────────────────── 4) TOP NAV: ONLY HOME & FAQ IN ACCENT (OTHERS STAY WHITE) ──────────────────────────────────────────────────────────────────────────────*/ /* first, ensure all nav‑links are white by default */ .main-nav .nav-link { color: #fff; } /* then mint‑green only on those with .home or .faq */ .main-nav .nav-link.home, .main-nav .nav-link.faq { color: var(--accent); } /*────────────────────────────────────────────────────────────────────────────── MOBILE‑ONLY NAV LAYOUT ──────────────────────────────────────────────────────────────────────────────*/ /* 1) hide it by default */ .mobile-nav { display: none; } /* 2) switch‑over at 600px */ @media (max-width: 600px) { /* hide the desktop nav links */ .main-nav .home, .main-nav .center-nav, .main-nav .faq { display: none; } /* show & style the mobile nav */ .mobile-nav { display: flex; align-items: center; padding: 0.75rem var(--gutter); background: var(--nav-bg); } /* logo stays far left */ .mobile-nav .logo img { height: 2.5rem; /* shrink for phone */ transition: none; } /* vertical list of links to the right */ .mobile-links { display: flex; flex-direction: column; margin-left: 1rem; } .mobile-links a { display: block; text-decoration: none; /* desktop‑style no underline */ color: var(--text-light); font-size: 1rem; /* all in rem */ margin: 0.25rem 0; } /* only Pricing mint green */ .mobile-links a.pricing { color: var(--accent); } /* if you still want underline on hover for links in the mobile menu: */ .mobile-links a:hover { text-decoration: underline; } .mobile-nav { position: sticky; top: 0; z-index: 1000; } } @media (max-width: 600px) { /* 1) Turn on space‑between so logo hugs left and links hug right */ .mobile-nav { display: flex; justify-content: space-between; align-items: center; /* drop the left gutter, keep a smaller right gutter */ padding: 0.75rem 1rem 0.75rem 0; background: var(--nav-bg); } /* 2) Let the logo grow a bit now that it isn’t padded in */ .mobile-nav .logo img { height: 3rem; /* was 2.5rem */ width: auto; /* preserve aspect */ } /* 3) Remove that old margin‑left, let flex do the sliding */ .mobile-links { display: flex; flex-direction: column; margin: 0; /* no manual offset */ } /* 4) Tweak font‐sizes (all already in rem) if needed */ .mobile-links a { font-size: 1rem; /* confirm your base size */ margin: 0.2rem 0; text-decoration: none; color: var(--text-light); white-space: nowrap; /* prevent these menu items from wrapping */ } .mobile-links a.pricing { color: var(--accent); } /* 5) (Optional) Prevent key headings or bullets from breaking mid‑phrase */ /* only prevent wrapping on the bullets */ .hero-bullets ul, .hero-bullets li { white-space: nowrap; overflow-wrap: normal; } /* allow the hero headline to wrap normally */ #hero h1 { white-space: normal; overflow-wrap: break-word; } } @media (max-width: 600px) { /* pull the nav bar up */ header.main-nav { /* remove any default top‑margin and shrink the padding */ margin-top: 0; padding-top: 0.2rem; /* was 0.75rem */ padding-bottom: 0.2rem; } /* if you’re still using .mobile-nav wrapper */ .mobile-nav { padding: 0.25rem 1rem 0.5rem 0; /* 0 left, small right gutter */ } } .cta-buttons { display: flex; flex-wrap: wrap; /* will stack on really narrow viewports */ justify-content: center; gap: 1rem; } /* Base button styles */ .cta-buttons .button { display: inline-block; padding: 1rem 2rem; /* nice big touch target */ min-width: 12rem; /* ensures both are the same baseline width */ text-align: center; white-space: nowrap; /* no wrapping */ border: 2px solid var(--accent); border-radius: .35rem; font-size: 1rem; /* already in rem */ font-weight: 600; transition: background .2s ease, color .2s ease, box-shadow .2s ease; } /* Primary (filled) */ .cta-buttons .button:first-child { background: var(--accent); color: var(--dark-even); } .cta-buttons .button:first-child:hover, .cta-buttons .button:first-child:focus { background: #3aa47a; /* slightly darker mint */ box-shadow: 0 4px 12px rgba(0,0,0,0.15); } /* Secondary (outline) */ .cta-buttons .button:last-child { background: transparent; color: var(--text-light); } .cta-buttons .button:last-child:hover, .cta-buttons .button:last-child:focus { background: rgba(70,194,144,0.1); color: var(--accent); } /* Keyboard‑focus rings */ .cta-buttons .button:focus { outline: 3px solid rgba(70,194,144,0.5); outline-offset: 2px; } .full-bleed-img img { width: 100%; height: auto; display: block; } /*────────────────────────────────────────────────────────────────────────────── UPGRADED TABLE STYLES ──────────────────────────────────────────────────────────────────────────────*/ .account-table { width: 100%; max-width: 800px; /* contain it on really wide screens */ margin: 2rem auto; border-spacing: 0; border-radius: .5rem; overflow: hidden; /* round the corners */ box-shadow: 0 4px 12px rgba(0,0,0,0.4); background: var(--dark-even); } /* Header stripe */ .account-table thead { background: var(--accent); } .account-table th { color: #fff; font-weight: 600; text-transform: uppercase; padding: 1rem; text-align: left; font-size: .9rem; } /* Body rows */ .account-table tbody tr { border-bottom: 1px solid rgba(255,255,255,0.1); } .account-table tbody tr:last-child { border-bottom: none; } /* Zebra stripes */ .account-table tbody tr:nth-child(even) { background: rgba(255,255,255,0.03); } /* Cells */ .account-table td { padding: 1rem; font-size: 1rem; color: var(--text-light); } .account-table .plan-name { /* left‑align descriptions */ text-align: left; } .account-table .plan-action { /* right‑align the action button */ text-align: right; } /* Hover highlight */ .account-table tbody tr:hover { background: rgba(70,194,144,0.1); } /* Make links look like your secondary button */ .account-table .plan-action .button { padding: .5rem 1rem; font-size: .9rem; } /* Optional: hide the header on small screens and turn rows into cards */ @media (max-width: 600px) { .account-table thead { display: none; } .account-table, .account-table tbody, .account-table tr, .account-table td { display: block; width: 100%; } .account-table tr { margin-bottom: 1.5rem; box-shadow: 0 2px 6px rgba(0,0,0,0.2); border-radius: .35rem; overflow: hidden; } .account-table td { /* label + value in stacked layout */ padding: .75rem 1rem; text-align: left; } .account-table td.plan-name { border-bottom: 1px solid rgba(255,255,255,0.1); } } /*────────────────────────────────────────────────────────────────────────────── Softer, striped TRY NOW table ──────────────────────────────────────────────────────────────────────────────*/ .account-table { width: 100%; max-width: 800px; margin: 2rem auto; border-collapse: separate; border-spacing: 0; border-radius: .5rem; overflow: hidden; box-shadow: 0 4px 12px rgba(0,0,0,0.4); background: var(--dark-even); } /* hide the THEAD completely */ .account-table thead { display: none; } /* zebra‑stripe the body rows */ .account-table tbody tr { transition: background .2s ease; } .account-table tbody tr:nth-child(odd) { background: rgba(255,255,255,0.03); } .account-table tbody tr:nth-child(even) { background: rgba(255,255,255,0.06); } /* remove all cell borders */ .account-table td { padding: 1.25rem 1rem; border: none; color: var(--text-light); font-size: 1rem; } /* left‑align the description, center the buttons */ .account-table td.plan-name { text-align: left; } .account-table td.plan-action { text-align: center; } .button:focus-visible { outline: 3px solid rgba(70,194,144,0.6); outline-offset: 2px; } .account-table tbody tr { transition: transform .2s ease, box-shadow .2s ease; } .account-table tbody tr:hover { transform: translateY(-2px); box-shadow: 0 8px 16px rgba(0,0,0,0.2); } /* BADGES */ .badge { display: inline-block; padding: .15rem .5rem; font-size: .75rem; border-radius: .25rem; background: rgba(70,194,144,0.1); color: var(--accent); margin-right: .5rem; } /* make your .button fill only its content, centered */ /* .account-table td.plan-action .button { display: inline-block; margin: 0 auto; } @media (min-width: 801px) { .account-table tbody { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1rem; } .account-table tr { display: flex; flex-direction: column; background: var(--dark-even); border-radius: .5rem; padding: 1rem; } .plan-action { margin-top: auto; align-self: center; } } */ /* subtle hover highlight on each row */ .account-table tbody tr:hover { background: rgba(70,194,144,0.12); } .button { position: relative; overflow: hidden; } .button::after { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: rgba(70,194,144,0.1); transition: left .3s ease; } .button:hover::after { left: 0; } h2 { font-size: clamp(1.75rem, 5vw, 2.5rem); } /*────────────────────────────────────────────────────────────────────────────── TRY NOW CARD ──────────────────────────────────────────────────────────────────────────────*/ .try-card { --card-accent: var(--accent); /* default accent; overridden by .accent-XXX */ position: relative; overflow: hidden; background: var(--dark-even); border-radius: .5rem; box-shadow: 0 12px 24px rgba(0,0,0,0.6), 0 4px 8px rgba(0,0,0,0.4); display: flex; flex-direction: column; } /* Accent stripe (double‐height) */ .try-card .card-header { height: .5rem; background: var(--card-accent); box-shadow: inset 0 -2px 4px rgba(0,0,0,0.4); transition: box-shadow .3s ease; } .try-card:hover .card-header { box-shadow: inset 0 -2px 8px rgba(255,255,255,0.3); } /* “Wash” shine on hover-in only */ .try-card::before { content: ""; position: absolute; top: 0; left: -150%; width: 50%; height: 100%; background: rgba(255,255,255,0.08); transform: skewX(-25deg); transition: none; pointer-events: none; } .try-card:hover::before { transition: left .7s ease; left: 150%; } /* Main body: image | text | button */ .try-card .card-inner { display: grid; grid-template-columns: 6rem 1fr auto; /* col1: img, col2: text, col3: action */ grid-template-rows: auto auto; /* row1: img+text, row2: button */ column-gap: 1rem; row-gap: .25rem; /* tighten between text & button */ padding: .75rem .5rem .5rem .75rem; /* top/right/bottom/left */ flex: 1; } /* Circular icon */ .try-card .card-inner img { grid-column: 1; grid-row: 1 / span 2; /* span both rows */ width: 6rem; height: 6rem; border-radius: 50%; object-fit: cover; justify-self: center; align-self: center; } /* Descriptive text, top-aligned, wrapping up to 5rem from the right */ .try-card .card-text { grid-column: 2 / span 2; grid-row: 1; align-self: start; margin: 0 5rem 0 0; /* top right bottom left */ color: var(--text-light); font-size: 1rem; line-height: 1.4; } /* Button container, bottom-right */ .try-card .card-action { grid-column: 3; grid-row: 2; justify-self: end; align-self: end; margin: 0; /* remove any extra wrapper margins */ } /* Outline button with light-grey label + accent border */ .button--outline { display: inline-block; padding: .4rem .8rem; font-size: .9rem; font-weight: 600; background: transparent; border: 2px solid var(--card-accent); border-radius: .35rem; color: var(--text-light) !important; transition: background .2s ease, color .2s ease; } .button--outline:hover, .button--outline:focus { background: var(--card-accent); color: #fff !important; } /* Accent-color variants */ .try-card.accent-green { --card-accent: var(--accent); } .try-card.accent-cyan { --card-accent: #39cccc; } .try-card.accent-gold { --card-accent: #d6a800; } .trynow-grid { max-width: 32rem !important; margin: 2rem auto !important; }