/* N25 postcode checker, scoped to avoid clashes with Athens */
.n25-postcode{color:var(--pc-text);text-align:center;max-width:100%;}
.n25-postcode__heading{margin:0 0 8px;color:inherit;font-size:clamp(22px,2.5vw,30px);line-height:1.25;}
.n25-postcode__description{margin:0 0 24px;color:inherit;opacity:.75;font-size:15px;}
.n25-postcode__form{display:flex;justify-content:center;align-items:stretch;gap:12px;max-width:430px;margin:0 auto;}
.n25-postcode__label,.n25-postcode-modal__screen-reader{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.n25-postcode__form input{flex:1;min-width:0;height:48px;padding:12px 16px;border-radius:var(--pc-radius);border:1px solid #dedede;background:#fff;color:#272727;font:inherit;text-align:center;}
.n25-postcode__form input:focus-visible,.n25-postcode button:focus-visible,.n25-postcode a:focus-visible,.n25-postcode-modal__close:focus-visible{outline:2px solid var(--pc-accent);outline-offset:3px;}
.n25-postcode__submit,.n25-postcode__link{display:inline-flex;justify-content:center;align-items:center;text-align:center;border:0;text-decoration:none;border-radius:var(--pc-radius);background:var(--pc-accent);color:#fff;font:inherit;font-weight:700;padding:12px 23px;min-height:48px;cursor:pointer;transition:opacity .15s;}
.n25-postcode__submit:hover,.n25-postcode__link:hover{opacity:.9;color:#fff;}
.n25-postcode__result{margin:20px auto 0;padding:18px;max-width:530px;border-radius:var(--pc-radius);background:#f7f6f2;border:1px solid #e6e5e0;text-align:center;}
.n25-postcode__result[hidden],.n25-postcode__link[hidden],.n25-postcode-modal[hidden]{display:none!important;}
.n25-postcode__result h3{font-size:20px;color:inherit;margin:0 0 8px;}.n25-postcode__result p{margin:0 0 12px;font-size:14px;line-height:1.5;}
.n25-postcode__link{min-height:42px;padding:9px 18px;font-size:14px;}
.n25-postcode-modal{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:20px;}
.n25-postcode-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6);}
.n25-postcode-modal__dialog{position:relative;width:min(100%,600px);max-height:min(90vh,760px);overflow:auto;padding:clamp(26px,4vw,46px) 22px;background:var(--pc-bg,#fff);border-radius:18px;box-shadow:0 15px 60px #0003;}
.n25-postcode-modal__close{position:absolute;top:8px;right:13px;background:transparent;border:0;font-size:30px;line-height:1;cursor:pointer;color:#333;padding:5px 9px;}
@media(max-width:480px){.n25-postcode__form{gap:8px;}.n25-postcode__submit{padding:10px 16px;}.n25-postcode-modal{padding:12px;}.n25-postcode-modal__dialog{padding:45px 16px 28px;}}