:root{--primary:#173b57;--primary-dark:#0f283d;--primary-soft:#eaf1f5;--accent:#d99a24;--accent-hover:#bf8318;--teal:#16776b;--red:#b64032;--ink:#20262d;--muted:#64717d;--line:#d9e1e7;--soft:#f4f7f8;--white:#fff;--shadow:0 8px 22px rgba(17, 39, 57, 0.12);--font-sans:"Yu Gothic","YuGothic","Yu Gothic UI","Meiryo","Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif}*{box-sizing:border-box}h1,h2,h3{font-family:var(--font-sans);font-weight:700;letter-spacing:0;color:#111923;line-height:1.42}a{color:var(--primary)}a:hover{color:var(--teal)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;border-radius:6px;border-width:1px;font-weight:600;letter-spacing:0;box-shadow:0 2px 0 rgba(15,40,61,.14),0 7px 16px rgba(17,39,57,.08);text-decoration:none;transition:transform .14s,box-shadow .14s,background-color .14s,border-color .14s,color .14s}.btn:not(:disabled):not(.disabled):hover{transform:translateY(-1px);box-shadow:0 3px 0 rgba(15,40,61,.18),0 10px 20px rgba(17,39,57,.12)}.btn.active,.btn:not(:disabled):not(.disabled):active{transform:translateY(1px);box-shadow:inset 0 2px 5px rgba(15,40,61,.22)}.btn:focus-visible{outline:0;box-shadow:0 0 0 1px #fff,0 0 0 5px rgba(22,119,107,.18),0 2px 0 rgba(15,40,61,.14)}.btn.disabled,.btn:disabled{transform:none;box-shadow:none}.btn.is-loading,a.is-loading,button.is-loading{cursor:progress;pointer-events:none}.btn-primary{background:var(--primary);border-color:var(--primary)}.btn-primary:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.navbar-toggler{border-radius:6px}.form-control,.form-select{border-color:var(--line);border-radius:6px}.form-control:focus,.form-select:focus{border-color:var(--teal);box-shadow:0 0 0 .2rem rgba(22,119,107,.12)}.section-kicker{margin:0 0 5px;color:var(--teal);font-size:.78rem;font-weight:600;text-transform:uppercase}.page-header{background:linear-gradient(90deg,rgba(26,82,112,.82) 0,rgba(42,147,132,.6) 58%,rgba(217,154,36,.22) 100%),linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,0)),url("/assets/images/listing-apartment-header.webp") center 48%/cover;color:#fff;padding:34px 0}.page-header .breadcrumb,.page-header h1{text-shadow:0 2px 12px rgba(8,28,43,.28)}.page-header h1{font-size:1.78rem;font-weight:600;color:#fff;margin-bottom:0}.breadcrumb-item a{color:rgba(255,255,255,.76)}.breadcrumb-item.active{color:rgba(255,255,255,.95)}.breadcrumb-item+.breadcrumb-item::before{color:rgba(255,255,255,.55)}.membership-page{background:#edf3f8;padding:40px 0 58px;overflow-x:hidden}.membership-heading{max-width:880px;margin:0 auto 28px}.membership-kicker{display:inline-flex;align-items:center;gap:14px;margin:0 0 16px;color:var(--primary);font-size:.78rem;font-weight:700;letter-spacing:.22em}.membership-kicker span{width:34px;height:1px;background:var(--accent)}.membership-heading h1{margin:0;color:#061f37;font-size:1.9rem;line-height:1.35}.membership-mobile-line{display:inline}.membership-after-register,.membership-benefits,.membership-form-heading{max-width:880px;margin:0 auto}.membership-benefits{border:1px solid var(--line);border-radius:18px;background:#fff;padding:24px;box-shadow:0 16px 40px rgba(17,39,57,.1);margin-bottom:24px}.membership-benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.membership-after-grid div,.membership-benefit-card{min-width:0;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.membership-benefit-card{position:relative;padding:20px;box-shadow:none}.membership-benefit-card.is-primary{border-color:rgba(217,154,36,.42);background:linear-gradient(180deg,#fffaf0 0,#fff 72%)}.membership-benefit-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:13px;border-radius:50%;background:var(--primary-soft);color:var(--primary)}.membership-benefit-card.is-primary .membership-benefit-icon{background:rgba(217,154,36,.16);color:#9c6b13}.membership-benefit-badge{position:absolute;top:18px;right:18px;display:inline-flex;align-items:center;min-height:25px;border-radius:999px;background:var(--accent);color:#152435;padding:4px 10px;font-size:.72rem;font-weight:800;letter-spacing:.04em}.membership-after-grid h3,.membership-benefit-card h3,.membership-form-heading h2,.membership-section-head h2{margin:0;color:#061f37}.membership-benefit-card h3{margin-bottom:8px;font-size:1rem}.membership-benefit-card p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.75}.membership-after-register{margin-bottom:26px}.membership-section-head{margin-bottom:14px}.membership-form-heading h2,.membership-section-head h2{font-size:1.35rem}.membership-after-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.membership-after-grid div{padding:18px}.membership-after-grid strong{display:block;margin-bottom:7px;color:var(--accent);font-size:.82rem;letter-spacing:.1em}.membership-after-grid h3{margin-bottom:7px;font-size:1rem}.membership-after-grid p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.75}.membership-form-heading{margin-bottom:16px}.membership-form-heading p:last-child{margin:8px 0 0;color:var(--muted);font-size:.9rem;line-height:1.75}.membership-card{max-width:880px;margin:0 auto;border-radius:22px;background:#fff;padding:26px 30px 28px;box-shadow:0 26px 60px rgba(17,39,57,.12)}.membership-alert{border-radius:14px;margin-bottom:26px}.membership-form{display:grid;gap:18px}.membership-form-section{min-width:0;margin:0;padding:0}.membership-form-section+.membership-form-section{margin-top:6px;padding-top:24px;border-top:1px solid #dfe8ef}.membership-form-section-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:18px}.membership-form-section-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;font-size:.9rem;font-weight:700;line-height:1}.membership-form-section-conditions .membership-form-section-number{background:var(--teal)}.membership-form-section-head h3{margin:0;color:#061f37;font-size:1.08rem;font-weight:700;line-height:1.35}.membership-form-section-head p{margin:4px 0 0;color:#64717d;font-size:.86rem;font-weight:500;line-height:1.6}.membership-check-grid,.membership-grid,.membership-name-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.membership-field-full{grid-column:1/-1}.membership-label{display:flex;align-items:center;gap:8px;margin-bottom:7px;color:#061f37;font-size:.86rem;font-weight:700}.membership-label span{display:inline-flex;align-items:center;min-height:22px;border-radius:999px;background:#fff0f0;color:#b64032;padding:1px 7px;font-size:.68rem;font-weight:700}.membership-label em{color:var(--primary);font-size:.76rem;font-style:normal;font-weight:500}.membership-field input[type=email],.membership-field input[type=password],.membership-field input[type=tel],.membership-field input[type=text],.membership-field select,.membership-field textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;color:#0e2438;font-family:inherit;font-size:.95rem;line-height:1.5;letter-spacing:.02em;transition:border-color .2s,box-shadow .2s,background .2s}.membership-field input,.membership-field select{min-height:46px;padding:0 14px}.membership-field textarea{min-height:98px;padding:12px 14px;resize:vertical}.membership-field input:focus,.membership-field select:focus,.membership-field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(23,59,87,.08);outline:0}.membership-field input::placeholder,.membership-field textarea::placeholder{color:#7d8a97}.membership-name-grid small{display:block;margin-top:5px;color:#64717d;font-size:.74rem}.membership-check{display:flex;align-items:center;gap:10px;min-height:42px;border:1px solid var(--line);border-radius:10px;background:#f8fafc;padding:7px 14px;color:#061f37;font-size:.92rem;font-weight:600;line-height:1.35;cursor:pointer}.membership-check:hover{border-color:var(--primary);background:#f4f8fb}.membership-check input{width:16px;height:16px;flex:0 0 auto;accent-color:var(--primary)}.membership-privacy-note{border:1px solid #ead7aa;border-radius:10px;background:#fffaf0;color:#26394b;padding:12px 14px;font-size:.86rem;line-height:1.7}.membership-privacy-note a{font-weight:700;text-decoration:underline}.membership-consent{display:inline-flex;align-items:center;gap:10px;color:#061f37;font-size:.88rem;font-weight:600;cursor:pointer}.membership-consent input{width:18px;height:18px;accent-color:var(--primary)}.membership-submit{width:100%;min-height:50px;border:0;border-radius:12px;background:linear-gradient(180deg,#f8d462 0,#efbf36 100%);color:#061f37;font-family:inherit;font-size:.95rem;font-weight:700;box-shadow:0 12px 24px rgba(217,154,36,.18)}.membership-submit:hover{background:linear-gradient(180deg,#f6ca4d 0,#e6ad22 100%)}.membership-footnote,.membership-login-link{margin:0;color:var(--muted);text-align:center;font-size:.84rem}.membership-login-link{margin-top:18px}.membership-login-link a{font-weight:700;text-decoration:underline}.form-section{border:1px solid var(--line);border-radius:8px;background:#fff;padding:24px;box-shadow:0 3px 12px rgba(17,39,57,.08)}.form-section h2{color:var(--primary);font-size:1.35rem;font-weight:600;border-bottom:2px solid var(--accent);padding-bottom:12px;margin-bottom:20px}.form-label .required,.required{color:#dc3545;font-size:.76rem;margin-left:4px}.appraisal-page{background:#eef4f7;padding:42px 0 72px}.appraisal-feature-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px;max-width:860px;margin-left:auto;margin-right:auto}.appraisal-feature-strip div{display:grid;grid-template-columns:42px 1fr;align-items:center;column-gap:12px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px;box-shadow:0 10px 22px rgba(17,39,57,.08)}.appraisal-feature-strip i{grid-row:span 2;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:rgba(217,154,36,.14);color:var(--accent)}.appraisal-feature-strip strong{color:var(--primary);font-size:.98rem;line-height:1.35}.appraisal-feature-strip span{color:var(--muted);font-size:.84rem;line-height:1.5}.appraisal-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start;max-width:860px;margin:0 auto}.appraisal-form-card,.appraisal-phone-card{border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 16px 40px rgba(17,39,57,.1)}.appraisal-form-card{padding:30px}.appraisal-form-heading{margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line)}.appraisal-form-heading h2{margin:0 0 8px;color:var(--primary);font-size:1.45rem}.appraisal-form-heading p:last-child{margin:0;color:var(--muted);font-size:.9rem}.appraisal-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.appraisal-field-full{grid-column:1/-1}.appraisal-label{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:var(--primary-dark);font-size:.88rem;font-weight:700}.appraisal-label em,.appraisal-label span{display:inline-flex;align-items:center;min-height:20px;border-radius:999px;padding:1px 8px;font-size:.68rem;font-style:normal;font-weight:700}.appraisal-label span{background:#fff0f0;color:var(--red)}.appraisal-label em{background:var(--primary-soft);color:var(--muted)}.appraisal-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.appraisal-field small,.appraisal-two-col small{display:block;margin-top:6px;color:var(--muted);font-size:.78rem}.appraisal-form .form-control,.appraisal-form .form-select{min-height:48px;border-color:#d7e1e8;border-radius:8px;color:var(--ink);font-size:.95rem;background-color:#fbfcfd}.appraisal-form textarea.form-control{min-height:128px;resize:vertical}.appraisal-form .form-control:focus,.appraisal-form .form-select:focus{border-color:var(--accent);box-shadow:0 0 0 .18rem rgba(217,154,36,.16);background-color:#fff}.appraisal-privacy{border:1px solid rgba(217,154,36,.26);border-radius:8px;background:#fffaf0;color:#4f5b64;padding:14px 16px;font-size:.84rem;line-height:1.75}.appraisal-privacy a{font-weight:700;text-decoration:underline}.appraisal-consent{display:inline-flex;align-items:center;gap:10px;width:fit-content;margin:0;color:var(--ink);font-size:.9rem;font-weight:600;cursor:pointer}.appraisal-consent input{width:18px;height:18px;accent-color:var(--primary)}.appraisal-submit{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60px;border:0;border-radius:8px;background:linear-gradient(180deg,#f4c94a 0,#dda12e 100%);color:#142333;font-family:inherit;font-size:1rem;font-weight:800;box-shadow:0 14px 26px rgba(217,154,36,.2)}.appraisal-submit span{margin-top:3px;color:rgba(20,35,51,.72);font-size:.78rem;font-weight:600}.appraisal-submit:hover{background:linear-gradient(180deg,#f7d35f 0,#d49323 100%)}.appraisal-phone-card{padding:22px;background:var(--primary);color:#fff}.appraisal-phone-strip{display:flex;align-items:center;justify-content:space-between;gap:18px}.appraisal-phone-card span{display:block;margin-bottom:6px;color:rgba(255,255,255,.72);font-size:.82rem}.appraisal-phone-card strong{display:block;font-size:1.45rem;line-height:1.25}.appraisal-phone-strip>div:first-child strong{font-size:1.12rem}.appraisal-phone-info{min-width:260px;border-left:1px solid rgba(255,255,255,.18);padding-left:24px;text-align:left}.appraisal-phone-card p{margin:8px 0 0;color:rgba(255,255,255,.72);font-size:.84rem}.appraisal-phone-info p{margin-top:6px}.contact-phone-banner{margin-bottom:20px}.appraisal-success{padding:36px 16px;text-align:center}.appraisal-success i{color:var(--teal);font-size:3.4rem;margin-bottom:16px}.appraisal-success h2{color:var(--primary);font-size:1.45rem;margin-bottom:12px}.appraisal-success p{color:var(--muted);margin-bottom:22px}@media (max-width:991.98px){.membership-card{padding:28px 24px}.appraisal-layout{grid-template-columns:1fr}}@media (max-width:767.98px){.h1,.page-header h1,h1{font-size:24px}.page-header{padding:28px 0}.page-header .breadcrumb{margin-bottom:4px!important;font-size:.82rem}.h2,h2{font-size:20px}.h3,h3{font-size:18px}.membership-page{padding:28px 0 40px}.membership-heading{margin-bottom:20px}.membership-kicker{gap:10px;margin-bottom:14px;font-size:.7rem}.membership-kicker span{width:26px}.membership-heading h1{font-size:24px}.membership-heading p:last-child{font-size:.94rem}.membership-mobile-line{display:block}.membership-after-grid h3,.membership-after-grid p,.membership-benefit-card h3,.membership-benefit-card p,.membership-form-heading p,.membership-heading h1{overflow-wrap:anywhere;word-break:break-all;line-break:anywhere}.membership-after-grid,.membership-benefits{max-width:calc(100vw - 24px)}.membership-benefits{margin-bottom:22px;padding:18px 15px}.membership-after-grid,.membership-benefits-grid{grid-template-columns:1fr}.membership-after-grid div,.membership-benefit-card{padding:16px}.membership-benefit-badge{position:static;margin:0 0 12px 8px;vertical-align:top}.membership-after-register{margin-bottom:24px}.membership-form-heading h2,.membership-section-head h2{font-size:20px}.membership-card{border-radius:16px;padding:18px 15px}.membership-check-grid,.membership-grid,.membership-name-grid{grid-template-columns:1fr;gap:14px}.membership-form{gap:18px}.membership-field input,.membership-field select{min-height:46px}.membership-submit{min-height:50px;border-radius:12px}.appraisal-page{padding:28px 0 46px}.appraisal-feature-strip,.appraisal-form,.appraisal-two-col{grid-template-columns:1fr}.appraisal-feature-strip{gap:10px;margin-bottom:16px}.appraisal-feature-strip div{padding:14px}.appraisal-form-card{padding:18px 15px;border-radius:16px}.appraisal-phone-strip{align-items:flex-start;flex-direction:column;gap:8px}.appraisal-phone-info{width:100%;min-width:0;border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:12px 0 0}.appraisal-form-heading h2,.appraisal-success h2{font-size:20px}.appraisal-form{gap:16px}.appraisal-form .form-control,.appraisal-form .form-select{min-height:46px;font-size:16px}.appraisal-consent{width:100%;align-items:flex-start}.appraisal-submit{min-height:56px}}
/* Color system refresh for forms and conversion pages */
:root{
  --color-primary:#123A56;
  --color-bg:#F5F8FA;
  --color-card:#FFFFFF;
  --color-soft-bg:#F1F6F9;
  --color-border:#DDE6ED;
  --color-text:#1F2A33;
  --color-cta:#F28C28;
  --color-cta-hover:#D97706;
  --color-success:#2EAD75;
  --color-link:#2F80ED;
  --primary:var(--color-primary);
  --primary-dark:#0B2F47;
  --primary-soft:var(--color-soft-bg);
  --accent:var(--color-cta);
  --accent-hover:var(--color-cta-hover);
  --teal:var(--color-success);
  --red:var(--color-primary);
  --ink:var(--color-text);
  --muted:#5F6F7A;
  --line:var(--color-border);
  --soft:var(--color-bg);
  --white:var(--color-card);
  --shadow:0 10px 26px rgba(18,58,86,.1);
}
body,.membership-page,.appraisal-page{background:var(--color-bg);color:var(--color-text)}
a{color:var(--color-link)}
a:hover{color:var(--color-primary)}
.btn-primary,.form-section .btn-primary{
  background:var(--color-cta);
  border-color:var(--color-cta);
  color:#fff;
}
.btn-primary:hover,.btn-primary:focus,.form-section .btn-primary:hover{
  background:var(--color-cta-hover);
  border-color:var(--color-cta-hover);
  color:#fff;
}
.btn-warning,.membership-submit,.appraisal-submit{
  background:var(--color-cta);
  border-color:var(--color-cta);
  color:#fff;
}
.btn-warning:hover,.membership-submit:hover,.appraisal-submit:hover{
  background:var(--color-cta-hover);
  border-color:var(--color-cta-hover);
  color:#fff;
}
.btn-outline-primary{color:var(--color-primary);border-color:var(--color-primary)}
.btn-outline-primary:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}
.form-control:focus,.form-select:focus,.membership-field input:focus,.membership-field select:focus,.membership-field textarea:focus,.appraisal-form .form-control:focus,.appraisal-form .form-select:focus{
  border-color:var(--color-primary);
  box-shadow:0 0 0 .2rem rgba(18,58,86,.12);
  background-color:#fff;
}
.form-check-input:checked{background-color:var(--color-success);border-color:var(--color-success)}
.membership-card,.membership-benefits,.membership-benefit-card,.membership-after-grid div,.form-section,.appraisal-form-card,.appraisal-phone-card,.appraisal-feature-strip div{
  background:var(--color-card);
  border-color:var(--color-border);
  box-shadow:var(--shadow);
}
.membership-kicker,.membership-form-section-head h3,.membership-heading h1,.membership-section-head h2,.membership-form-heading h2,.appraisal-form-heading h2,.appraisal-success h2{
  color:var(--color-primary);
}
.membership-kicker span{background:var(--color-cta)}
.membership-form-section-number{background:var(--color-primary)}
.membership-form-section-conditions .membership-form-section-number{background:var(--color-success)}
.membership-benefit-card.is-primary{border-color:#F8DFC3;background:linear-gradient(180deg,#FFF7E8 0,#fff 72%)}
.membership-benefit-icon,.membership-check:hover{background:var(--color-soft-bg)}
.membership-benefit-badge,.membership-benefit-card.is-primary .membership-benefit-icon,.appraisal-feature-strip i{
  background:rgba(242,140,40,.14);
  color:var(--color-cta);
}
.membership-submit,.appraisal-submit{box-shadow:0 12px 24px rgba(242,140,40,.18)}
.membership-check{background:#fff;border-color:var(--color-border);color:var(--color-text)}
.membership-check:hover{border-color:var(--color-primary)}
.membership-check input,.membership-consent input,.appraisal-consent input{accent-color:var(--color-primary)}
.membership-privacy-note,.appraisal-privacy{background:#FFF7E8;border-color:#F8DFC3;color:#33424D}
.appraisal-page{background:var(--color-bg)}
.appraisal-form .form-control,.appraisal-form .form-select,.membership-field input[type=email],.membership-field input[type=password],.membership-field input[type=tel],.membership-field input[type=text],.membership-field select,.membership-field textarea{
  background:#fff;
  border-color:var(--color-border);
  color:var(--color-text);
}
.appraisal-label,.appraisal-form-heading h2{color:var(--color-primary)}
.appraisal-label span,.membership-label span{background:#FFF1F1;color:#B64032}
.appraisal-label em{background:var(--color-soft-bg);color:#566673}
.appraisal-phone-card{background:var(--color-primary);color:#fff}
.appraisal-phone-card span,.appraisal-phone-card p{color:rgba(255,255,255,.78)}
.appraisal-success i{color:var(--color-success)}
.page-header{
  background:
    linear-gradient(90deg,rgba(18,58,86,.78) 0,rgba(18,58,86,.56) 100%),
    url("/assets/images/listing-apartment-header.webp") center 48%/cover;
}

.public-form-honeypot{
  position:absolute!important;
  left:-10000px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  opacity:0!important;
  pointer-events:none!important;
}
