@import "https://fonts.googleapis.com/css2?family=Public+Sans:wght@400;500;600;700&display=swap";:root{--anu-black:#131313;--anu-gray-900:#252525;--anu-gray-700:#3a3a3a;--anu-gray-500:#6b6b6b;--anu-gray-200:#d9d9d9;--anu-gray-100:#f6f6f6;--anu-gold:#be830e;--anu-gold-btn:#d19010;--anu-gold-btn-hover:#e2a22d;--anu-burnt-orange:#be4f0e;--anu-cyan:#00a0cc;--anu-cream:#f2e9db;--card-radius:20px;--btn-radius:8px;--card-shadow:0 4px 8px #0000001a;--card-shadow-hover:0 8px 20px #00000029}*{box-sizing:border-box}body{color:var(--anu-black);background:var(--anu-gray-100);margin:0;padding:2rem;font-family:Public Sans,system-ui,sans-serif;line-height:1.6}main{max-width:60rem;margin:0 auto}main.wide{max-width:80rem}h1,h2,h3{color:var(--anu-black);font-weight:700;line-height:1.25}h1{border-bottom:3px solid var(--anu-gold-btn);padding-bottom:.5rem;display:inline-block}a{color:var(--anu-burnt-orange)}a:hover{color:var(--anu-gold)}:focus-visible{outline:3px solid var(--anu-cyan);outline-offset:2px}nav[aria-label=site]{background:var(--anu-black);border-radius:var(--card-radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;max-width:80rem;margin:0 auto 2rem;padding:.75rem 1rem;display:flex}nav[aria-label=site] .nav-links,nav[aria-label=site] .nav-user{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}nav[aria-label=site] .nav-user form{margin:0}nav[aria-label=site] a{color:#fff;border-radius:var(--btn-radius);padding:.5rem .9rem;font-size:.95rem;font-weight:600;text-decoration:none}nav[aria-label=site] a:hover{background:var(--anu-gray-900);color:var(--anu-gold-btn-hover)}nav[aria-label=site] a[aria-current=page]{background:var(--anu-gold-btn);color:var(--anu-black)}nav[aria-label=site] .nav-username{color:var(--anu-gray-200);padding:.5rem .2rem;font-size:.9rem;font-weight:600}nav[aria-label=site] .nav-logout{color:#fff;border-color:#fff;padding:.4rem .9rem;font-size:.9rem}nav[aria-label=site] .nav-logout:hover{color:#fff;background:#ffffff1a}form.filters{background:var(--anu-cream);border-radius:var(--card-radius);margin-block:1.5rem;padding:1.5rem;display:block}form.filters .filters-row{flex-wrap:wrap;gap:1.5rem;display:flex}form.filters label{min-width:8rem;color:var(--anu-gray-700);flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;display:flex}form.filters input,form.filters select{border:none;border-bottom:1px solid var(--anu-gray-500);background:0 0;border-radius:0;padding:.35rem 0}form.filters input:focus-visible,form.filters select:focus-visible{outline-offset:4px}form.filters .filters-actions{border-top:1px solid #0000001a;align-items:center;gap:1rem;margin-top:1.25rem;padding-top:1.25rem;display:flex}form.filters .filter-icon{width:1.5rem;height:1.5rem;color:var(--anu-gold);flex-shrink:0}form.filters .filters-actions .link-button,form.filters button[type=submit]{border-radius:999px}form{flex-wrap:wrap;align-items:center;gap:.5rem;margin-block:1.5rem;display:flex}input,select{min-width:8rem;font:inherit;border:1px solid var(--anu-gray-200);color:var(--anu-black);border-radius:6px;flex:1;padding:.45rem .6rem}button{font:inherit;cursor:pointer;background:var(--anu-gold-btn);color:var(--anu-black);border-radius:var(--btn-radius);border:none;padding:.5rem 1.25rem;font-weight:600;transition:background-color .15s}button:hover{background:var(--anu-gold-btn-hover)}.btn-primary{background:var(--anu-gold-btn);color:var(--anu-black);border-radius:var(--btn-radius);padding:.5rem 1.25rem;font-weight:600;text-decoration:none;transition:background-color .15s;display:inline-block}.btn-primary:hover{background:var(--anu-gold-btn-hover);color:var(--anu-black)}.link-button{border:1px solid var(--anu-gold-btn);color:var(--anu-black);cursor:pointer;background:0 0;padding:.45rem 1.1rem;font-weight:600;text-decoration:none;display:inline-block}.link-button:hover{color:var(--anu-black);background:#d190101a}.residence-grid{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1.5rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.residence-card,.hall-card{border-radius:var(--card-radius);box-shadow:var(--card-shadow);background:#fff;flex-direction:column;transition:box-shadow .15s,transform .15s;display:flex;overflow:hidden}.residence-card:hover,.hall-card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-2px)}.hall-rooms{border-top:1px solid var(--anu-gray-200)}.hall-rooms summary{cursor:pointer;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600}.room-list{margin:0;padding:0 1.5rem 1rem;list-style:none}.room-card{border-bottom:1px solid var(--anu-gray-100);justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 0;display:flex}.room-card:last-child{border-bottom:none}.room-card-info{flex-direction:column;gap:.15rem;display:flex}.room-card-name{font-weight:600}.room-card-price{font-size:.9rem}.compare-checkbox-label{align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;display:flex}.compare-bar{margin:0 0 1rem}.compare-empty{margin:2rem 0}.compare-table-wrapper{margin:1.5rem 0;overflow-x:auto}.compare-table{border-collapse:collapse;width:100%;min-width:40rem}.compare-table th,.compare-table td{border:1px solid var(--anu-gray-200);text-align:left;vertical-align:top;padding:.75rem 1rem}.compare-table thead th{background:var(--anu-black);color:#fff}.compare-table tbody th{background:var(--anu-gray-100);white-space:nowrap}.card-image-link{line-height:0;display:block}.card-image-link img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.hero-image{aspect-ratio:16/9;object-fit:cover;border-radius:var(--card-radius);width:100%;box-shadow:var(--card-shadow);margin-block:1rem}.rate-bar{background:var(--anu-black);color:#fff;text-align:center;margin:0;padding:.5rem 1rem;font-size:.9rem;font-weight:600}.rate-bar strong{font-weight:700}.card-body{text-align:center;flex-direction:column;flex:1;gap:.5rem;padding:1.25rem 1.5rem 1.5rem;display:flex}.card-body h2{margin:0;font-size:1.15rem}.card-body h2 a{color:var(--anu-black);text-decoration:none}.card-body h2 a:hover{color:var(--anu-gold)}.card-subtitle{color:var(--anu-gray-500);margin:0;font-size:.85rem}.card-meta{color:var(--anu-gray-700);margin:0;font-size:.8rem;font-weight:600}.card-blurb{color:var(--anu-gray-700);margin:0;font-size:.9rem}.tags{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.tags li{background:var(--anu-gray-100);color:var(--anu-gray-700);border-radius:999px;padding:.2rem .7rem;font-size:.8rem}.card-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin-top:auto;padding-top:.5rem;display:flex}.card-actions form{margin:0}.map-wrapper{position:relative}.map-container{border-radius:var(--card-radius);height:26rem;min-height:20rem;box-shadow:var(--card-shadow);background:#fff;margin-block:1.5rem;overflow:hidden}.map-container.small{height:18rem}.map-refresh-btn{z-index:500;color:var(--anu-black);border:1px solid var(--anu-gray-200);border-radius:var(--btn-radius);cursor:pointer;box-shadow:var(--card-shadow);background:#fff;padding:.3rem .6rem;font-size:.8rem;font-weight:600;position:absolute;top:1.75rem;right:.75rem}.map-refresh-btn:hover{background:var(--anu-gray-100)}.no-results{color:var(--anu-gray-500);font-style:italic}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hero-banner{border-radius:var(--card-radius);box-shadow:var(--card-shadow);margin-bottom:1.5rem;position:relative;overflow:hidden}.hero-banner img{aspect-ratio:16/7;object-fit:cover;width:100%;display:block}.hero-banner-overlay{background:linear-gradient(90deg,#131313a6 0%,#13131340 65%,#13131300 100%);flex-direction:column;justify-content:center;padding:2rem 2.5rem;display:flex;position:absolute;inset:0}.hero-banner-overlay h1{color:#fff;border-bottom-color:var(--anu-gold-btn);margin:0;font-size:clamp(1.75rem,4vw,2.75rem)}.hero-banner-overlay p{color:#fff;max-width:32rem;margin:.75rem 0 0}.quick-start{margin-bottom:1.5rem}.quick-start h2{margin-bottom:.25rem}.quick-start>p{color:var(--anu-gray-700);margin-top:0}.quick-start-grid{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.quick-start-card{border:1px solid var(--anu-gray-200);border-radius:var(--card-radius);height:100%;box-shadow:var(--card-shadow);color:var(--anu-black);background:#fff;padding:1rem 1.25rem;text-decoration:none;transition:box-shadow .15s,transform .15s;display:block}.quick-start-card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-2px)}.quick-start-card-title{font-weight:600;display:block}.quick-start-card-desc{color:var(--anu-gray-700);margin-top:.35rem;font-size:.9rem;display:block}.quick-start-card-featured{background:var(--anu-black);border-color:var(--anu-black);color:#fff}.quick-start-card-featured .quick-start-card-desc{color:var(--anu-gray-200)}.cta-bar{background:var(--anu-black);color:#fff;border-radius:var(--card-radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.25rem 1.75rem;display:flex}.cta-bar h2{color:#fff;margin:0 0 .25rem;font-size:1.25rem}.cta-bar p{color:var(--anu-gray-200);margin:0}.cta-bar .btn-primary{flex-shrink:0}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.75rem;margin:1rem 0 1.5rem;padding:0;list-style:none;display:grid}.gallery-grid li{border-radius:var(--btn-radius);box-shadow:var(--card-shadow);overflow:hidden}.gallery-grid img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.room-tabs{border:none;margin:1rem 0 1.5rem;padding:0}.room-tab-radio{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.room-tab-list{border-bottom:2px solid var(--anu-gray-200);flex-wrap:wrap;gap:.25rem;margin-bottom:1rem;display:flex}.room-tab-label{cursor:pointer;color:var(--anu-gray-500);border-bottom:3px solid #0000;margin-bottom:-2px;padding:.6rem 1.1rem;font-size:.9rem;font-weight:600}.room-tab-panel{display:none}.room-tab-radio:first-of-type:checked~.room-tab-panels .room-tab-panel:first-of-type,.room-tab-radio:nth-of-type(2):checked~.room-tab-panels .room-tab-panel:nth-of-type(2),.room-tab-radio:nth-of-type(3):checked~.room-tab-panels .room-tab-panel:nth-of-type(3),.room-tab-radio:nth-of-type(4):checked~.room-tab-panels .room-tab-panel:nth-of-type(4),.room-tab-radio:nth-of-type(5):checked~.room-tab-panels .room-tab-panel:nth-of-type(5),.room-tab-radio:nth-of-type(6):checked~.room-tab-panels .room-tab-panel:nth-of-type(6),.room-tab-radio:nth-of-type(7):checked~.room-tab-panels .room-tab-panel:nth-of-type(7),.room-tab-radio:nth-of-type(8):checked~.room-tab-panels .room-tab-panel:nth-of-type(8),.room-tab-radio:nth-of-type(9):checked~.room-tab-panels .room-tab-panel:nth-of-type(9),.room-tab-radio:nth-of-type(10):checked~.room-tab-panels .room-tab-panel:nth-of-type(10),.room-tab-radio:nth-of-type(11):checked~.room-tab-panels .room-tab-panel:nth-of-type(11),.room-tab-radio:nth-of-type(12):checked~.room-tab-panels .room-tab-panel:nth-of-type(12){display:block}.room-tab-radio:first-of-type:checked~.room-tab-list .room-tab-label:first-of-type,.room-tab-radio:nth-of-type(2):checked~.room-tab-list .room-tab-label:nth-of-type(2),.room-tab-radio:nth-of-type(3):checked~.room-tab-list .room-tab-label:nth-of-type(3),.room-tab-radio:nth-of-type(4):checked~.room-tab-list .room-tab-label:nth-of-type(4),.room-tab-radio:nth-of-type(5):checked~.room-tab-list .room-tab-label:nth-of-type(5),.room-tab-radio:nth-of-type(6):checked~.room-tab-list .room-tab-label:nth-of-type(6),.room-tab-radio:nth-of-type(7):checked~.room-tab-list .room-tab-label:nth-of-type(7),.room-tab-radio:nth-of-type(8):checked~.room-tab-list .room-tab-label:nth-of-type(8),.room-tab-radio:nth-of-type(9):checked~.room-tab-list .room-tab-label:nth-of-type(9),.room-tab-radio:nth-of-type(10):checked~.room-tab-list .room-tab-label:nth-of-type(10),.room-tab-radio:nth-of-type(11):checked~.room-tab-list .room-tab-label:nth-of-type(11),.room-tab-radio:nth-of-type(12):checked~.room-tab-list .room-tab-label:nth-of-type(12){color:var(--anu-black);border-bottom-color:var(--anu-gold-btn)}.room-tab-radio:first-of-type:focus-visible~.room-tab-list .room-tab-label:first-of-type,.room-tab-radio:nth-of-type(2):focus-visible~.room-tab-list .room-tab-label:nth-of-type(2),.room-tab-radio:nth-of-type(3):focus-visible~.room-tab-list .room-tab-label:nth-of-type(3),.room-tab-radio:nth-of-type(4):focus-visible~.room-tab-list .room-tab-label:nth-of-type(4),.room-tab-radio:nth-of-type(5):focus-visible~.room-tab-list .room-tab-label:nth-of-type(5),.room-tab-radio:nth-of-type(6):focus-visible~.room-tab-list .room-tab-label:nth-of-type(6),.room-tab-radio:nth-of-type(7):focus-visible~.room-tab-list .room-tab-label:nth-of-type(7),.room-tab-radio:nth-of-type(8):focus-visible~.room-tab-list .room-tab-label:nth-of-type(8),.room-tab-radio:nth-of-type(9):focus-visible~.room-tab-list .room-tab-label:nth-of-type(9),.room-tab-radio:nth-of-type(10):focus-visible~.room-tab-list .room-tab-label:nth-of-type(10),.room-tab-radio:nth-of-type(11):focus-visible~.room-tab-list .room-tab-label:nth-of-type(11),.room-tab-radio:nth-of-type(12):focus-visible~.room-tab-list .room-tab-label:nth-of-type(12){outline:3px solid var(--anu-cyan);outline-offset:2px}.room-rate-table{border-collapse:collapse;border-radius:var(--btn-radius);width:100%;max-width:34rem;box-shadow:var(--card-shadow);background:#fff;overflow:hidden}.room-rate-table th,.room-rate-table td{text-align:left;border-bottom:1px solid var(--anu-gray-200);vertical-align:top;padding:.6rem 1rem}.room-rate-table th{width:40%;color:var(--anu-gray-700);font-weight:600}.room-rate-table tr:last-child th,.room-rate-table tr:last-child td{border-bottom:none}.room-rate-table ul{margin:0;padding-left:1.1rem}.room-interest{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.room-interest form{margin:0}.room-interest-count{color:var(--anu-gray-500);margin:0;font-size:.85rem}form.auth-form{max-width:24rem}form.auth-form .filters-row{flex-direction:column;gap:1rem}form.auth-form label,form.auth-form input{width:100%}.auth-error{color:#a12b1f;border-radius:var(--btn-radius);background:#fdecea;margin-bottom:1rem;padding:.6rem 1rem;font-size:.9rem}.auth-switch{margin-top:1rem;font-size:.9rem}.review-stats{font-size:.95rem}.review-list{flex-direction:column;gap:.75rem;margin:1rem 0;padding:0;list-style:none;display:flex}.review{border-radius:var(--btn-radius);box-shadow:var(--card-shadow);background:#fff;padding:.9rem 1.1rem}.review-meta{color:var(--anu-gray-500);margin:0 0 .35rem;font-size:.85rem}.review-body{margin:0}form.review-form{flex-direction:column;align-items:flex-start;gap:.75rem;max-width:32rem}form.review-form label{width:100%;color:var(--anu-gray-700);flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;display:flex}form.review-form textarea{font:inherit;border:1px solid var(--anu-gray-200);color:var(--anu-black);resize:vertical;border-radius:6px;padding:.5rem .6rem}.match-list{counter-reset:match;flex-direction:column;gap:.75rem;margin:1rem 0;padding:0;list-style:none;display:flex}.match-card{border-radius:var(--card-radius);box-shadow:var(--card-shadow);background:#fff;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.match-score{background:var(--anu-cream);width:4rem;height:4rem;color:var(--anu-black);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.match-body h3{margin:0 0 .25rem;font-size:1.05rem}.match-reasons{color:var(--anu-gray-700);margin:0;padding-left:1.1rem;font-size:.85rem}.apply-note{color:var(--anu-gray-700);max-width:32rem;margin:0;font-size:.9rem}.policy-note{background:var(--anu-cream);border-radius:var(--card-radius);margin:1.5rem 0;padding:1rem 1.25rem}.policy-note h2{margin:0 0 .5rem;font-size:1rem}.policy-note ul{margin:0 0 .5rem;padding-left:1.1rem;font-size:.9rem}.policy-note-gap{color:var(--anu-gray-700);margin:0;font-size:.85rem;font-style:italic}.room-card-cost{color:var(--anu-gray-700);margin:0;font-size:.8rem}.contract-card{border-radius:var(--card-radius);box-shadow:var(--card-shadow);background:#fff;margin:1rem 0;padding:1.25rem 1.5rem}.contract-card h2{margin:0 0 .5rem;font-size:1.1rem}.contract-card form{margin-top:.75rem}.contract-card .filters-actions{align-items:center;gap:1rem;margin-top:.75rem;display:flex}.contract-document{border-radius:var(--card-radius);box-shadow:var(--card-shadow);background:#fff;max-width:36rem;margin:1rem 0;padding:1.5rem 1.75rem}.contract-document dl{grid-template-columns:max-content 1fr;gap:.4rem 1rem;margin:1rem 0;display:grid}.contract-document dt{color:var(--anu-gray-700);font-weight:600}.contract-document dd{margin:0}.contract-status{margin:0;font-size:.9rem}.cancellation-record{background:var(--anu-cream);border-radius:var(--btn-radius);padding:.75rem 1rem;font-size:.9rem}.checkbox-row{align-items:flex-start;gap:.5rem;flex-direction:row!important;font-weight:400!important;display:flex!important}.checkbox-row input[type=checkbox]{flex:none;width:auto;margin-top:.2rem}.direct-debit-widget{background:var(--anu-cream);border-radius:var(--card-radius);margin:0 0 1.5rem;padding:1rem 1.25rem;display:inline-block}.direct-debit-date{margin:.35rem 0;font-size:1.3rem;font-weight:700}.request-list{flex-direction:column;gap:.75rem;margin:1rem 0 2rem;padding:0;list-style:none;display:flex}.request{border-radius:var(--btn-radius);box-shadow:var(--card-shadow);background:#fff;padding:.9rem 1.1rem}.request-meta{color:var(--anu-gray-500);margin:0 0 .35rem;font-size:.85rem}.request-body{margin:0 0 .5rem}.request form{margin:0}form.request-form{flex-direction:column;align-items:flex-start;gap:.75rem;max-width:32rem;margin-bottom:1rem}form.request-form label{width:100%;color:var(--anu-gray-700);flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;display:flex}form.request-form textarea{font:inherit;border:1px solid var(--anu-gray-200);color:var(--anu-black);resize:vertical;border-radius:6px;padding:.5rem .6rem}
