.competition-screen{color:#392617;font-family:var(--serif)}
.competition-paper{padding-bottom:45px!important}.competition-paper::before{background-size:min(95%,650px) auto!important;opacity:.09!important}
.competition-heading .special-art{width:min(100%,480px);max-height:200px;object-fit:contain;margin:0 auto 18px}.competition-heading h1{margin:6px 0 20px}
.competition-eyebrow{font-weight:800;color:#7b4319;margin:20px 0 12px;text-align:center}
.competition-headline{font:900 clamp(27px,6.5vw,45px)/1.25 var(--serif);text-align:center;margin:0 0 24px!important;color:#4d2818}.competition-headline em{color:#986014;font-style:normal}
.competition-lead,.competition-rally{font-size:1.08em;line-height:1.75}.competition-lead{max-width:650px;margin:0 auto 28px;text-align:center}.competition-lead-sentence{display:block;font-size:clamp(21px,3.2vw,26px);line-height:1.55;margin:0 0 16px;color:#4d2818}.competition-lead-sentence strong{font-weight:900}.competition-winning-line{margin:22px 0 0;line-height:1.65}
.competition-prizes{display:grid;gap:5px;padding:20px 12px;margin:24px auto 32px;text-align:center;max-width:520px;border-block:2px solid #b7893c;background:linear-gradient(105deg,#e5bb5b40,#fff7dfd9,#dab15a40);color:#593113}.competition-prizes strong{font-size:clamp(27px,6vw,36px)}.competition-prizes span{font-weight:750}
.competition-category-cards{display:grid;gap:20px;margin-bottom:28px}.competition-category-cards>section,.competition-form{position:relative;isolation:isolate;border:1px solid #ba9369;border-radius:17px;padding:24px clamp(17px,4vw,30px);background:#f2e5ce;box-shadow:inset 0 1px 1px #fff9,0 4px 0 #8a624750,0 9px 20px #4b2c1a12;overflow:hidden}
[data-category="humour"]{--category-watermark:url('revamp/competition-humour.svg')}
[data-category="photo"]{--category-watermark:url('revamp/competition-photo.svg')}
[data-category="recipe"]{--category-watermark:url('revamp/competition-recipe.svg')}
.competition-category-cards>section::before,.competition-form::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--category-watermark,var(--watermark)) center 25%/min(95%,530px) auto repeat-y;opacity:.12}
.competition-category-cards h3{font-size:1.35em;margin:0 0 8px;color:#542c18}.competition-category-cards h4{font-size:.88em;text-transform:uppercase;letter-spacing:.035em;margin:0;color:#76522e}.competition-category-cards p{line-height:1.65;margin-bottom:0}
.competition-deadline{text-align:center;line-height:1.8;margin:25px 0}.competition-deadline span{font-size:.88em}
.competition-button{display:block;box-sizing:border-box;max-width:100%;width:fit-content;min-height:52px;padding:13px 23px;border:1px solid #9b632c;border-top-color:#e4bf7e;border-radius:13px;background:linear-gradient(#efd28b,#d5a34e);box-shadow:inset 0 2px 2px #fff8,0 5px 0 #84552e,0 8px 13px #4b2c1a30;color:#3d230f;font:900 1em/1.45 var(--serif);cursor:pointer;transition:transform .12s,box-shadow .12s;text-align:center}
.competition-button:hover{background:linear-gradient(#f8dda0,#dfb15c)}.competition-button:active{transform:translateY(4px);box-shadow:inset 0 2px 4px #6d451a30,0 1px 0 #84552e}.competition-button:focus-visible,.competition-form button:focus-visible{outline:3px solid #7b4319;outline-offset:5px}.competition-button:disabled{cursor:wait;opacity:.65}.competition-enter{margin:30px auto 22px;font-size:1.12em}
.competition-help{font-size:.82em;line-height:1.6;color:#634a35}.competition-enter+.competition-help{text-align:center}
.competition-form{margin:10px auto 24px;max-width:650px}.competition-form h2{font:850 1.65em/1.35 var(--serif);color:#4b2716;margin:6px 0 23px}.competition-form h2:focus{outline:none}.competition-step{font-size:.76em;line-height:1.6;color:#755035;font-weight:700}
.competition-form label:not(.competition-agreement):not(.competition-honeypot){display:grid;gap:9px;margin:23px 0;font-weight:750;line-height:1.5}.competition-form input:not([type="checkbox"]),.competition-form select,.competition-form textarea{box-sizing:border-box;width:100%;min-height:49px;padding:12px;border:1px solid #aa8361;border-radius:9px;background:#fffaf0e8;color:#382418;font:400 1em/1.5 var(--serif)}.competition-form textarea{resize:vertical}.competition-form input:focus,.competition-form select:focus,.competition-form textarea:focus{outline:3px solid #bf873f;outline-offset:2px}.competition-form input[type="file"]{font-size:.85em;overflow:hidden}.competition-form input[type="file"]::file-selector-button{border:1px solid #a77a47;border-radius:7px;padding:9px;background:linear-gradient(#fff7e6,#dcc49e);box-shadow:0 3px 0 #87623a;margin-right:10px;color:#382418;font:700 1em var(--serif)}
.competition-category-intro{line-height:1.65}.competition-category-intro h3{font-size:1.2em;margin-bottom:5px}.competition-category-intro p{margin-top:0}
.competition-files,.competition-saved-entries{padding:0;list-style:none;display:grid;gap:12px}.competition-files li,.competition-saved-entries li{display:flex;flex-wrap:wrap;align-items:center;gap:12px;overflow-wrap:anywhere;border-bottom:1px solid #ba936980;padding:12px 0}.competition-files span,.competition-saved-entries li>div{flex:1;min-width:120px}.competition-saved-entries strong,.competition-saved-entries span,.competition-saved-entries small{display:block}.competition-saved-entries span{margin-top:5px}.competition-saved-entries small{font-size:.78em;margin-top:5px;color:#634a35}
.competition-files button,.competition-saved-entries button{font:750 .8em var(--serif);border:1px solid #b4936c;border-radius:7px;padding:9px 11px;background:linear-gradient(#fff6e5,#e7d1ad);box-shadow:0 3px 0 #998064;color:#50301c;cursor:pointer}.competition-files button:active,.competition-saved-entries button:active{transform:translateY(2px);box-shadow:0 1px 0 #998064}
.competition-actions{display:flex;flex-wrap:wrap;gap:22px;margin:28px 0 12px}.competition-actions .competition-button{flex:1;min-width:160px}
.competition-link{display:block;margin:25px 0 8px;padding:5px 0;font:750 .9em var(--serif);background:transparent;border:0;text-decoration:underline;color:#75431f;cursor:pointer}
.competition-form-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:14px;margin:24px 0 8px}.competition-form-actions>.competition-button{box-sizing:border-box;width:100%;min-width:0;margin:0;padding:12px 14px}.competition-form-actions>.competition-cancel{grid-column:1}.competition-cancel{min-height:44px;padding:9px 22px;background:linear-gradient(#fff5e2,#dec7a4);border-color:#b3926a;box-shadow:inset 0 2px 2px #fff9,0 4px 0 #896745,0 7px 11px #4b2c1a25}.competition-cancel:hover{background:linear-gradient(#fff9ec,#e7d2b2)}
.competition-conditions{font-size:.9em;line-height:1.7;padding:16px;border:1px solid #be9e78;border-radius:10px;background:#f2e5ceaa}.competition-conditions summary{cursor:pointer;font-weight:750}.competition-agreement{display:flex;gap:13px;align-items:flex-start;line-height:1.6;margin:23px 0}.competition-agreement input{width:22px;height:22px;flex:none;margin-top:4px;accent-color:#8b561b}.competition-submit{width:100%;margin:25px 0 12px}
.competition-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}[data-competition-status]{font-weight:700;color:#84371e;line-height:1.6;overflow-wrap:anywhere}
.competition-success{text-align:center;padding-block:45px}.competition-success p{line-height:1.7}.competition-success-star{font-size:4em;color:#bd8b23;text-shadow:0 2px 0 #7f5c14,0 0 22px #ffd46499}
.competition-screen [hidden]{display:none!important}
@media(max-width:430px){.competition-form{padding:20px 15px}.competition-category-cards>section{padding:21px 17px}.competition-button{padding:12px 17px}.competition-files span{flex-basis:100%}.competition-actions{gap:20px}.competition-actions .competition-button{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.competition-button{transition:none}}

/* Supplied competition flyer: preserve the complete artwork at every width. */
.competition-flyer{display:block;width:100%;max-width:720px;height:auto;object-fit:contain;margin:0 auto 26px;border-radius:8px}
[data-competition-landing]>.competition-form-actions{max-width:720px;margin:26px auto 16px}
.competition-acknowledgement-copy{line-height:1.8}.competition-acknowledgement-copy p{margin:0 0 20px}
.competition-button:disabled{cursor:not-allowed}


/* Mobile browsers should display the competition artwork at the device viewport width. */
@media(max-width:767px){
 .competition-paper{padding-inline:clamp(12px,4vw,24px)!important}
 .competition-flyer{width:100%;max-width:none;margin-bottom:20px}
 [data-competition-landing]>.competition-form-actions{width:100%;max-width:none}
}

@media(max-width:767px){.competition-flyer{max-height:min(43svh,360px);width:100%;object-fit:contain;margin-bottom:8px}.competition-paper{padding-top:12px!important;padding-bottom:20px!important}[data-competition-landing]>.competition-form-actions{margin:10px auto 8px}.competition-form-actions{margin-top:14px;margin-bottom:4px;gap:10px}.competition-paper .special-art{margin-bottom:8px}}
/* Keep the competition landing actions visible beside the complete flyer. */
.competition-flyer{max-height:min(43svh,360px);object-fit:contain;margin-bottom:8px}
[data-competition-landing]>.competition-form-actions{margin:10px auto 8px}

/* Let the portrait flyer use the full available competition screen while its
   two actions stay in view at the bottom. */
.competition-screen.competition-is-landing{overflow-y:hidden!important}
.competition-screen.competition-is-landing>.competition-paper{display:flex;flex-direction:column;box-sizing:border-box;height:100%;min-height:100%;padding-top:clamp(8px,1.5svh,16px)!important;padding-bottom:clamp(8px,1.5svh,16px)!important}
.competition-is-landing [data-competition-landing]{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}
.competition-is-landing .competition-flyer{flex:1 1 auto;width:100%;height:100%;min-height:0;max-height:none!important;object-fit:contain;margin:0 auto 6px}
.competition-is-landing [data-competition-landing]>.competition-form-actions{flex:none;width:100%;max-width:720px;margin:auto auto 0}
.competition-is-landing .competition-form-actions .competition-button{min-height:48px;padding:10px 14px}

/* Keep every action label bold throughout the competition flow and forms. */
.competition-screen button{font-weight:700!important}
