/* RAMRE client account and shared content components. */
.portal-app{--portal-ink:#26272c;--portal-muted:#646771;--portal-gold:#b4122a;--portal-line:#e4e4e9;--portal-surface:#fafafa;color:var(--portal-ink);background:#ffffff;min-height:70vh;padding:58px 28px 72px;line-height:1.55}
.portal-app *, .portal-app *::before,.portal-app *::after{box-sizing:border-box}.portal-app [hidden]{display:none!important}.portal-app h1,.portal-app h2,.portal-app h3,.portal-app p{margin:0}.portal-app h1{font-size:clamp(30px,4vw,48px);line-height:1.13;font-weight:500;letter-spacing:-1.2px}.portal-app h2{font-size:27px;line-height:1.2;font-weight:500;letter-spacing:-.55px}.portal-app h3{font-size:19px;line-height:1.35;font-weight:500}.portal-app a{color:inherit}.portal-app button,.portal-app input,.portal-app select,.portal-app textarea{font:inherit}.portal-app button:disabled{cursor:wait;opacity:.6}.portal-app :focus-visible{outline:3px solid #b4122a;outline-offset:4px}.portal-app .portal-eyebrow{font-size:11px;font-weight:600;letter-spacing:1.5px;line-height:1.5;color:#b4122a}.portal-muted{color:var(--portal-muted)}.portal-small{font-size:13px}.portal-app a:hover{text-decoration:underline;text-underline-offset:4px}.portal-app .gold-button:hover,.portal-app .outline-button:hover{text-decoration:none}.gold-button,.outline-button{display:inline-flex;justify-content:center;align-items:center;gap:14px;min-height:46px;padding:11px 20px;border-radius:7px;font-size:14px;line-height:1.45;text-decoration:none!important;font-weight:500;cursor:pointer;transition:background .18s,box-shadow .18s;border:1px solid transparent}.gold-button{background:#b4122a;color:#ffffff!important}.gold-button:hover{background:#940d21}.outline-button{background:transparent;color:#26272c!important;border-color:#e4e4e9}.outline-button:hover{background:#f5f5f7}.portal-loading{padding:45px;text-align:center;color:#646771}.portal-auth{display:grid;grid-template-columns:1fr 1fr;max-width:1080px;margin:auto;border:1px solid var(--portal-line);border-radius:15px;overflow:hidden;background:#ffffff;box-shadow:0 18px 65px #24242c10}.portal-welcome{background:#ffffff;padding:58px 44px;color:#fff;display:flex;flex-direction:column;position:relative;overflow:hidden}.portal-welcome:after{content:"";position:absolute;width:370px;height:370px;border:1px solid #b4122a26;border-radius:50%;right:-220px;bottom:-90px;pointer-events:none}.portal-welcome .portal-eyebrow{color:#b4122a;margin-bottom:35px}.portal-welcome h1{font-size:clamp(30px,3.4vw,44px);line-height:1.18;letter-spacing:-1px;margin-bottom:22px}.portal-welcome>p:not(.portal-eyebrow){max-width:330px;color:#646771;font-size:15px}.portal-welcome ul{margin:39px 0;padding:0;list-style:none;display:grid;gap:25px}.portal-welcome li{display:flex;gap:16px;align-items:flex-start}.portal-welcome li>span{width:37px;height:37px;display:grid;place-items:center;border:1px solid #b4122a33;border-radius:50%;color:#b4122a;flex-shrink:0;font-size:22px}.portal-welcome li strong{font-size:14px;font-weight:500}.portal-welcome li p{font-size:13px;color:#646771;margin-top:5px;max-width:280px}.portal-welcome>a{margin-top:auto;font-size:14px;display:flex;justify-content:space-between;max-width:260px;border-bottom:1px solid #e4e4e9;padding-bottom:13px}.portal-auth-card{padding:45px 43px}.portal-auth-card>.portal-eyebrow{margin-bottom:10px}.portal-auth-card>h2{margin-bottom:13px}.portal-auth-card>.portal-muted{font-size:14px;margin-bottom:27px}.portal-field{display:flex;flex-direction:column;gap:8px;margin:0 0 18px;font-size:14px}.portal-field>span{font-weight:500}.portal-field small{font-size:12px;font-weight:400;color:#646771}.portal-field input,.portal-field select,.portal-field textarea{width:100%;background:#ffffff;border:1px solid #e4e4e9;border-radius:7px;padding:12px 13px;min-height:47px;outline-offset:2px;color:#26272c;line-height:1.45}.portal-field input:focus,.portal-field select:focus,.portal-field textarea:focus{border-color:#b4122a;box-shadow:0 0 0 3px #b4122a18}.portal-field textarea{resize:vertical;min-height:125px}.portal-check{display:flex;align-items:flex-start;gap:10px;font-size:12px;color:#646771;line-height:1.55;margin:19px 0 24px}.portal-check input{width:17px;height:17px;min-width:17px;margin-top:3px;accent-color:#b4122a}.portal-check a{text-decoration:underline;text-underline-offset:3px}.portal-auth-card form>.gold-button{width:100%;justify-content:space-between}.portal-auth-links{margin-top:25px;display:grid;gap:14px;text-align:center;font-size:13px}.portal-auth-links a{font-weight:500;color:#b4122a}.portal-auth-links p{color:#646771}.portal-fixed-email{display:grid;gap:4px;background:#fafafa;padding:13px 15px;border-radius:6px;margin:0 0 17px!important;overflow-wrap:anywhere}.portal-fixed-email span{font-size:12px;color:#646771}.portal-fixed-email strong{font-size:14px;font-weight:500}.portal-message{padding:13px 15px;border-radius:7px;margin:0 0 18px;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.portal-message.error{background:#fff1f3;border:1px solid #edc1ca;color:#9c1730}.portal-message.success{background:#fff3f5;border:1px solid #e4e4e9;color:#b4122a}.portal-recovery{max-width:680px;margin:20px auto;padding:42px;background:#ffffff;border:1px solid var(--portal-line);border-radius:12px}.portal-recovery>.portal-eyebrow{margin-bottom:14px}.portal-recovery h1{font-size:32px;margin-bottom:24px}.portal-recovery>p:not(.portal-eyebrow){margin-bottom:16px;color:#646771;font-size:15px}.portal-recovery-code{display:block;padding:24px 15px;margin:28px 0 17px;background:#f5f5f7;border:1px dashed #e6c5cc;text-align:center;font-family:ui-monospace,Consolas,monospace;font-size:17px;color:#b4122a;overflow-wrap:anywhere;user-select:all}.portal-inline-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.portal-recovery [data-copy-message]{font-size:13px;margin-top:12px;color:#b4122a}.portal-dashboard{max-width:1180px;margin:auto}.portal-heading{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:40px}.portal-heading h1{font-size:40px;margin:9px 0 10px}.portal-heading>div>p:last-child{color:#646771;font-size:15px}.portal-tabs{display:flex;gap:28px;border-bottom:1px solid #e4e4e9;margin-bottom:33px;overflow-x:auto;white-space:nowrap}.portal-tabs a{padding:13px 0 18px;border-bottom:3px solid transparent;text-decoration:none!important;font-size:14px;display:flex;align-items:center;gap:8px}.portal-tabs a[aria-current]{border-color:#b4122a;color:#b4122a;font-weight:600}.portal-tabs a span{font-size:11px;background:#f5f5f7;border-radius:20px;min-width:22px;height:22px;text-align:center;padding:2px 6px}.portal-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.portal-section-heading h2{font-size:25px;margin-bottom:6px}.portal-section-heading p{color:#646771;font-size:14px}.portal-property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.portal-property-card{background:#ffffff;border:1px solid var(--portal-line);border-radius:10px;overflow:hidden}.portal-property-card>a{text-decoration:none!important;display:block}.portal-property-card img,.portal-image-placeholder{width:100%;height:210px;object-fit:cover}.portal-image-placeholder{display:grid;place-items:center;background:#f5f5f7;color:#646771;letter-spacing:5px;font-size:25px}.portal-property-copy{padding:22px 22px 19px}.portal-property-copy h3{margin:9px 0 7px;font-size:20px}.portal-property-copy>p:not(.portal-eyebrow){font-size:13px;color:#646771;margin-bottom:16px}.portal-property-copy>strong{font-size:16px;font-weight:500}.portal-card-actions{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e4e4e9;padding:15px 22px;font-size:13px;gap:12px}.portal-card-actions>a{font-weight:500;color:#b4122a}.portal-card-actions button{border:0;background:none;padding:2px 0;color:#646771;cursor:pointer}.portal-card-actions button span{color:#b4122a;margin-right:4px}.empty-state{text-align:center;border:1px dashed #e4e4e9;background:#fafafa;padding:55px 25px;border-radius:9px}.empty-state h3{font-size:23px;font-weight:500;margin:13px 0}.empty-state p{max-width:430px;margin:0 auto 23px!important;font-size:14px;color:#646771}.portal-empty-icon{display:block;font-size:36px;line-height:1;color:#b4122a}.portal-help{margin-top:40px;padding-top:22px;border-top:1px solid #e4e4e9;display:flex;justify-content:space-between;gap:20px;font-size:13px;color:#646771}.portal-help a{color:#b4122a;font-weight:500}.portal-enquiries{display:grid;gap:20px}.portal-enquiry{border:1px solid #e4e4e9;background:#ffffff;padding:25px 28px;border-radius:10px}.portal-enquiry header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}.portal-enquiry h3{margin-top:7px}.portal-status{font-size:11px;padding:5px 11px;border-radius:20px;white-space:nowrap;background:#fff3f5;color:#b4122a}.portal-status.in_progress{background:#f2f2f5;color:#595c66}.portal-status.closed{background:#fff3f5;color:#b4122a}.portal-enquiry-message,.portal-staff-response>p:last-child{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;color:#646771}.portal-enquiry>.portal-muted{margin-top:20px}.portal-staff-response{margin-top:23px;background:#fafafa;border-left:3px solid #b4122a;padding:18px 20px}.portal-staff-response .portal-eyebrow{margin-bottom:10px;font-size:10px}.portal-form-card{border:1px solid #e4e4e9;border-radius:10px;padding:28px;background:#fff}.portal-form-card h3{margin-bottom:25px;font-size:21px}.portal-form-card>.portal-muted{margin-bottom:20px}.portal-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.portal-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.portal-profile-grid .portal-form-card{align-self:start}.account-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#fafafa;color:#fff;box-shadow:0 8px 30px #24242c10;padding:15px 23px;border-radius:8px;max-width:calc(100vw - 36px);width:max-content;font-size:14px;line-height:1.5;z-index:10000}.account-toast[hidden]{display:none}.save-project{position:absolute;right:12px;top:12px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#ffffff;color:#26272c;border:0;box-shadow:0 2px 12px #24242c10;font-size:24px;line-height:1;cursor:pointer}.save-project[aria-pressed=true]{background:#b4122a;color:#ffffff}.project-card{position:relative}.save-project:disabled{opacity:.6}.content-page{color:#26272c;background:#ffffff;padding:65px 0 80px;min-height:60vh}.content-page h1{font-size:clamp(32px,4vw,52px);font-weight:500;line-height:1.12;letter-spacing:-1px;margin:12px 0 25px}.content-page h2{font-size:26px;margin:35px 0 16px}.content-page p{line-height:1.7;margin:12px 0;color:#646771}.content-page .prose-fam{max-width:840px}.content-page ul{padding-left:22px;margin:16px 0;list-style:disc}.content-page .gold-button,.content-page .outline-button{margin:10px 10px 10px 0}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:30px}.content-card{color:#26272c;padding:27px;border:1px solid #e4e4e9;border-radius:9px;background:#fafafa}.content-card h2{font-size:23px;margin:0 0 13px}.content-card p{font-size:14px}.developer-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:30px}.developer-directory a{color:#26272c;display:flex;flex-direction:column;gap:8px;justify-content:center;min-height:100px;border:1px solid #e4e4e9;border-radius:8px;padding:23px;background:#fafafa;text-decoration:none}.developer-directory a:hover{border-color:#b4122a}.developer-directory a strong{font-size:18px;font-weight:500}.developer-directory a span{font-size:13px;color:#646771}.agent-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:35px}.agent-card{color:#26272c;border:1px solid #e4e4e9;border-radius:10px;overflow:hidden;background:#fafafa}.agent-card>img{width:100%;height:300px;object-fit:cover;object-position:center 25%}.agent-card>div:not(.agent-initial){padding:27px}.agent-card h2{margin:0 0 7px;font-size:25px;font-weight:500}.agent-card p{font-size:14px;line-height:1.65;color:#646771;margin:13px 0}.agent-card small{font-size:12px;color:#646771}.agent-initial{height:220px;background:#f5f5f7;display:grid;place-items:center;font-size:80px;font-weight:400;color:#646771}.agent-contact{display:flex;gap:20px;font-size:13px;margin-top:23px}.agent-contact a{font-weight:500;color:#b4122a}.ramre-property{color:#26272c;background:#ffffff;padding-bottom:80px}.property-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.property-heading h1{font-size:clamp(30px,4vw,48px);line-height:1.1;font-weight:500;margin:12px 0 16px}.property-heading p{color:#646771}.property-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin:15px 0 45px;border-radius:9px;overflow:hidden}.property-gallery>a{min-height:190px;display:block}.property-gallery>a:first-child{grid-column:span 2;grid-row:span 2}.property-gallery img{width:100%;height:100%;max-height:430px;object-fit:cover}.property-gallery>a:nth-child(n+4){min-height:130px}.property-gallery>a:nth-child(n+4) img{height:180px}.property-gallery:has(>a:only-child){display:block}.property-gallery:has(>a:only-child) img{max-height:550px}.property-columns{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:45px;align-items:start}.property-columns>div>section{margin-bottom:40px}.property-columns h2{font-size:25px;line-height:1.25;font-weight:500;margin-bottom:19px}.property-columns h3{font-size:19px;font-weight:500}.property-columns p{line-height:1.7}.property-enquire{padding:27px;border:1px solid #e4e4e9;border-radius:10px;background:#fafafa;position:sticky;top:100px}.property-enquire h2{font-size:26px;margin:15px 0}.property-enquire>p{font-size:13px;color:#646771;margin-bottom:20px}.property-enquire .gold-button,.property-enquire .outline-button{width:100%;margin-bottom:12px;font-size:13px;padding:12px 10px}.property-enquire .contact-note{font-size:11px;margin:12px 0 0;line-height:1.7}.assigned-agent{border-top:1px solid #e4e4e9;margin-top:17px;padding-top:22px}.assigned-agent img{width:56px;height:56px;object-fit:cover;border-radius:50%;margin-bottom:12px}.assigned-agent p,.assigned-agent a{font-size:13px}.amenities-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.amenities-list li{font-size:13px;color:#646771;background:#f5f5f7;border-radius:5px;padding:13px}.floorplan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.floorplan-grid article{border:1px solid #e4e4e9;border-radius:7px;padding:17px;overflow:hidden}.floorplan-grid img{width:100%;height:180px;object-fit:contain;margin-bottom:16px}.floorplan-grid h3{font-size:15px;margin-bottom:9px}.floorplan-grid p,.floorplan-grid small{font-size:12px;color:#646771}.floorplan-grid p{margin:4px 0}.property-extra:empty{display:none}
@media(max-width:980px){.portal-app{padding:38px 22px 50px}.portal-auth-card,.portal-welcome{padding:35px 28px}.portal-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.property-columns{grid-template-columns:minmax(0,1fr) 290px;gap:25px}.floorplan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.developer-directory{grid-template-columns:repeat(3,minmax(0,1fr))}.amenities-list{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.portal-app{padding:26px 17px 45px}.portal-auth{display:flex;flex-direction:column}.portal-welcome{padding:30px 26px}.portal-welcome .portal-eyebrow{margin-bottom:19px}.portal-welcome h1{font-size:30px;margin-bottom:14px}.portal-welcome>p:not(.portal-eyebrow){font-size:13px}.portal-welcome ul,.portal-welcome>a{display:none}.portal-auth-card{padding:29px 25px}.portal-auth-card h2{font-size:25px}.portal-heading{flex-direction:column;align-items:flex-start;gap:22px;margin-bottom:27px}.portal-heading h1{font-size:34px}.portal-tabs{gap:23px;margin-bottom:24px}.portal-tabs a{font-size:13px;padding:11px 0 15px}.portal-section-heading{align-items:flex-start}.portal-section-heading h2{font-size:22px}.portal-section-heading p{font-size:13px}.portal-section-heading>.gold-button,.portal-section-heading>.outline-button{font-size:12px;padding:9px 12px;min-height:40px;white-space:nowrap}.portal-profile-grid,.portal-form-grid{grid-template-columns:1fr;gap:0}.portal-profile-grid{gap:21px}.portal-form-card{padding:23px}.portal-help{flex-direction:column;gap:9px}.portal-recovery{padding:27px 23px;margin:0 auto}.portal-recovery h1{font-size:28px}.portal-recovery-code{font-size:15px}.portal-enquiry{padding:22px}.portal-enquiry header{gap:12px}.portal-enquiry h3{font-size:18px}.portal-enquiry .portal-eyebrow{font-size:9px}.portal-staff-response{padding:17px}.portal-property-grid{gap:17px}.portal-property-card img,.portal-image-placeholder{height:180px}.portal-property-copy{padding:18px}.portal-property-copy h3{font-size:18px}.portal-card-actions{padding:14px 18px;font-size:12px}.portal-property-copy .portal-eyebrow{font-size:9px}.property-columns{grid-template-columns:1fr}.property-enquire{position:static;grid-row:1}.property-gallery{grid-template-columns:1fr 1fr;margin-bottom:24px}.property-gallery>a:first-child{grid-column:span 2;grid-row:auto}.property-gallery>a{min-height:110px}.property-gallery>a:first-child img{height:300px}.property-gallery img{height:160px}.property-heading{flex-direction:column;align-items:flex-start}.property-heading h1{font-size:34px}.property-heading>.outline-button{margin-top:7px}.agent-directory{grid-template-columns:1fr}.developer-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.content-page{color:#26272c;background:#ffffff;padding:40px 0 55px}.content-grid{grid-template-columns:1fr}}
@media(max-width:450px){.portal-property-grid{grid-template-columns:1fr}.portal-property-card img{height:220px}.portal-section-heading{flex-direction:column;gap:15px}.portal-section-heading>.gold-button,.portal-section-heading>.outline-button{align-self:flex-start}.portal-welcome h1{font-size:28px}.portal-auth-card{padding:25px 20px}.portal-auth-card .portal-check{font-size:11px}.portal-enquiry header{flex-direction:column;gap:12px}.portal-enquiry .portal-status{align-self:flex-start}.floorplan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.floorplan-grid article{padding:11px}.floorplan-grid img{height:135px}.developer-directory a{padding:17px}.developer-directory a strong{font-size:16px}.property-gallery>a:first-child img{height:230px}.property-gallery img{height:120px}.account-toast{bottom:16px;font-size:13px}.portal-inline-actions{gap:9px}}
@media(prefers-reduced-motion:reduce){.portal-app *,.gold-button,.outline-button{scroll-behavior:auto!important;transition:none!important}}

/* Native account fields follow the RAMRE red and white theme. */
.portal-app{color-scheme:light}.portal-field input::placeholder,.portal-field textarea::placeholder{color:#686e78}.portal-check input{background:#ffffff}.portal-recovery-code{color:#b4122a}.portal-app .portal-status{border:1px solid #e6c5cc}.floorplan-grid article{background:#fafafa}.floorplan-grid img{background:#fff;border-radius:4px}.portal-property-card,.agent-card,.content-card,.property-enquire{box-shadow:0 8px 28px #24242c08}

/* RAMRE red and white account surfaces. */
.portal-welcome{background:#b4122a;color:#fff}.portal-welcome .portal-eyebrow,.portal-welcome li>span{color:#fff}.portal-welcome>p:not(.portal-eyebrow),.portal-welcome li p{color:#ffffffd9}.portal-welcome li>span,.portal-welcome>a{border-color:#ffffff55}.portal-welcome:after{border-color:#ffffff26}.portal-welcome a{color:#fff}.portal-app .gold-button{background:#b4122a;color:#fff!important}.portal-app .gold-button:hover{background:#940d21}.portal-app .outline-button{color:#b4122a!important;border-color:#dcb8bf}.portal-app .outline-button:hover{background:#fff4f6}.account-toast{background:#b4122a;color:#fff;box-shadow:0 8px 25px #24242c20}.portal-form-card,.portal-auth,.portal-enquiry,.portal-property-card{background:#fff}.portal-app .portal-status{border-color:#ebd4d9}.portal-app .portal-message.success{color:#8c2335}.portal-app .portal-recovery-code{color:#9f142a}.portal-app .portal-tabs a span{color:#9f142a;background:#fff0f3}.portal-app .portal-staff-response{border-left-color:#b4122a}.portal-image-placeholder,.agent-initial{background:#fff3f5;color:#b4122a}.portal-app .portal-eyebrow{color:#a4162c}.portal-welcome .portal-eyebrow{color:#fff}.content-page,.ramre-property{background:#fff;color:#26272c}.agent-card,.content-card,.developer-directory a,.property-enquire{background:#fff;color:#26272c}.floorplan-grid article{background:#fff}.amenities-list li{background:#fafafa;color:#62656e}
