/**
 * Base styles for Notice Wales front-end components.
 */

/* Hide the default theme header when rendering full-page plugin templates */
body #page > #header,
body #header {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
}
body #page > hr {
    display: none !important;
}

/* Hide theme footers on notice pages */
body #page > footer,
body footer#footer,
body footer#colophon,
body .site-footer,
body .site-info,
body .footer,
body .powered-by-wordpress,
body #footer {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
}

.notice-wales-front {
    font-family: "Libre Baskerville", Georgia, serif;
    color: #1f1f1f;
    background: #f5f5f0;
}

.notice-wales-front .hero {
    background: linear-gradient(135deg, #123652, #f2dca3);
    color: #fff;
    padding: 3rem 1.5rem 3.5rem;
    text-align: center;
}

.notice-wales-edit .hero {
    background: linear-gradient(135deg, #123652, #f2dca3);
    color: #fff;
    padding: 3.5rem 1.5rem 3rem;
    text-align: center;
}

.notice-wales-edit .hero .hero-inner h1 {
    font-size: 2.4rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    margin-bottom: 0.4rem;
}

.notice-wales-edit .hero .strapline {
    font-family: "Source Sans Pro", Arial, sans-serif;
    font-size: 1.05rem;
    color: rgba(255, 255, 255, 0.9);
}

.notice-wales-front .hero-inner {
    position: relative;
}

.notice-wales-front .hero-inner .edit-link {
    position: absolute;
    top: 1.6rem;
    right: 1rem;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.notice-wales-front .hero-inner .edit-link a {
    color: #0e2c3f;
    text-decoration: none;
    border-bottom: 1px dotted rgba(18, 54, 82, 0.4);
}

.notice-wales-front .hero-inner .edit-link a:hover {
    color: #0a2130;
    border-bottom-color: #0a2130;
}

.notice-wales-front .hero-inner .withdraw-link {
    position: absolute;
    top: 0.2rem;
    right: 1rem;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.notice-wales-front .hero-inner .withdraw-link a {
    color: #0e2c3f;
    text-decoration: none;
    border-bottom: 1px dotted rgba(18, 54, 82, 0.4);
}

.notice-wales-front .hero-inner .withdraw-link a:hover {
    color: #0a2130;
    border-bottom-color: #0a2130;
}

.notice-wales-front .hero-inner .name-law-link {
    position: absolute;
    top: 0.6rem;
    right: 1rem;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.notice-wales-front .hero-inner .name-law-link a {
    color: #0e2c3f;
    text-decoration: none;
    border-bottom: 1px dotted rgba(18, 54, 82, 0.4);
}

.notice-wales-front .hero-inner .name-law-link a:hover {
    color: #0a2130;
    border-bottom-color: #0a2130;
}

.notice-wales-front .hero-inner h1 {
    font-size: 3rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.notice-wales-front .hero-inner .strapline {
    font-family: "Source Sans Pro", Arial, sans-serif;
    font-size: 2.5rem;
    margin-top: 1rem;
}

.notice-wales-front .hero-cta {
    margin-top: 2.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.85rem;
    font-family: "Source Sans Pro", Arial, sans-serif;
}

.btn-primary {
    display: inline-block;
    padding: 0.9rem 2.2rem;
    background: #b77b25;
    color: #fff !important;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 600;
    transition: background 0.2s ease-in-out, transform 0.2s ease-in-out;
}

.btn-primary:hover,
.btn-primary:focus {
    background: #d68f2c;
    transform: translateY(-2px);
}

.hero-note {
    font-size: 0.95rem;
    opacity: 0.9;
}

.notice-wales-front .notice-search {
    background: #fff;
    padding: 3rem 1.5rem;
}

.notice-search-form {
    font-family: "Source Sans Pro", Arial, sans-serif;
}

.notice-search-form label {
    display: block;
    margin-bottom: 1rem;
    font-weight: 600;
    letter-spacing: 0.02em;
}

.notice-search-form .input-row {
    display: flex;
    gap: 1rem;
}

.notice-search-form input[type="text"],
.notice-search-form input[type="email"],
.notice-search-form input[type="date"],
.notice-search-form select,
.notice-search-form textarea {
    flex: 1;
    padding: 0.85rem 1rem;
    border: 1px solid #b7a57a;
    border-radius: 4px;
    font-size: 1.05rem;
    font-family: inherit;
    background: rgba(255, 255, 255, 0.95);
}

.notice-search-form button,
.notice-submit-form button {
    padding: 0 1.75rem;
    background: #123652;
    color: #fff;
    border: none;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    cursor: pointer;
    transition: background 0.2s ease-in-out;
}

.notice-search-form button:hover,
.notice-submit-form button:hover {
    background: #0d283d;
}

.notice-submit-form button.is-loading {
    opacity: 0.7;
    pointer-events: none;
}

.notice-wales-front .notice-search .search-inner {
    max-width: 540px;
    margin: 0 auto;
    text-align: center;
}

.notice-wales-front .notice-search-form label {
    display: block;
    margin-bottom: 1rem;
    font-family: "Source Sans Pro", Arial, sans-serif;
}

.notice-wales-front .notice-search-form .input-row {
    display: flex;
    gap: 1rem;
}

.notice-wales-front .notice-search-form input[type="text"] {
    flex: 1;
    padding: 0.85rem 1rem;
    border: 1px solid #b7a57a;
    border-radius: 4px;
    font-size: 1.1rem;
    font-family: "Source Sans Pro", Arial, sans-serif;
}

.notice-wales-front .notice-search-form button {
    padding: 0 1.75rem;
    background: #123652;
    color: #fff;
    border: none;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    cursor: pointer;
}

.notice-wales-front .notice-grid {
    max-width: 960px;
    margin: 3rem auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 1.5rem;
    padding: 0 1.5rem 4rem;
}

.notice-wales-front .notice-grid article {
    background: rgba(255, 255, 255, 0.9);
    padding: 1.75rem;
    border-left: 4px solid #b77b25;
    box-shadow: 0 10px 25px rgba(18, 54, 82, 0.08);
}

.notice-wales-front .notice-grid .quote-card {
    grid-column: 1 / -1;
}

.notice-wales-front .notice-latest {
    background: #fff;
    border-top: 1px solid rgba(18, 54, 82, 0.12);
    padding: 3.5rem 1.5rem 4.5rem;
    font-family: "Source Sans Pro", Arial, sans-serif;
}

.notice-wales-front .latest-inner {
    max-width: 960px;
    margin: 0 auto;
}

.notice-wales-front .latest-header h2 {
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 2rem;
    margin-bottom: 0.75rem;
}

.notice-wales-front .latest-list {
    list-style: none;
    padding: 0;
    margin: 2rem 0 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
    gap: 1.5rem;
}

.notice-wales-front .latest-item {
    display: grid;
    grid-template-columns: 140px 1fr;
    gap: 1rem;
    padding: 1.25rem;
    border: 1px solid rgba(18, 54, 82, 0.1);
    border-radius: 10px;
    background: #fdfbf6;
}

.notice-wales-front .latest-code a {
    display: inline-block;
    background: #123652;
    color: #fff;
    padding: 0.35rem 0.85rem;
    border-radius: 999px;
    font-weight: 600;
    letter-spacing: 0.08em;
    font-size: 0.9rem;
    text-decoration: none;
}

.notice-wales-front .latest-content h3 {
    font-size: 1.35rem;
    margin-bottom: 0.5rem;
    color: #123652;
}

.notice-wales-front .latest-content time {
    display: block;
    margin-top: 0.75rem;
    font-size: 0.9rem;
    color: rgba(31, 31, 31, 0.65);
}

.notice-wales-front .latest-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.85rem;
    margin-top: 2rem;
    font-family: "Source Sans Pro", Arial, sans-serif;
}

.notice-wales-front .latest-pagination .page-link {
    color: #123652;
    text-decoration: none;
    font-weight: 600;
}

.notice-wales-front .latest-pagination .page-link:hover {
    text-decoration: underline;
}

.notice-wales-front .latest-pagination .page-status {
    font-size: 0.95rem;
    color: rgba(31, 31, 31, 0.75);
}

.notice-wales-people {
    background: #f5f5f0;
}

.notice-wales-people .container {
    max-width: 780px;
    margin: 0 auto;
    padding: 3rem 1.5rem;
    font-family: "Source Sans Pro", Arial, sans-serif;
}

.notice-wales-people .lookup-header {
    background: linear-gradient(135deg, #123652, #f2dca3);
    color: #fff;
    text-align: center;
    padding: 1.5rem 0 1.75rem;
    position: relative;
}

.notice-wales-people .people-home {
    position: absolute;
    right: 1rem;
    top: 0.75rem;
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 1.1rem;
    letter-spacing: 0.04em;
    color: #123652;
    font-weight: 700;
    text-decoration: none;
}

.notice-wales-people .people-home:hover {
    text-decoration: underline;
}

.notice-wales-people .people-brand {
    font-size: 3rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 0.35rem;
    font-family: "Libre Baskerville", Georgia, serif;
    line-height: 1.05;
    font-weight: 700;
}

.notice-wales-people .people-brand a {
    color: #fff;
    text-decoration: none;
}

.notice-wales-people .people-brand a:hover {
    text-decoration: underline;
}

.notice-wales-people .people-code {
    font-size: 1.6rem;
    margin: 0;
    letter-spacing: 0.12em;
}

.notice-wales-people .lookup-results {
    background: #fff;
    min-height: 40vh;
    border-top: 1px solid rgba(18, 54, 82, 0.08);
}

.notice-wales-people .lookup-note {
    background: rgba(18, 54, 82, 0.08);
    padding: 1rem 1.25rem;
    border-left: 4px solid #123652;
    margin-bottom: 2rem;
}

.notice-results {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.notice-result {
    border: 1px solid rgba(18, 54, 82, 0.1);
    border-radius: 8px;
    padding: 1.75rem;
    background: #fefefe;
    box-shadow: 0 10px 25px rgba(18, 54, 82, 0.05);
}

.notice-result__header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 1rem;
    font-family: "Libre Baskerville", Georgia, serif;
}

.notice-result__code {
    font-size: 1.2rem;
    letter-spacing: 0.1em;
}

.notice-result__time {
    font-size: 0.9rem;
    color: rgba(31, 31, 31, 0.65);
}

.notice-result__title {
    font-size: 1.6rem;
    margin: 1rem 0;
    color: #123652;
}

.notice-result__body p {
    margin-bottom: 1rem;
    line-height: 1.6;
}

.notice-result__body .notice-label {
    color: #123652;
    font-weight: 400;
}

.notice-address-verify label {
    display: block;
    margin: 0 0 1rem;
    font-weight: 600;
}

.notice-address-verify form {
    max-width: 520px;
    width: 100%;
}

.notice-address-verify input[type="text"],
.notice-address-verify input[type="email"] {
    width: 100%;
    padding: 0.95rem 1.1rem;
    font-size: 1.05rem;
    border: 1px solid #b7a57a;
    border-radius: 6px;
    margin-top: 0.4rem;
    box-sizing: border-box;
}

.notice-address-verify .button-secondary {
    padding: 0.95rem 1.6rem;
    font-size: 1rem;
}

.notice-access-next {
    text-align: center;
    font-weight: 600;
    margin-top: 1rem;
}

.notice-result__body.access-sent {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    min-height: 0;
    padding: 0;
}

.notice-result__body .access-message {
    font-weight: 400;
    font-size: 1.15rem;
}

.notice-result__body .notice-full-body {
    white-space: pre-wrap;
    background: #fff;
    border: 1px solid rgba(18, 54, 82, 0.12);
    border-left: 4px solid #123652;
    border-radius: 10px;
    padding: 1.4rem 1.6rem;
    text-align: left;
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
    box-sizing: border-box;
    color: #1f1f1f;
    line-height: 1.65;
    box-shadow: 0 12px 28px rgba(18, 54, 82, 0.08);
}

.notice-result__body .notice-download {
    margin-top: 1rem;
    text-align: center;
}

.notice-result__body .notice-download .btn-primary {
    background: #123652;
    font-size: 0.9rem;
    padding: 0.7rem 1.8rem;
}

.notice-result__body .notice-download .btn-primary:hover,
.notice-result__body .notice-download .btn-primary:focus {
    background: #0d283d;
}

.notice-result__body .notice-full-body .notice-quote {
    display: block;
    font-style: italic;
    font-size: 0.95rem;
    color: rgba(31, 31, 31, 0.75);
    margin-top: 0.75rem;
}

.notice-result__body .notice-full-body .notice-proof {
    display: block;
    font-style: italic;
    font-size: 0.95rem;
    color: rgba(31, 31, 31, 0.75);
    margin-top: 1rem;
    line-height: 1.6;
}

.notice-wales-people .notice-proof-card {
    background: rgba(18, 54, 82, 0.05);
    border: 1px solid rgba(18, 54, 82, 0.12);
    border-radius: 10px;
    padding: 1.2rem 1.4rem;
    margin: 1rem 0 1.4rem;
    position: relative;
    overflow: hidden;
    --nw-people-guilloche: none;
}

.notice-wales-people .notice-proof-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--nw-people-guilloche);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    opacity: 0.28;
    pointer-events: none;
}

.notice-wales-people .notice-proof-card > * {
    position: relative;
    z-index: 1;
}

.notice-wales-people .notice-proof-meta {
    display: grid;
    gap: 0.35rem;
}

.notice-wales-people .notice-proof-brand {
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 1rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #123652;
    font-weight: 700;
}

.notice-wales-people .notice-proof-type {
    font-size: 0.75rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(18, 54, 82, 0.7);
    font-weight: 700;
}

.notice-wales-people .notice-proof-name {
    font-size: 1.4rem;
    color: #123652;
    font-weight: 700;
}

.notice-wales-people .notice-proof-line {
    font-size: 0.95rem;
    color: rgba(31, 31, 31, 0.75);
}

.notice-wales-people .notice-proof-security {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    margin-top: 1.1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(18, 54, 82, 0.12);
}

.notice-wales-people .notice-proof-label {
    display: block;
    font-size: 0.75rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #123652;
    font-weight: 700;
    margin-bottom: 0.35rem;
}

.notice-wales-people .notice-proof-fingerprint-value {
    display: inline-block;
    font-size: 0.95rem;
    letter-spacing: 0.12em;
    background: rgba(18, 54, 82, 0.08);
    border: 1px solid rgba(18, 54, 82, 0.16);
    padding: 0.3rem 0.5rem;
    border-radius: 6px;
    color: #123652;
}

.notice-wales-people .notice-proof-note {
    display: block;
    margin-top: 0.4rem;
    font-size: 0.85rem;
    color: rgba(31, 31, 31, 0.7);
}

.notice-wales-people .notice-proof-qr {
    text-align: center;
}

.notice-wales-people .notice-proof-qr-code {
    width: 112px;
    height: 112px;
    border-radius: 8px;
    border: 1px solid rgba(18, 54, 82, 0.2);
    padding: 0.25rem;
    background: #fff;
    display: inline-block;
    object-fit: contain;
}

.notice-wales-people .notice-proof-qr span {
    display: block;
    margin-top: 0.4rem;
    font-size: 0.72rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #123652;
    font-weight: 700;
}
.notice-result__footer {
    margin-top: 1.5rem;
    font-size: 0.95rem;
    color: rgba(31, 31, 31, 0.7);
}

.notice-empty {
    background: rgba(18, 54, 82, 0.05);
    padding: 1.5rem;
    border-left: 4px solid #b77b25;
}

.lookup-back {
    margin-top: 3rem;
}

.notice-wales-submit {
    background: linear-gradient(160deg, #f5f5f0 0%, #ffffff 100%);
    font-family: "Source Sans Pro", Arial, sans-serif;
    padding: 3rem 1.5rem 4rem;
}

.notice-wales-submit .submit-header {
    background: linear-gradient(135deg, #123652, #f2dca3);
    color: #fff;
    text-align: center;
    padding: 4rem 0 1.75rem;
    margin: -3rem -1.5rem 2rem;
    position: relative;
}

.notice-wales-submit .submit-header .container {
    max-width: 780px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.notice-wales-submit .submit-home {
    position: absolute;
    left: 1rem;
    top: 0.75rem;
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 0.95rem;
    letter-spacing: 0.04em;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
}

.notice-wales-submit .submit-home-link {
    position: absolute;
    right: 1rem;
    top: 0.75rem;
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 1.1rem;
    letter-spacing: 0.04em;
    color: #123652;
    font-weight: 700;
    text-decoration: none;
    text-transform: none;
}

.notice-wales-submit .submit-home-link:hover {
    text-decoration: underline;
}

.notice-wales-submit .submit-home:hover {
    text-decoration: underline;
}

.notice-wales-submit .submit-brand {
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 2.4rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin: 0 0 0.3rem;
    line-height: 1.05;
}

.notice-wales-submit .submit-strapline {
    margin: 0;
    font-size: 1.05rem;
    color: rgba(255, 255, 255, 0.9);
}

.notice-wales-submit .submit-container {
    max-width: 860px;
    margin: 0 auto;
    background: #ffffff;
    border: 1px solid rgba(18, 54, 82, 0.1);
    border-radius: 12px;
    padding: 2.75rem;
    box-shadow: 0 30px 50px rgba(18, 54, 82, 0.07);
}

.notice-wales-submit h1,
.notice-wales-submit h2,
.notice-wales-submit legend {
    font-family: "Libre Baskerville", Georgia, serif;
    color: #123652;
}

.submit-flow {
    background: rgba(18, 54, 82, 0.06);
    border-radius: 8px;
    padding: 1.5rem 2rem;
    margin-bottom: 2.5rem;
}

.submit-flow ol {
    margin: 0;
    padding-left: 1.25rem;
}

.notice-proof-box {
    background: rgba(18, 54, 82, 0.05);
    border: 1px solid rgba(18, 54, 82, 0.12);
    border-radius: 10px;
    padding: 1.25rem 1.4rem;
    font-style: italic;
    color: rgba(31, 31, 31, 0.78);
    line-height: 1.55;
    margin-bottom: 1.75rem;
}

.notice-proof-box h2 {
    font-style: normal;
    font-size: 1.1rem;
    margin: 0 0 0.4rem;
    color: #123652;
}

.notice-proof-box ul {
    margin: 0.4rem 0 0 1.2rem;
    padding: 0;
}

.notice-proof-box li {
    margin-bottom: 0.25rem;
}

.notice-proof-box .proof-source {
    margin-top: 0.5rem;
    font-size: 0.85rem;
    color: rgba(31, 31, 31, 0.6);
    font-style: normal;
}

.notice-proof-box .proof-quote {
    margin-top: 0.75rem;
    font-size: 0.9rem;
    color: rgba(31, 31, 31, 0.75);
    font-style: italic;
    line-height: 1.55;
}

.notice-submit-form fieldset {
    border: none;
    padding: 0;
    margin: 0 0 2rem 0;
}

.notice-submit-form legend {
    display: block;
    margin: 0.5rem 0 0.5rem;
}

.notice-submit-form label {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    margin-bottom: 1.25rem;
    font-weight: 600;
}

.notice-wales-admin textarea.body-preview-wide {
    width: 100%;
    min-height: 320px;
    font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
    font-size: 0.95rem;
}

.notice-submit-form input,
.notice-submit-form select,
.notice-submit-form textarea {
    font-size: 1.05rem;
    padding: 0.95rem 1rem;
}

.notice-submit-form .form-status {
    display: none;
    margin-bottom: 1.5rem;
    padding: 1rem 1.25rem;
    border-left: 4px solid #123652;
    background: rgba(18, 54, 82, 0.08);
}

.notice-submit-form .form-status.is-visible {
    display: block;
}

.notice-submit-form .form-status.status-success {
    border-left-color: #2d7d46;
    background: rgba(45, 125, 70, 0.12);
}

.notice-submit-form .form-status.status-error {
    border-left-color: #a82020;
    background: rgba(168, 32, 32, 0.12);
}

.notice-submit-form .form-status.status-info {
    border-left-color: #123652;
}

.notice-submit-form .expiry-date-field {
    display: none;
}

.notice-submit-form .expiry-date-field input {
    max-width: 240px;
}

.notice-submit-form textarea {
    min-height: 180px;
    resize: vertical;
}

.notice-submit-form .btn-large {
    padding: 1.1rem 2.4rem;
    font-size: 1.05rem;
}

.notice-submit-form textarea[readonly] {
    background: rgba(18, 54, 82, 0.04);
}

.notice-submit-form .form-hint {
    font-size: 0.9rem;
    color: rgba(31, 31, 31, 0.65);
}

.notice-submit-form .submit-summary {
    margin: 2.5rem 0;
    padding: 1.75rem;
    background: rgba(183, 165, 122, 0.12);
    border-radius: 8px;
}

.notice-submit-form .checkbox-label {
    display: block;
    margin: 0.5rem 0;
    font-weight: 600;
    color: #123652;
}

.notice-submit-form .checkbox-label input {
    margin-right: 0.6rem;
}

.notice-submit-form .recaptcha-block {
    margin-bottom: 2.5rem;
}

.notice-submit-form .form-note-strong {
    font-size: 1.05rem;
    color: #111;
    font-weight: 700;
    margin: 0 0 0.75rem;
}

.notice-submit-form .submit-actions {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.85rem;
}

.notice-submit-form .legal {
    font-size: 0.85rem;
    color: rgba(31, 31, 31, 0.6);
}

.notice-wales-edit .submit-container {
    max-width: 860px;
    margin: 0 auto;
    padding: 3rem 1.5rem;
}

.notice-wales-edit .notice-submit-form {
    background: #fff;
    border: 1px solid rgba(18, 54, 82, 0.08);
    border-radius: 10px;
    padding: 1.75rem;
    box-shadow: 0 10px 25px rgba(18, 54, 82, 0.06);
}

.notice-wales-edit .submit-intro h1 {
    font-size: 2rem;
    margin-bottom: 0.4rem;
}

.notice-wales-edit .submit-intro p {
    color: rgba(31, 31, 31, 0.7);
}

.notice-wales-law {
    background: linear-gradient(160deg, #f5f5f0 0%, #ffffff 100%);
    font-family: "Source Sans Pro", Arial, sans-serif;
    padding: 3rem 1.5rem 4rem;
}

.notice-wales-law .law-header {
    background: linear-gradient(135deg, #123652, #f2dca3);
    color: #fff;
    text-align: center;
    padding: 4rem 0 1.75rem;
    margin: -3rem -1.5rem 2rem;
    position: relative;
}

.notice-wales-law .law-header .container {
    max-width: 780px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.notice-wales-law .law-home {
    position: absolute;
    right: 1rem;
    top: 0.75rem;
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 1.1rem;
    letter-spacing: 0.04em;
    color: #123652;
    font-weight: 700;
    text-decoration: none;
    text-transform: none;
}

.notice-wales-law .law-home:hover {
    text-decoration: underline;
}

.notice-wales-law .law-brand {
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 2.8rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin: 0 0 0.3rem;
    line-height: 1.05;
    font-weight: 700;
}

.notice-wales-law .law-strapline {
    margin: 0;
    font-size: 1.1rem;
    color: rgba(255, 255, 255, 0.9);
}

.notice-wales-law .law-content {
    background: #fff;
    border: 1px solid rgba(18, 54, 82, 0.08);
    border-radius: 12px;
    padding: 2.5rem;
    box-shadow: 0 18px 38px rgba(18, 54, 82, 0.07);
}

.notice-wales-law .law-section + .law-section {
    margin-top: 2rem;
}

.notice-wales-law .law-section h2 {
    font-family: "Libre Baskerville", Georgia, serif;
    color: #123652;
    margin-bottom: 0.35rem;
}

.notice-wales-law .law-definition-adopt h3,
.notice-wales-law .law-definition-adopt h4 {
    font-family: "Libre Baskerville", Georgia, serif;
    color: #123652;
}

.notice-wales-law .law-definition-adopt h3 {
    margin: 1.75rem 0 0.35rem;
    font-size: 1.75rem;
    letter-spacing: 0.02em;
}

.notice-wales-law .law-definition-adopt h4 {
    margin: 1.25rem 0 0.35rem;
    font-size: 1.25rem;
}

.notice-wales-law .law-definition-adopt h5 {
    margin: 1rem 0 0.25rem;
    font-size: 1.05rem;
    color: rgba(31, 31, 31, 0.82);
}

.notice-wales-law .submit-intro h1 {
    font-family: "Libre Baskerville", Georgia, serif;
    color: #123652;
    font-size: 2.2rem;
    margin: 0 0 0.5rem;
}

.notice-wales-law .law-section p {
    margin: 0.5rem 0;
    line-height: 1.65;
    color: rgba(31, 31, 31, 0.8);
}

.notice-wales-law .law-list,
.notice-wales-law .law-steps {
    margin: 0.75rem 0 0 1.25rem;
    padding: 0;
    line-height: 1.6;
}

.notice-wales-law .law-footnote-inline {
    display: block;
    margin-top: 0.2rem;
    font-size: 0.95rem;
    color: rgba(31, 31, 31, 0.65);
}

.notice-wales-law .law-oed-definitions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.25rem;
    margin-top: 1rem;
}

.notice-wales-law .law-oed-definitions figure {
    margin: 0;
}

.notice-wales-law .law-oed-definitions img {
    display: block;
    width: 100%;
    height: auto;
    border: 1px solid rgba(18, 54, 82, 0.12);
    border-radius: 10px;
    background: #fff;
}

.notice-wales-law .law-oed-definitions figcaption {
    margin-top: 0.5rem;
    font-size: 0.95rem;
    color: rgba(31, 31, 31, 0.65);
}

@media (min-width: 720px) {
    .notice-wales-law .law-oed-definitions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;
    }
}

.notice-wales-law blockquote {
    margin: 1rem 0;
    padding: 1rem 1.25rem;
    background: rgba(18, 54, 82, 0.05);
    border-left: 4px solid #123652;
    font-style: italic;
    color: rgba(31, 31, 31, 0.82);
}

.notice-wales-law blockquote cite {
    display: block;
    margin-top: 0.5rem;
    font-style: normal;
    font-size: 0.95rem;
    color: rgba(31, 31, 31, 0.65);
}

.notice-wales-law .law-steps li {
    margin-bottom: 0.5rem;
}

.notice-wales-law .law-disclaimer {
    margin-top: 1rem;
    font-size: 0.95rem;
    color: rgba(31, 31, 31, 0.65);
}

.notice-wales-edit .form-status {
    margin-bottom: 1.5rem;
}

.notice-wales-edit .submit-success {
    background: rgba(18, 54, 82, 0.05);
    border-radius: 10px;
    padding: 1.5rem 1.75rem;
    border-left: 4px solid #123652;
}

.notice-submit-form .form-subtitle {
    margin: 1.5rem 0 0.5rem;
    font-size: 1.1rem;
    font-weight: 700;
    color: #123652;
}

.submit-success {
    text-align: center;
}

.submit-success a.btn-primary {
    margin-top: 2rem;
}

.notice-wales-verify {
    background: linear-gradient(160deg, #f9f9f5 0%, #ffffff 100%);
    padding: 4rem 1.5rem;
    font-family: "Source Sans Pro", Arial, sans-serif;
}

.notice-wales-admin .body-preview-wide {
    width: 100%;
    min-height: 280px;
    font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
    font-size: 0.95rem;
}

.notice-wales-verify .verify-container {
    max-width: 640px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid rgba(18, 54, 82, 0.1);
    border-radius: 12px;
    padding: 2.5rem;
    text-align: center;
    box-shadow: 0 20px 45px rgba(18, 54, 82, 0.08);
}

.notice-wales-verify h1 {
    font-family: "Libre Baskerville", Georgia, serif;
    color: #123652;
    margin-bottom: 1.5rem;
}

.notice-wales-verify p {
    margin-bottom: 1rem;
    line-height: 1.6;
}

.notice-wales-verify .verify-actions {
    margin-top: 2rem;
}

.notice-address-verify {
    margin-top: 1.5rem;
    padding: 1.25rem;
    background: rgba(18, 54, 82, 0.04);
    border: 1px solid rgba(18, 54, 82, 0.12);
    border-radius: 8px;
}

.notice-detail-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}

.notice-detail-grid form {
    width: 100%;
}

.notice-address-form {
    display: grid;
    gap: 0.75rem;
    margin-top: 0.75rem;
}

.notice-address-form label {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    font-weight: 600;
}

.notice-address-form input {
    padding: 0.6rem 0.85rem;
    border: 1px solid rgba(18, 54, 82, 0.25);
    border-radius: 4px;
}

.notice-address-status {
    font-size: 0.95rem;
    color: rgba(18, 54, 82, 0.8);
}

.notice-address-status.status-error {
    color: #a82020;
}

.notice-address-status.status-success {
    color: #2d7d46;
}

.notice-address-full {
    white-space: pre-wrap;
    margin-top: 1rem;
    padding: 1rem;
    background: #fff;
    border: 1px dashed rgba(18, 54, 82, 0.35);
    border-radius: 6px;
}

.notice-topnav {
    display: flex;
    justify-content: flex-end;
    gap: 1rem;
    padding: 0.75rem 1.5rem;
    background: rgba(18, 54, 82, 0.06);
    border-bottom: 1px solid rgba(18, 54, 82, 0.08);
    font-family: "Source Sans Pro", Arial, sans-serif;
}

.notice-topnav a {
    color: #123652;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.9rem;
}

.notice-topnav a:hover {
    color: #b77b25;
}

.notice-contact {
    background: linear-gradient(160deg, #f5f5f0 0%, #ffffff 100%);
    font-family: "Source Sans Pro", Arial, sans-serif;
    color: #123652;
    min-height: 100vh;
}

.contact-hero {
    background: linear-gradient(135deg, #123652, #f2dca3);
    color: #fff;
    text-align: center;
    padding: 4rem 1.5rem 3rem;
    position: relative;
}

.contact-hero__inner h1 {
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 2.4rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    margin: 0.4rem 0;
}

.contact-home {
    color: #0e2c3f;
    text-decoration: none;
    border-bottom: 1px dotted rgba(255, 255, 255, 0.6);
}

.contact-home-link {
    position: absolute;
    right: 1rem;
    top: 0.75rem;
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 1.1rem;
    letter-spacing: 0.04em;
    color: #123652;
    font-weight: 700;
    text-decoration: none;
    text-transform: none;
}

.contact-home-link:hover {
    text-decoration: underline;
}

.contact-home:hover {
    border-bottom-color: #fff;
}

.contact-response {
    margin: 0;
    font-size: 0.95rem;
    letter-spacing: 0.04em;
}

.contact-subhead {
    margin-top: 0.25rem;
    font-size: 1.05rem;
}

.contact-layout {
    max-width: 1100px;
    margin: 1.5rem auto 0;
    padding: 0 1.5rem 3rem;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 1.5rem;
}

.contact-card {
    background: #fff;
    border: 1px solid rgba(18, 54, 82, 0.08);
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 18px 40px rgba(18, 54, 82, 0.08);
}

.contact-card h2 {
    margin-top: 0;
    font-size: 1.4rem;
    font-family: "Libre Baskerville", Georgia, serif;
}

.contact-form textarea {
    min-height: 160px;
}

.contact-inline-note {
    margin: 0 0 1rem;
    font-size: 0.95rem;
    color: rgba(18, 54, 82, 0.85);
}

.contact-meta {
    font-size: 0.95rem;
    color: rgba(31, 31, 31, 0.7);
    margin-top: 0.5rem;
}

.contact-honeypot {
    position: absolute;
    left: -9999px;
    opacity: 0;
    pointer-events: none;
}

.contact-recaptcha h3 {
    margin: 0 0 0.5rem;
    font-size: 1.05rem;
}

.contact-side {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.contact-note {
    background: rgba(18, 54, 82, 0.08);
    border: 1px solid rgba(18, 54, 82, 0.12);
    border-radius: 10px;
    padding: 1.25rem 1.35rem;
    line-height: 1.6;
}

.contact-note h3 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    font-size: 1.1rem;
}

.contact-note ul {
    margin: 0 0 0 1.1rem;
    padding: 0;
}

.contact-note li {
    margin-bottom: 0.35rem;
}

.contact-success {
    max-width: 860px;
    margin: 1.5rem auto 0;
    padding: 1.5rem 1.75rem;
    background: #fff;
    border: 1px solid rgba(18, 54, 82, 0.12);
    border-radius: 10px;
    box-shadow: 0 18px 40px rgba(18, 54, 82, 0.08);
    font-size: 1.1rem;
    color: #123652;
    text-align: center;
}

.contact-prompt {
    max-width: 860px;
    margin: 1.5rem auto 0;
    padding: 1.25rem 1.5rem;
    background: #fff;
    border: 1px solid rgba(18, 54, 82, 0.12);
    border-radius: 10px;
    box-shadow: 0 18px 40px rgba(18, 54, 82, 0.08);
    font-size: 1.05rem;
    color: #123652;
    text-align: center;
}

.notice-footer {
    background: #0f283c;
    color: #e9e9e3;
    padding: 2.5rem 1.5rem;
    margin-top: 3rem;
}

.notice-footer__inner {
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
    text-align: center;
}

.notice-footer__brand a {
    color: #ffffff;
    font-family: "Libre Baskerville", Georgia, serif;
    font-size: 1.4rem;
    text-decoration: none;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.notice-footer__links {
    display: flex;
    justify-content: center;
    gap: 1.4rem;
    flex-wrap: wrap;
}

.notice-footer__links a {
    color: #f2dca3;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 0.95rem;
}

.notice-footer__links a:hover {
    color: #ffffff;
}

.notice-footer__note {
    margin: 0.4rem 0 0;
    font-size: 0.95rem;
    color: rgba(233, 233, 227, 0.75);
}

@media (max-width: 768px) {
    .notice-wales-front .latest-item {
        grid-template-columns: 1fr;
    }

    .notice-submit-form .submit-actions {
        align-items: stretch;
    }

    .notice-topnav {
        justify-content: center;
        flex-wrap: wrap;
    }

    .contact-hero__inner h1 {
        font-size: 2rem;
    }

    .contact-layout {
        grid-template-columns: 1fr;
        margin-top: 1rem;
    }

    .notice-footer__links {
        gap: 0.85rem;
    }

    .contact-success {
        margin-top: 1rem;
    }

    .contact-prompt {
        margin-top: 1rem;
    }

    .notice-wales-people .notice-proof-security {
        flex-direction: column;
        align-items: flex-start;
    }

    .notice-wales-people .notice-proof-qr {
        align-self: center;
    }

}
