/*
Theme Name: Digiro
Theme URI: https://www.digiro.no/
Author: Digiro
Description: Lett og ryddig blokktema for Digiro – nettsider og IT uten stress.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: digiro
*/

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
a { text-underline-offset: 0.18em; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }

/* Header */
.digiro-header { border-bottom: 1px solid var(--wp--preset--color--line); background: var(--wp--preset--color--base); position: sticky; top: 0; z-index: 50; }
.digiro-header .wp-block-site-title a { text-decoration: none; }
.digiro-logo-dot { color: var(--wp--preset--color--accent); }
.digiro-header .wp-block-navigation a { text-decoration: none; }
.digiro-header .wp-block-navigation a:hover { text-decoration: underline; }
.digiro-header .digiro-nav-cta a { background: var(--wp--preset--color--accent); color: #fff !important; padding: 0.45em 1em; border-radius: 999px; }
.digiro-header .digiro-nav-cta a:hover { background: var(--wp--preset--color--ink); text-decoration: none !important; }

/* Sections */
.wp-block-group.digiro-section { padding-top: clamp(3rem, 7vw, 5.5rem); padding-bottom: clamp(3rem, 7vw, 5.5rem); }
.wp-block-group.digiro-section + .wp-block-group.digiro-section { margin-top: 0; }
.wp-block-post-content > .alignfull:first-child { margin-top: 0; }
.digiro-center { text-align: center; }
.wp-block-group.digiro-hero { background: linear-gradient(160deg, var(--wp--preset--color--mist) 0%, var(--wp--preset--color--base) 75%); padding-top: clamp(3.5rem, 9vw, 7rem); padding-bottom: clamp(3.5rem, 9vw, 7rem); }
.digiro-hero h1 { font-size: clamp(2.3rem, 5.5vw, 3.8rem); line-height: 1.08; letter-spacing: -0.02em; text-wrap: balance; }
.digiro-hero .digiro-lead { font-size: clamp(1.1rem, 2vw, 1.3rem); color: var(--wp--preset--color--muted); }
.digiro-kicker { text-transform: uppercase; letter-spacing: 0.12em; font-size: 0.8rem !important; font-weight: 700; color: var(--wp--preset--color--accent); }
.digiro-small { font-size: 0.9rem; color: var(--wp--preset--color--muted); }
.digiro-band { background: var(--wp--preset--color--ink); color: #e9eef5; }
.digiro-band h2, .digiro-band h3 { color: #fff; }
.digiro-band a { color: #9fe0d3; }
.digiro-soft { background: var(--wp--preset--color--sand); }

/* Cards and grids */
.digiro-grid { gap: 1.25rem !important; }
.digiro-card { background: var(--wp--preset--color--base); border: 1px solid var(--wp--preset--color--line); border-radius: 16px; padding: 1.6rem 1.5rem; height: 100%; box-sizing: border-box; }
.digiro-card h3 { margin-top: 0; font-size: 1.2rem; }
.digiro-card p { margin-bottom: 0; color: var(--wp--preset--color--muted); }
.digiro-soft .digiro-card { box-shadow: 0 1px 2px rgba(19,35,58,.04); }
.digiro-step-number { display: inline-flex; align-items: center; justify-content: center; width: 2.4rem; height: 2.4rem; border-radius: 50%; background: var(--wp--preset--color--accent); color: #fff; font-weight: 700; margin: 0 0 0.75rem !important; }

/* Prices */
.digiro-prices { gap: 1.25rem !important; align-items: stretch !important; }
.digiro-price-card { background: var(--wp--preset--color--base); border: 1px solid var(--wp--preset--color--line); border-radius: 18px; padding: 1.75rem 1.5rem; height: 100%; box-sizing: border-box; display: flex; flex-direction: column; }
.digiro-price-card.digiro-featured { border: 2px solid var(--wp--preset--color--accent); box-shadow: 0 10px 30px rgba(31,122,109,.12); }
.digiro-price-card h3 { margin: 0; font-size: 1.35rem; }
.digiro-price-card .digiro-for { margin-top: .25rem; color: var(--wp--preset--color--muted); font-size: .95rem; }
.digiro-price { font-size: 2.3rem !important; font-weight: 800; line-height: 1.1; margin: 1rem 0 0 !important; color: var(--wp--preset--color--ink); letter-spacing: -0.02em; }
.digiro-price span, .digiro-price .digiro-per { font-size: 1rem; font-weight: 500; color: var(--wp--preset--color--muted); letter-spacing: 0; }
.digiro-setup { font-size: .9rem; color: var(--wp--preset--color--muted); margin-top: .35rem !important; }
.digiro-price-card ul { padding-left: 0; list-style: none; margin: 1.25rem 0 0; }
.digiro-price-card li { padding: .4rem 0 .4rem 1.7rem; position: relative; border-top: 1px solid var(--wp--preset--color--line); font-size: .97rem; }
.digiro-price-card li::before { content: "✓"; position: absolute; left: .2rem; color: var(--wp--preset--color--accent); font-weight: 700; }

/* Check list */
.digiro-checks { list-style: none; padding-left: 0; }
.digiro-checks li { padding-left: 1.8rem; position: relative; margin-bottom: .7rem; }
.digiro-checks li::before { content: "✓"; position: absolute; left: 0; color: var(--wp--preset--color--accent); font-weight: 700; }

/* Contact */
.digiro-contact-box { background: var(--wp--preset--color--mist); border-radius: 18px; padding: 2rem; }
.digiro-email { font-size: clamp(1.4rem, 3vw, 2rem) !important; font-weight: 700; }
.digiro-email a { text-decoration: none; }

/* Footer */
.digiro-footer { background: var(--wp--preset--color--ink); color: #c9d3df; font-size: .95rem; }
.digiro-footer a { color: #fff; text-decoration: none; }
.digiro-footer a:hover { text-decoration: underline; }
.digiro-footer .wp-block-site-title a { color: #fff; }

@media (max-width: 781px) {
  .digiro-header { position: static; }
  .digiro-price { font-size: 2rem !important; }
}

/* Bottom breathing room when a page does not end with a full-width section */
.wp-block-post-content > :last-child:not(.alignfull) { margin-bottom: clamp(3rem, 7vw, 5rem); }
.wp-block-post-content > .digiro-lead:first-child { margin-top: 0.75rem; }
.digiro-lead { font-size: clamp(1.1rem, 2vw, 1.25rem); color: var(--wp--preset--color--muted); }

h1, h2, h3 { text-wrap: balance; }
.digiro-step-number { font-size: 1.1rem !important; line-height: 1 !important; }
.digiro-card p.digiro-step-number { color: #fff; }
.wp-block-group.digiro-section:not(.digiro-band):not(.digiro-hero) > :not(.alignwide):not(.alignfull) { max-width: var(--wp--style--global--wide-size); }
.wp-block-group.digiro-section > .has-text-align-center { margin-left: auto !important; margin-right: auto !important; }
