:root{--bg:#fbfaf7;--paper:#fff;--text:#17212b;--muted:#64717f;--line:#e9e3da;--brand:#4f7f73;--brand-dark:#315f55;--soft:#edf4f1;--warn:#b7791f;--danger:#9b2c2c;--radius:22px;--shadow:0 18px 55px rgba(29,38,48,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);line-height:1.55}a{color:inherit;text-decoration:none}main{min-height:70vh}.site-header{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:18px clamp(18px,5vw,72px);background:rgba(251,250,247,.85);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{font-weight:850;letter-spacing:-.03em;font-size:1.22rem}.site-header nav{display:flex;gap:8px;align-items:center}.site-header nav a{padding:9px 12px;border-radius:999px;color:var(--muted);font-weight:650}.site-header nav a:hover,.nav-pill{background:var(--soft);color:var(--brand-dark)!important}.hero{display:grid;grid-template-columns:1.4fr .8fr;gap:34px;padding:86px clamp(18px,5vw,72px) 48px;align-items:center}.hero-content h1,.page-hero h1,.detail-intro h1{font-size:clamp(2.4rem,6vw,5rem);line-height:.95;margin:10px 0 20px;letter-spacing:-.07em}.hero-content p,.page-hero p,.detail-intro p{font-size:1.15rem;color:var(--muted);max-width:650px}.eyebrow,.mini-label{display:inline-flex;color:var(--brand-dark);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:13px 20px;font-weight:800;cursor:pointer;font-size:.97rem}.btn.primary{background:var(--brand);color:#fff}.btn.primary:hover{background:var(--brand-dark)}.btn.secondary{background:#fff;border:1px solid var(--line);color:var(--text)}.btn.full{width:100%;margin-top:10px}.hero-card{background:linear-gradient(145deg,#fff,var(--soft));padding:34px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.hero-card h2{font-size:2rem;line-height:1.05;letter-spacing:-.05em}.section,.page-hero,.admin-page,.form-page{padding:42px clamp(18px,5vw,72px)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.section-heading h1,.section-heading h2{margin:.2rem 0 0;font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.05em}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.casting-card,.content-box,.sidebar-box,.form-card,.admin-table{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.cover{height:190px;background:linear-gradient(135deg,#e8eee9,#f7ead8);display:grid;place-items:center}.cover span,.detail-cover span{font-size:4rem;font-weight:900;color:var(--brand)}.cover img,.detail-cover img{width:100%;height:100%;object-fit:cover}.card-body{padding:22px}.card-body h3{font-size:1.35rem;line-height:1.15;margin:12px 0 8px;letter-spacing:-.03em}.card-body p{color:var(--muted)}.meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:.9rem;margin:18px 0}.status{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:.78rem;font-weight:850}.status.open{background:#e7f7ee;color:#21613d}.status.soon{background:#fff4df;color:var(--warn)}.status.closed{background:#f8e7e7;color:var(--danger)}.text-link{font-weight:850;color:var(--brand-dark)}.empty{background:#fff;border:1px dashed var(--line);border-radius:var(--radius);padding:24px;color:var(--muted)}.empty.small{padding:16px}.process{margin:28px clamp(18px,5vw,72px) 70px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.process div{background:var(--soft);border-radius:var(--radius);padding:24px}.process strong{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff;color:var(--brand-dark)}.detail-hero{padding:50px clamp(18px,5vw,72px) 20px;display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;align-items:end}.detail-cover{height:460px;background:linear-gradient(135deg,#e8eee9,#f7ead8);display:grid;place-items:center;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}.detail-layout{padding:20px clamp(18px,5vw,72px) 70px;display:grid;grid-template-columns:1fr 340px;gap:22px;align-items:start}.content-box,.sidebar-box{padding:28px}.content-box h2{letter-spacing:-.04em;font-size:1.7rem}.faq-list details{border-top:1px solid var(--line);padding:16px 0}.faq-list summary{cursor:pointer;font-weight:850}.sidebar-box{position:sticky;top:92px}.sidebar-box p{color:var(--muted)}.site-footer{border-top:1px solid var(--line);padding:26px clamp(18px,5vw,72px);color:var(--muted)}.form-card{max-width:920px;margin:auto;padding:30px}.wide-card{max-width:1100px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{display:flex;flex-direction:column;gap:7px;font-weight:750;color:#27323c}.form-grid input,.form-grid textarea,.form-grid select{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:13px 14px;font:inherit}.form-grid .wide,.wide{grid-column:1/-1}.checkbox{flex-direction:row!important;align-items:center}.checkbox input{width:auto}.success{background:#e7f7ee;border:1px solid #bee8ce;color:#21613d;padding:16px;border-radius:16px}.error{background:#f8e7e7;color:var(--danger);padding:12px;border-radius:14px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(420px,100%);background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px;display:grid;gap:14px}.login-card label{font-weight:750}.login-card input{margin-top:7px;width:100%;border:1px solid var(--line);border-radius:14px;padding:13px}.admin-table{overflow:auto}.admin-table table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:16px;border-bottom:1px solid var(--line);vertical-align:top}.admin-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.faq-editor{background:var(--soft);padding:18px;border-radius:18px}.faq-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}@media(max-width:900px){.hero,.detail-hero,.detail-layout{grid-template-columns:1fr}.grid,.process{grid-template-columns:1fr}.sidebar-box{position:static}.form-grid{grid-template-columns:1fr}.site-header{align-items:flex-start;gap:12px;flex-direction:column}.site-header nav{flex-wrap:wrap}.hero{padding-top:46px}.detail-cover{height:240px}} 

/* Opdateringer: Kolle Casting, renere forside og klikbare castingkort */
.hero{grid-template-columns:1fr;max-width:1050px}.hero-content h1{max-width:850px}.casting-card{display:block;transition:transform .18s ease,box-shadow .18s ease;border-radius:26px}.casting-card:hover{transform:translateY(-3px);box-shadow:0 22px 65px rgba(29,38,48,.12)}.casting-card .cover{height:330px;position:relative}.casting-card .card-body{background:#fff;position:relative;z-index:2}.casting-card .card-body h3{color:var(--text);font-size:1.45rem}.casting-card .card-body p,.casting-card .meta{color:var(--muted)}.casting-card .text-link{display:inline-block;margin-top:4px}.video-guide{background:var(--soft);border:1px solid var(--line);border-radius:20px;padding:20px;margin:18px 0}.video-guide h2{margin-top:0}.video-guide ol{padding-left:22px;color:var(--muted)}.video-guide li{margin:8px 0}.brand:after{content:'Mads Kolle';font-weight:650;color:var(--muted);margin-left:8px;letter-spacing:0;font-size:.92rem}.hero .eyebrow::after{content:'';}


.application-field-row{
  display:grid;
  grid-template-columns: 1.2fr 0.8fr 1.2fr auto auto auto;
  gap:10px;
  align-items:center;
  margin:10px 0;
  padding:12px;
  border:1px solid rgba(25,35,55,.10);
  border-radius:16px;
  background:#fff;
}
.application-field-row input,
.application-field-row select{
  min-width:0;
}
.section-divider {
    border: none;
    height: 1px;
    width: 100%;
    margin: 80px 0;
    background: linear-gradient(
        to right,
        transparent,
        #d9d9d9,
        transparent
    );
}
.mini-check{
  display:flex;
  gap:6px;
  align-items:center;
  font-size:.92rem;
  white-space:nowrap;
}
.btn.small{
  padding:9px 12px;
  font-size:.9rem;
}
/* --- UX polish: responsive hero, clearer flow and animations --- */
html{scroll-behavior:smooth;scroll-padding-top:96px}body{overflow-x:hidden}.site-header{transition:box-shadow .22s ease,background-color .22s ease}.site-header.is-scrolled{box-shadow:0 10px 35px rgba(29,38,48,.08);background:rgba(251,250,247,.94)}.btn,.site-header nav a,.casting-card,.process div{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0) scale(.97)}.btn.is-scrolling{position:relative;overflow:hidden;pointer-events:none}.btn.is-scrolling::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:buttonShine .85s ease forwards}.hero{position:relative;grid-template-columns:minmax(0,1.1fr) minmax(300px,.7fr);max-width:none;min-height:calc(100svh - 74px);padding-top:clamp(54px,8vw,105px);padding-bottom:clamp(38px,6vw,72px)}.hero::before{content:'';position:absolute;right:-16vw;top:4vw;width:42vw;height:42vw;min-width:360px;min-height:360px;border-radius:999px;background:radial-gradient(circle,rgba(79,127,115,.14),transparent 62%);pointer-events:none}.hero-content{max-width:850px;animation:heroIn .75s ease both}.hero-content h1{max-width:780px}.hero-content p{max-width:690px}.hero-guide{position:relative;z-index:1;background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:26px;animation:heroIn .75s ease .12s both}.hero-guide h2{font-size:clamp(1.45rem,2.3vw,2rem);line-height:1.05;letter-spacing:-.05em;margin:8px 0 18px}.guide-steps{display:grid;gap:12px;margin:0;padding:0;list-style:none}.guide-steps li{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;padding:14px;border:1px solid rgba(233,227,218,.8);border-radius:18px;background:rgba(237,244,241,.56)}.guide-steps strong{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--brand);color:#fff;font-size:.9rem}.guide-steps span{display:block;font-weight:850;line-height:1.2}.guide-steps small{display:block;color:var(--muted);font-weight:550;margin-top:2px}.scroll-cue{display:inline-flex;align-items:center;gap:10px;margin-top:22px;color:var(--brand-dark);font-weight:850}.scroll-cue::before{content:'↓';display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--soft);animation:bounceDown 1.5s ease-in-out infinite}.section-divider{margin:0 auto;width:calc(100% - clamp(36px,10vw,144px));opacity:.9}.section{position:relative}.section-heading{align-items:center}.section-heading .hint{color:var(--muted);font-weight:700}.grid{align-items:stretch}.casting-card{height:100%}.casting-card:hover{transform:translateY(-6px);box-shadow:0 26px 70px rgba(29,38,48,.14)}.casting-card:active{transform:translateY(-2px) scale(.995)}.casting-card .cover{overflow:hidden}.casting-card .cover img{transition:transform .45s ease}.casting-card:hover .cover img{transform:scale(1.045)}.text-link{transition:gap .2s ease,transform .2s ease}.casting-card:hover .text-link{display:inline-block;transform:translateX(4px)}.process{scroll-margin-top:105px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes heroIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes bounceDown{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes buttonShine{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
@media(max-width:1050px){.hero{grid-template-columns:1fr;min-height:auto}.hero-content{text-align:center;margin-inline:auto}.hero-content h1,.hero-content p{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.hero-guide{max-width:760px;margin:10px auto 0}.scroll-cue{justify-content:center;width:100%}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){html{scroll-padding-top:120px}.site-header{align-items:center;flex-direction:row}.hero{padding-top:42px}.hero-content{text-align:left}.hero-content h1,.hero-content p{margin-left:0;margin-right:0}.hero-actions{justify-content:flex-start}.hero-guide{margin-top:8px}.grid{grid-template-columns:1fr}.section-heading{display:block}.section-heading .hint{display:block;margin-top:7px}.casting-card .cover{height:240px}.application-field-row{grid-template-columns:1fr}.mini-check{white-space:normal}}
@media(max-width:560px){.site-header{padding:14px 16px}.brand:after{display:none}.site-header nav a{padding:8px 10px}.hero,.section,.page-hero,.admin-page,.form-page{padding-left:16px;padding-right:16px}.hero-content h1,.page-hero h1,.detail-intro h1{font-size:clamp(2.25rem,15vw,3.55rem)}.hero-actions{display:grid;grid-template-columns:1fr;width:100%}.btn{width:100%}.hero-guide{padding:18px;border-radius:22px}.guide-steps li{padding:12px}.section-divider{width:calc(100% - 32px)}.process{margin-left:16px;margin-right:16px}.casting-card .cover{height:220px}.card-body{padding:19px}.site-footer{padding-left:16px;padding-right:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.reveal{opacity:1;transform:none}}
.btn.danger{background:var(--danger);color:#fff}.btn.danger:hover{background:#742222}
.admin-muted{color:var(--muted);margin:.35rem 0 0}.application-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 18px}.stat-card,.filter-card,.application-summary-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.stat-card span,.application-summary-card span,.filter-card span{display:block;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.74rem}.stat-card strong{display:block;margin-top:6px;font-size:2rem;letter-spacing:-.05em}.filter-card{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:18px}.filter-card label{display:grid;gap:8px;min-width:min(360px,100%);font-weight:800}.filter-card select{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff;font:inherit}.applications-table small{color:var(--muted)}.application-detail-grid{display:grid;grid-template-columns:320px 1fr;gap:18px;align-items:start}.application-summary-card h2{margin-top:0;letter-spacing:-.04em}.application-summary-card p{border-top:1px solid var(--line);padding-top:14px}.application-summary-card strong{display:block;margin-top:3px;word-break:break-word}.application-details-table td:last-child{white-space:pre-wrap}@media(max-width:900px){.application-stats,.application-detail-grid{grid-template-columns:1fr}.filter-card{display:grid}.filter-card .btn{width:auto}}

/* Afvisningsmail i admin */
.filter-actions{display:flex;gap:10px;flex-wrap:wrap}.rejection-layout{display:grid;grid-template-columns:minmax(0,1.25fr) 420px;gap:18px;align-items:start}.mail-composer{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;position:sticky;top:92px}.mail-composer h2{margin:.2rem 0 18px;letter-spacing:-.04em}.mail-composer label{display:grid;gap:8px;margin-bottom:14px;font-weight:800}.mail-composer input[type="text"],.mail-composer textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:13px 14px;font:inherit}.mail-composer textarea{resize:vertical}.choice-check{display:inline-flex!important;align-items:center;justify-content:center;width:52px;height:38px;border:1px solid var(--line);border-radius:999px;background:#fff;cursor:pointer}.choice-check input{position:absolute;opacity:0;pointer-events:none}.choice-check span{font-size:1.2rem}.confirm-send{background:#fbfaf7;border:1px solid var(--line);border-radius:16px;padding:12px!important;margin-top:10px}.send-results{margin-top:18px}@media(max-width:1050px){.rejection-layout{grid-template-columns:1fr}.mail-composer{position:static}}@media(max-width:560px){.filter-actions{display:grid}.filter-actions .btn{width:100%}.choice-check{width:48px}}


/* ---------------------------------------------------------
   Mobile/form fix - checkbox layout + attention upload CTA
   Added by ChatGPT
--------------------------------------------------------- */

/* Fix checkboxes on all screen sizes, even when label text is not wrapped in a span */
.form-grid label.checkbox,
.checkbox{
  display:block !important;
  position:relative;
  padding-left:38px;
  min-height:28px;
  line-height:1.45;
  font-weight:750;
  color:#27323c;
}

.form-grid label.checkbox input[type="checkbox"],
.checkbox input[type="checkbox"]{
  position:absolute;
  left:0;
  top:.15em;
  width:22px !important;
  height:22px !important;
  margin:0 !important;
  flex:none !important;
  accent-color:var(--brand);
}

.checkbox span{
  display:inline;
  line-height:1.45;
}

.checkbox a{
  color:var(--brand-dark);
  font-weight:850;
  text-decoration:underline;
  text-underline-offset:3px;
  overflow-wrap:break-word;
}

/* Better form spacing on phones */
@media(max-width:560px){
  .form-card{
    padding:20px 16px;
    border-radius:20px;
  }

  .form-grid{
    gap:14px;
  }

  .form-grid input,
  .form-grid textarea,
  .form-grid select{
    font-size:16px;
    padding:14px 14px;
    border-radius:14px;
  }

  .form-grid label.checkbox,
  .checkbox{
    padding-left:34px;
    font-size:.96rem;
    line-height:1.42;
    overflow-wrap:normal;
    word-break:normal;
  }

  .form-grid label.checkbox input[type="checkbox"],
  .checkbox input[type="checkbox"]{
    width:22px !important;
    height:22px !important;
    top:.1em;
  }

  .btn.primary,
  .btn.secondary{
    width:100%;
    min-height:56px;
    padding:15px 18px;
    white-space:normal;
    text-align:center;
    line-height:1.2;
    font-size:1rem;
  }
}

/* Make the WeTransfer upload button impossible to miss */
a.btn[href*="wetransfer"],
.btn.wetransfer,
.big-upload-btn,
.upload-actions .btn.secondary{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:linear-gradient(135deg,var(--brand),var(--brand-dark)) !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:0 0 0 0 rgba(79,127,115,.45), 0 16px 34px rgba(49,95,85,.24);
  animation:wetransferPulse 1.8s ease-in-out infinite;
}

a.btn[href*="wetransfer"]::before,
.btn.wetransfer::before,
.big-upload-btn::before,
.upload-actions .btn.secondary::before{
  content:'';
  position:absolute;
  inset:-3px;
  z-index:-1;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,.65),rgba(255,255,255,.08));
  transform:translateX(-120%);
  animation:wetransferShine 2.35s ease-in-out infinite;
}

a.btn[href*="wetransfer"]::after,
.btn.wetransfer::after,
.big-upload-btn::after,
.upload-actions .btn.secondary::after{
  content:'';
  position:absolute;
  inset:4px;
  border-radius:999px;
  border:2px solid rgba(255,255,255,.42);
  pointer-events:none;
}

@keyframes wetransferPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(79,127,115,.42), 0 16px 34px rgba(49,95,85,.24);transform:translateY(0)}
  50%{box-shadow:0 0 0 9px rgba(79,127,115,.10), 0 20px 42px rgba(49,95,85,.30);transform:translateY(-1px)}
}

@keyframes wetransferShine{
  0%{transform:translateX(-130%)}
  48%,100%{transform:translateX(130%)}
}

@media(prefers-reduced-motion:reduce){
  a.btn[href*="wetransfer"],
  .btn.wetransfer,
  .big-upload-btn,
  .upload-actions .btn.secondary{
    animation:none !important;
  }

  a.btn[href*="wetransfer"]::before,
  .btn.wetransfer::before,
  .big-upload-btn::before,
  .upload-actions .btn.secondary::before{
    animation:none !important;
    display:none;
  }
}
