.tfn-wrap{--tfn-navy:#06283D;--tfn-green:#00A67D;--tfn-light:#F1FAF7;--tfn-border:#DCE8E5;max-width:1180px;margin:24px auto;font-family:inherit;color:var(--tfn-navy)}
.tfn-label{display:block;font-weight:700;font-size:16px;margin:0 0 8px}.tfn-search-row{display:flex;gap:10px}.tfn-input{flex:1;min-width:0;height:54px;border:1px solid #cbd9d5;border-radius:8px;padding:0 16px;font-size:17px;outline:none;background:#fff;color:#1c2a32;box-sizing:border-box}.tfn-input:focus{border-color:var(--tfn-green);box-shadow:0 0 0 3px rgba(0,166,125,.12)}
.tfn-button{height:54px;border:0;border-radius:8px;padding:0 24px;background:#00A67D !important;background-color:#00A67D !important;color:#fff !important;font-weight:700;font-size:16px;cursor:pointer;white-space:nowrap}.tfn-button:hover{filter:brightness(.95)}.tfn-button:disabled{opacity:.6;cursor:wait}
.tfn-status{min-height:22px;margin-top:12px;font-size:14px}.tfn-loading{color:#5b6b72}.tfn-results{margin-top:10px}.tfn-summary{padding:18px 20px;border-radius:10px;background:var(--tfn-light);border:1px solid var(--tfn-border);margin-bottom:18px}.tfn-summary strong{font-size:20px}.tfn-good{color:#087a5e}.tfn-warning{color:#9b5d00}
.tfn-section{margin:22px 0}.tfn-section h3{margin:0 0 10px;font-size:20px;color:var(--tfn-navy)}.tfn-result-list{display:grid;gap:10px}.tfn-result{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--tfn-border);border-radius:9px;background:#fff}.tfn-result-name{font-weight:700;font-size:16px}.tfn-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:5px;font-size:13px;color:#66747a}.tfn-badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700;background:#eef2f3;color:#405158}.tfn-badge-active{background:#e7f8f2;color:#087a5e}.tfn-score{font-weight:800;color:var(--tfn-green);font-size:14px}.tfn-notice{font-size:13px;line-height:1.5;color:#65737a;margin:18px 0 0}.tfn-source{font-size:12px;color:#889399;margin-top:18px}
@media(max-width:680px){.tfn-search-row{display:block}.tfn-input,.tfn-button{width:100%}.tfn-button{margin-top:10px}.tfn-result{grid-template-columns:1fr}.tfn-score{justify-self:start}}

.tfn-wrap .tfn-search-row .tfn-button, .tfn-wrap button.tfn-button{background:#00A67D !important;background-color:#00A67D !important;border-color:#00A67D !important;color:#fff !important;}
.tfn-wrap .tfn-search-row .tfn-button:hover, .tfn-wrap button.tfn-button:hover{background:#008F6B !important;background-color:#008F6B !important;border-color:#008F6B !important;color:#fff !important;}

.tfn-register-box{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:22px 0;padding:18px 20px;border:1px solid var(--tfn-border);border-radius:10px;background:#fff}.tfn-register-box strong{display:block;font-size:17px;color:var(--tfn-navy);margin-bottom:3px}.tfn-register-box span{display:block;font-size:13px;color:#65737a}.tfn-register-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:8px;background:#00A67D !important;color:#fff !important;text-decoration:none !important;font-weight:700;white-space:nowrap}.tfn-register-button:hover{background:#008F6B !important;color:#fff !important;text-decoration:none !important}@media(max-width:680px){.tfn-register-box{display:block}.tfn-register-button{width:100%;margin-top:14px;box-sizing:border-box}}

.tfn-tool-intro{margin-bottom:20px}.tfn-tool-intro h2{margin:0 0 6px;color:var(--tfn-navy);font-size:28px}.tfn-tool-intro p{margin:0;color:#65737a;line-height:1.6}.tfn-generator-form{padding:22px 24px;border:1px solid var(--tfn-border);border-radius:12px;background:var(--tfn-light)}.tfn-form-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:end}.tfn-field{display:flex;flex-direction:column;font-weight:700;font-size:14px;color:var(--tfn-navy);min-width:0}.tfn-field>span{display:block;margin:0 0 8px;line-height:1.35;min-height:19px}.tfn-field small{font-weight:400;color:#7d898e}.tfn-field .tfn-input{width:100%;height:54px}.tfn-select{appearance:none;-webkit-appearance:none;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,#50636b 50%),linear-gradient(135deg,#50636b 50%,transparent 50%);background-position:calc(100% - 20px) 23px,calc(100% - 15px) 23px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:42px}.tfn-generator-button{margin-top:16px}.tfn-suggestion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.tfn-suggestion-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px solid var(--tfn-border);border-radius:10px;background:#fff}.tfn-suggestion-card strong{display:block;font-size:17px;color:var(--tfn-navy)}.tfn-suggestion-card span{display:block;margin-top:4px;font-size:12px;color:#087a5e}.tfn-small-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border-radius:7px;background:#00A67D!important;color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:700;white-space:nowrap}.tfn-small-link:hover{background:#008F6B!important;color:#fff!important;text-decoration:none!important}.tfn-new-list{margin-top:16px}.tfn-new-result{grid-template-columns:1fr auto}@media(max-width:960px){.tfn-form-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr)}.tfn-suggestion-grid{grid-template-columns:1fr}}@media(max-width:680px){.tfn-generator-form{padding:18px}.tfn-form-grid{display:block}.tfn-field{margin-bottom:14px}.tfn-field>span{min-height:0}.tfn-generator-button{width:100%;margin-top:2px}.tfn-suggestion-card{display:block}.tfn-suggestion-card .tfn-small-link{width:100%;box-sizing:border-box;margin-top:12px}.tfn-new-result{grid-template-columns:1fr}.tfn-new-result .tfn-small-link{justify-self:start;margin-top:4px}}


/* v0.2.3: force the generator fields onto one aligned desktop row, even when theme CSS targets labels/selects. */
@media (min-width: 681px){
  .tfn-generator .tfn-form-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr) minmax(0,.85fr) !important;
    gap:18px !important;
    align-items:end !important;
  }
  .tfn-generator .tfn-form-grid > .tfn-field{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
    display:flex !important;
  }
  .tfn-generator .tfn-form-grid > .tfn-field:nth-child(1){grid-column:1 !important;grid-row:1 !important;}
  .tfn-generator .tfn-form-grid > .tfn-field:nth-child(2){grid-column:2 !important;grid-row:1 !important;}
  .tfn-generator .tfn-form-grid > .tfn-field:nth-child(3){grid-column:3 !important;grid-row:1 !important;}
  .tfn-generator .tfn-field > span{
    min-height:38px !important;
    display:flex !important;
    align-items:flex-end !important;
    margin:0 0 8px !important;
  }
  .tfn-generator .tfn-field .tfn-input,
  .tfn-generator .tfn-field select.tfn-input.tfn-select{
    width:100% !important;
    min-width:0 !important;
    height:54px !important;
    min-height:54px !important;
    max-height:54px !important;
    padding:0 16px !important;
    border:1px solid #cbd9d5 !important;
    border-radius:8px !important;
    background-color:#fff !important;
    font-size:17px !important;
    line-height:54px !important;
    box-sizing:border-box !important;
  }
  .tfn-generator .tfn-field select.tfn-input.tfn-select{
    appearance:none !important;
    -webkit-appearance:none !important;
    padding-right:42px !important;
    background-image:linear-gradient(45deg,transparent 50%,#50636b 50%),linear-gradient(135deg,#50636b 50%,transparent 50%) !important;
    background-position:calc(100% - 20px) 23px,calc(100% - 15px) 23px !important;
    background-size:5px 5px,5px 5px !important;
    background-repeat:no-repeat !important;
  }
}

/* v0.2.4: explicit named grid areas so theme/legacy nth-child rules cannot move the fields. */
@media (min-width: 681px){
  .tfn-generator form.tfn-generator-form .tfn-form-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr) minmax(0,.85fr) !important;
    grid-template-areas:"business keyword style" !important;
    column-gap:18px !important;
    row-gap:0 !important;
    align-items:end !important;
  }
  .tfn-generator form.tfn-generator-form .tfn-form-grid > .tfn-field-business{
    grid-area:business !important;
    grid-column:1 !important;
    grid-row:1 !important;
  }
  .tfn-generator form.tfn-generator-form .tfn-form-grid > .tfn-field-keyword{
    grid-area:keyword !important;
    grid-column:2 !important;
    grid-row:1 !important;
  }
  .tfn-generator form.tfn-generator-form .tfn-form-grid > .tfn-field-style{
    grid-area:style !important;
    grid-column:3 !important;
    grid-row:1 !important;
  }
  .tfn-generator form.tfn-generator-form .tfn-form-grid > label.tfn-field{
    align-self:end !important;
    width:100% !important;
    max-width:none !important;
  }
}

/* v0.2.5: domain checker under the registration CTA. */
.tfn-domain-box{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-10px 0 22px;padding:18px 20px;border:1px solid var(--tfn-border);border-radius:10px;background:var(--tfn-light)}
.tfn-domain-copy{min-width:0}.tfn-domain-copy strong{display:block;font-size:17px;color:var(--tfn-navy);margin-bottom:3px}.tfn-domain-copy span{display:block;font-size:13px;color:#65737a}
.tfn-domain-form{display:flex;gap:8px;align-items:center;min-width:420px;max-width:560px;flex:0 1 560px}.tfn-domain-input{height:48px;min-width:0;flex:1;border:1px solid #cbd9d5;border-radius:8px;padding:0 14px;background:#fff;color:#1c2a32;font-size:15px;box-sizing:border-box;outline:none}.tfn-domain-input:focus{border-color:var(--tfn-green);box-shadow:0 0 0 3px rgba(0,166,125,.12)}
.tfn-domain-button{height:48px!important;min-height:48px!important;border:0;border-radius:8px;padding:0 18px!important;background:#00A67D!important;color:#fff!important;font-weight:700;font-size:14px;line-height:1!important;cursor:pointer;white-space:nowrap;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;vertical-align:middle!important}.tfn-domain-button:hover{background:#008F6B!important;color:#fff!important}
@media(max-width:680px){.tfn-domain-box{display:block;margin-top:-8px}.tfn-domain-form{display:block;min-width:0;max-width:none;margin-top:14px}.tfn-domain-input,.tfn-domain-button{width:100%}.tfn-domain-button{margin-top:8px}}

/* v0.2.7: optical baseline correction for domain CTA label. */
.tfn-domain-button > span{display:block;transform:translateY(-1px);}

/* v0.2.9: homepage feature cards directly below the company-name checker. */
.tfn-home-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0 4px}
.tfn-feature-card{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;align-content:start;padding:20px;border:1px solid var(--tfn-border);border-radius:12px;background:#fff;color:var(--tfn-navy)!important;text-decoration:none!important;box-sizing:border-box;transition:border-color .18s ease,transform .18s ease}
.tfn-feature-card:hover{border-color:#b9d8d0;color:var(--tfn-navy)!important;text-decoration:none!important;transform:translateY(-1px)}
.tfn-feature-icon{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;background:#e7f8f2;color:var(--tfn-green)}
.tfn-feature-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tfn-feature-body{display:flex;flex-direction:column;min-width:0}.tfn-feature-body>strong{display:block;margin:2px 0 2px;font-size:18px;line-height:1.25;color:var(--tfn-navy)}
.tfn-feature-body>em{display:block;margin:0 0 13px;color:var(--tfn-green);font-size:13px;font-style:normal;font-weight:700}
.tfn-feature-body>span{display:block;padding-top:13px;border-top:1px solid #e6eeec;color:#65737a;font-size:13px;line-height:1.55}
.tfn-feature-body>b{display:block;margin-top:14px;color:var(--tfn-green);font-size:13px;font-weight:800}
@media(max-width:780px){.tfn-home-features{grid-template-columns:1fr}.tfn-feature-card{grid-template-columns:52px minmax(0,1fr);padding:17px}.tfn-feature-icon{width:52px;height:52px}}


/* v0.3.0: streamlined homepage feature cards; force three equal cards on desktop and keep Nye virksomheder last. */
@media (min-width: 821px){
  .tfn-wrap .tfn-home-features{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
    align-items:stretch !important;
    margin:22px 0 6px !important;
    width:100% !important;
  }
  .tfn-wrap .tfn-home-features > .tfn-feature-card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    min-height:0 !important;
    height:auto !important;
  }
  .tfn-wrap .tfn-home-features > .tfn-feature-card:nth-child(1){grid-column:1 !important;grid-row:1 !important;order:1 !important;}
  .tfn-wrap .tfn-home-features > .tfn-feature-card:nth-child(2){grid-column:2 !important;grid-row:1 !important;order:2 !important;}
  .tfn-wrap .tfn-home-features > .tfn-feature-card:nth-child(3){grid-column:3 !important;grid-row:1 !important;order:3 !important;}
}
.tfn-wrap .tfn-feature-card{
  grid-template-columns:46px minmax(0,1fr) !important;
  gap:12px !important;
  padding:17px !important;
  border-radius:10px !important;
}
.tfn-wrap .tfn-feature-icon{width:46px !important;height:46px !important;}
.tfn-wrap .tfn-feature-icon svg{width:24px !important;height:24px !important;}
.tfn-wrap .tfn-feature-body>strong{font-size:16px !important;margin:0 0 2px !important;}
.tfn-wrap .tfn-feature-body>em{font-size:12px !important;margin:0 0 10px !important;}
.tfn-wrap .tfn-feature-body>span{font-size:12px !important;line-height:1.45 !important;padding-top:10px !important;}
.tfn-wrap .tfn-feature-body>b{font-size:12px !important;margin-top:11px !important;}
@media (max-width:820px){
  .tfn-wrap .tfn-home-features{display:grid !important;grid-template-columns:1fr !important;gap:12px !important;}
  .tfn-wrap .tfn-home-features > .tfn-feature-card{width:100% !important;margin:0 !important;}
}

/* v0.3.1: rebuilt homepage cards for a compact, reliable 3-column layout. */
.tfn-wrap .tfn-home-features{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  justify-content:stretch !important;
  gap:18px !important;
  width:100% !important;
  max-width:none !important;
  margin:46px 0 10px !important;
  padding:0 !important;
  box-sizing:border-box !important;
}
.tfn-wrap .tfn-home-features > a.tfn-feature-card{
  flex:1 1 0 !important;
  width:0 !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:238px !important;
  margin:0 !important;
  padding:22px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:0 !important;
  border:1px solid #dce8e5 !important;
  border-radius:12px !important;
  background:#fff !important;
  box-sizing:border-box !important;
}
.tfn-wrap .tfn-feature-icon{
  flex:0 0 auto !important;
  width:44px !important;
  height:44px !important;
  margin:0 0 14px !important;
}
.tfn-wrap .tfn-feature-icon svg{width:23px !important;height:23px !important;}
.tfn-wrap .tfn-feature-body{
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  width:100% !important;
  min-width:0 !important;
}
.tfn-wrap .tfn-feature-body > strong{
  font-size:18px !important;
  line-height:1.25 !important;
  margin:0 0 2px !important;
}
.tfn-wrap .tfn-feature-body > em{
  font-size:13px !important;
  line-height:1.3 !important;
  margin:0 0 12px !important;
}
.tfn-wrap .tfn-feature-body > span{
  font-size:13px !important;
  line-height:1.5 !important;
  padding-top:12px !important;
  border-top:1px solid #e6eeec !important;
}
.tfn-wrap .tfn-feature-body > b{
  margin-top:auto !important;
  padding-top:16px !important;
  font-size:13px !important;
}
@media (max-width: 900px){
  .tfn-wrap .tfn-home-features{
    flex-wrap:wrap !important;
  }
  .tfn-wrap .tfn-home-features > a.tfn-feature-card{
    flex:1 1 calc(50% - 9px) !important;
    width:auto !important;
  }
  .tfn-wrap .tfn-home-features > a.tfn-feature-card:nth-child(3){
    flex-basis:100% !important;
  }
}
@media (max-width: 680px){
  .tfn-wrap .tfn-home-features{
    display:block !important;
    margin-top:34px !important;
  }
  .tfn-wrap .tfn-home-features > a.tfn-feature-card{
    width:100% !important;
    min-height:0 !important;
    margin:0 0 12px !important;
    padding:18px !important;
  }
}


/* v0.3.2: feature cards belong after search results and affiliate CTAs; lock visual order. */
.tfn-wrap .tfn-home-features > .tfn-feature-check{order:1 !important;}
.tfn-wrap .tfn-home-features > .tfn-feature-find{order:2 !important;}
.tfn-wrap .tfn-home-features > .tfn-feature-new{order:3 !important;}
.tfn-wrap .tfn-results:not(:empty) + .tfn-home-features{margin-top:46px !important;}


/* v0.3.3: align the complete TjekFirmanavn tool and feature cards with the site's 1180px content width. */
.tfn-wrap{width:100% !important;max-width:1180px !important;box-sizing:border-box !important;}
.tfn-wrap .tfn-home-features{width:100% !important;max-width:1180px !important;margin-left:auto !important;margin-right:auto !important;}


/* v0.3.4: make the homepage feature row follow the site's actual 1180px content width, independent of theme/container padding. */
.tfn-wrap .tfn-home-features{
  width:min(1180px, calc(100vw - 40px)) !important;
  max-width:1180px !important;
  position:relative !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
@media (max-width:680px){
  .tfn-wrap .tfn-home-features{
    width:calc(100vw - 28px) !important;
    max-width:none !important;
  }
}


/* v0.3.6: keep the complete plugin inside its original 1180px wrapper.
   Only make the feature row fill that wrapper; never use viewport breakout positioning. */
.tfn-wrap .tfn-home-features{
  width:100% !important;
  max-width:none !important;
  position:static !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  box-sizing:border-box !important;
}
@media (max-width:680px){
  .tfn-wrap .tfn-home-features{
    width:100% !important;
    max-width:none !important;
    left:auto !important;
    transform:none !important;
  }
}

/* v0.3.7: feature cards now live inside the same results container as the
   registration/domain boxes. They therefore use the exact same available width. */
.tfn-wrap .tfn-results > .tfn-home-features{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  gap:18px !important;
  width:100% !important;
  max-width:none !important;
  position:static !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
  margin:46px 0 10px !important;
  padding:0 !important;
  box-sizing:border-box !important;
}
.tfn-wrap .tfn-results > .tfn-home-features > a.tfn-feature-card{
  flex:1 1 0 !important;
  width:0 !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
@media(max-width:900px){
  .tfn-wrap .tfn-results > .tfn-home-features{flex-wrap:wrap !important;}
  .tfn-wrap .tfn-results > .tfn-home-features > a.tfn-feature-card{flex:1 1 calc(50% - 9px) !important;width:auto !important;}
  .tfn-wrap .tfn-results > .tfn-home-features > a.tfn-feature-card:nth-child(3){flex-basis:100% !important;}
}
@media(max-width:680px){
  .tfn-wrap .tfn-results > .tfn-home-features{display:block !important;margin-top:34px !important;}
  .tfn-wrap .tfn-results > .tfn-home-features > a.tfn-feature-card{width:100% !important;margin:0 0 12px !important;}
}

/* v0.3.8: mobile-only feature navigation appended to WordPress pages */
.tfn-mobile-feature-nav{display:none!important}
@media (max-width:780px){
  .tfn-mobile-feature-nav{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    width:100%!important;
    margin:34px 0 10px!important;
    padding:0!important;
    box-sizing:border-box!important;
  }
  .tfn-mobile-feature-card{
    display:grid!important;
    grid-template-columns:52px minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:17px!important;
    box-sizing:border-box!important;
    border:1px solid var(--tfn-border,#d6e7e2)!important;
    border-radius:12px!important;
    background:#fff!important;
    color:var(--tfn-navy,#06283D)!important;
    text-decoration:none!important;
  }
  .tfn-mobile-feature-icon{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:52px!important;
    height:52px!important;
    border-radius:50%!important;
    background:#e7f8f2!important;
    color:var(--tfn-green,#00A67D)!important;
  }
  .tfn-mobile-feature-icon svg{
    width:25px!important;
    height:25px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }
  .tfn-mobile-feature-body{display:flex!important;flex-direction:column!important;min-width:0!important}
  .tfn-mobile-feature-body>strong{margin:0 0 2px!important;font-size:17px!important;line-height:1.25!important;color:var(--tfn-navy,#06283D)!important}
  .tfn-mobile-feature-body>em{margin:0 0 10px!important;font-size:12px!important;line-height:1.3!important;font-style:normal!important;font-weight:700!important;color:var(--tfn-green,#00A67D)!important}
  .tfn-mobile-feature-body>span{padding-top:10px!important;border-top:1px solid #e6eeec!important;font-size:12px!important;line-height:1.5!important;color:#65737a!important}
  .tfn-mobile-feature-body>b{margin-top:11px!important;font-size:12px!important;font-weight:800!important;color:var(--tfn-green,#00A67D)!important}
}


/* v0.3.9: tighter mobile layout for the company-name generator. */
@media (max-width:680px){
  .tfn-generator .tfn-tool-intro{margin-bottom:14px!important}
  .tfn-generator .tfn-tool-intro h2{font-size:24px!important;margin-bottom:4px!important}
  .tfn-generator .tfn-tool-intro p{line-height:1.45!important}
  .tfn-generator form.tfn-generator-form{padding:14px!important}
  .tfn-generator .tfn-form-grid{display:block!important}
  .tfn-generator .tfn-form-grid > label.tfn-field{margin:0 0 9px!important;width:100%!important}
  .tfn-generator .tfn-form-grid > label.tfn-field:last-child{margin-bottom:0!important}
  .tfn-generator .tfn-field > span{margin:0 0 5px!important;min-height:0!important;line-height:1.25!important}
  .tfn-generator .tfn-field .tfn-input,
  .tfn-generator .tfn-field select.tfn-input.tfn-select{height:48px!important;min-height:48px!important;max-height:48px!important;font-size:16px!important;padding:0 14px!important;line-height:48px!important}
  .tfn-generator .tfn-field select.tfn-input.tfn-select{padding-right:40px!important;background-position:calc(100% - 19px) 20px,calc(100% - 14px) 20px!important}
  .tfn-generator .tfn-generator-button{height:48px!important;margin-top:10px!important}
}


/* v0.3.10: another 10px tighter on mobile for Find firmanavn. */
@media (max-width: 700px){
  .tfn-generator form.tfn-generator-form{padding:10px!important}
  .tfn-generator .tfn-form-grid > label.tfn-field{margin:0 0 4px!important}
  .tfn-generator .tfn-field > span{margin:0 0 3px!important}
  .tfn-generator .tfn-generator-button{margin-top:4px!important}
}
\n\n/* v0.3.14: robust generator spacing. Use div field groups so theme label styles cannot stretch the whole group. */\n.tfn-generator .tfn-form-grid > .tfn-field{\n  display:flex !important;\n  flex-direction:column !important;\n  justify-content:flex-start !important;\n  align-items:stretch !important;\n  height:auto !important;\n  min-height:0 !important;\n}\n.tfn-generator .tfn-field-title{\n  display:block !important;\n  width:auto !important;\n  height:auto !important;\n  min-height:0 !important;\n  max-height:none !important;\n  margin:0 0 7px !important;\n  padding:0 !important;\n  line-height:1.25 !important;\n  font-weight:700 !important;\n  font-size:14px !important;\n  color:var(--tfn-navy) !important;\n}\n.tfn-generator .tfn-field-title small{\n  font-weight:400 !important;\n  color:#7d898e !important;\n}\n@media (min-width:681px){\n  .tfn-generator form.tfn-generator-form .tfn-form-grid > .tfn-field{\n    margin:0 !important;\n    align-self:end !important;\n  }\n  .tfn-generator .tfn-field-title{margin-bottom:7px !important;}\n}\n@media (max-width:680px){\n  .tfn-generator form.tfn-generator-form{padding:14px !important;}\n  .tfn-generator .tfn-form-grid{display:block !important;}\n  .tfn-generator .tfn-form-grid > .tfn-field{\n    margin:0 0 16px !important;\n    padding:0 !important;\n  }\n  .tfn-generator .tfn-form-grid > .tfn-field:last-child{margin-bottom:0 !important;}\n  .tfn-generator .tfn-field-title{\n    margin:0 0 7px !important;\n    font-size:16px !important;\n    line-height:1.25 !important;\n  }\n  .tfn-generator .tfn-field .tfn-input,\n  .tfn-generator .tfn-field select.tfn-input.tfn-select{\n    margin:0 !important;\n  }\n  .tfn-generator .tfn-generator-button{margin-top:8px !important;}\n}\n
/* v0.3.15: pull each generator input closer to its heading on mobile and desktop. */
.tfn-generator form.tfn-generator-form .tfn-form-grid > .tfn-field {
  gap: 0 !important;
}
.tfn-generator form.tfn-generator-form .tfn-field-title {
  margin: 0 0 2px !important;
  padding: 0 !important;
}
.tfn-generator form.tfn-generator-form .tfn-field > .tfn-input,
.tfn-generator form.tfn-generator-form .tfn-field > select.tfn-input.tfn-select {
  margin-top: 0 !important;
}
@media (max-width:680px){
  .tfn-generator form.tfn-generator-form .tfn-field-title {
    margin-bottom: 2px !important;
  }
}

/* v0.3.16: visually pull controls upward toward their labels. */
.tfn-generator form.tfn-generator-form .tfn-field > .tfn-input,
.tfn-generator form.tfn-generator-form .tfn-field > select.tfn-input.tfn-select {
  position: relative !important;
  top: -8px !important;
  margin-bottom: -8px !important;
}

/* v0.3.17: mobile input 2px closer; clearer separation between field groups. */
@media (max-width:680px){
  .tfn-generator form.tfn-generator-form .tfn-field > .tfn-input,
  .tfn-generator form.tfn-generator-form .tfn-field > select.tfn-input.tfn-select {
    top:-10px !important;
    margin-bottom:-10px !important;
  }
  .tfn-generator form.tfn-generator-form .tfn-form-grid > .tfn-field {
    margin-bottom:22px !important;
  }
  .tfn-generator form.tfn-generator-form .tfn-form-grid > .tfn-field:last-child {
    margin-bottom:0 !important;
  }
}
