/* Shared visual system for the public and member pages. */
/* Visual tokens and member cards are shared by home, search, and match lists. */
.site-refresh { --site-accent: #a33432; --site-ink: #332c2c; --site-muted: #70635e; --site-line: #e9dfd8; --site-surface: #faf7f4; --site-icon: #a07865; --site-badge: #f8efd9; --site-badge-border: #e4d1a4; --site-badge-ink: #705528; }
.site-refresh .profile-card-3.wedding-profile-card {
    padding: 36px 16px 18px; color: var(--site-ink); background: #fff;
    border: 1px solid var(--site-line) !important; border-radius: 16px !important;
    box-shadow: 0 3px 12px rgba(76,42,36,.08) !important;
}
.site-refresh .profile-card-3.wedding-profile-card .profile-thumb-block { background: none; padding: 0 0 18px; }
.site-refresh .profile-card-3.wedding-profile-card .profile { max-width: 150px; outline: 2px solid #dbc8bb; box-shadow: none; }
.site-refresh .profile-card-3.wedding-profile-card .card-content { color: var(--site-muted); }
.site-refresh .profile-card-3.wedding-profile-card .card-content > h4 {
    min-height: 56px; color: var(--site-ink); font-size: 20px; font-weight: 600;
}
.site-refresh .profile-card-3.wedding-profile-card .profile-identity { color: var(--site-muted); font-size: 13px; }
.site-refresh .profile-card-3.wedding-profile-card .profile-fact { color: var(--site-muted); }
.site-refresh .profile-card-3.wedding-profile-card .profile-fact-icon { color: var(--site-icon); background: #faf0ec; }
.site-refresh .profile-card-3.wedding-profile-card .profile-fact > div > span,
.site-refresh .profile-card-3.wedding-profile-card .profile-identity > div > span { color: var(--site-ink); }
.site-refresh .profile-card-3.wedding-profile-card .profile-heart-divider { color: #e4cfc7; }
.site-refresh .profile-card-3.wedding-profile-card .profile-heart-divider::before,
.site-refresh .profile-card-3.wedding-profile-card .profile-heart-divider::after { background: linear-gradient(90deg, transparent, #e4cfc7); }
.site-refresh .profile-card-3.wedding-profile-card.has-gold-ribbon::before {
    background: var(--site-badge); border-color: var(--site-badge-border);
    color: var(--site-badge-ink); box-shadow: none;
}
.site-refresh .profile-card-3.wedding-profile-card .profile-view-button {
    min-height: 44px; background: #fff !important; color: var(--site-accent);
    border: 1px solid #d9b5ae; border-radius: 10px; padding: 10px 6px !important;
    font-size: 14px; font-weight: 500 !important; line-height: 1.5; box-shadow: none !important;
}
.site-refresh .profile-card-3.wedding-profile-card .profile-view-button::after { margin-left: 8px; font-size: 20px; }
.site-refresh .profile-card-3.wedding-profile-card .profile-view-button:hover { color: var(--site-accent); background: #faf0ec !important; }
.site-refresh .profile-card-3.wedding-profile-card .profile-view-button:focus-visible { outline: 2px solid var(--site-accent); outline-offset: 3px; }
.site-refresh .profile-card-3.wedding-profile-card:hover { border-color: #d9b5ae !important; }
.site-refresh .navigation .nav-cta-btn { background: var(--site-accent); }
.site-refresh .navigation .nav-cta-btn:hover { background: #812725; }
.subpage-refresh { background: var(--site-surface); color: var(--site-ink); }
.subpage-refresh #UpdatePanel1 { padding-top: 70px; }
.subpage-refresh .banner_area { background: #f4ece6; height: auto; min-height: 0; border-bottom: 1px solid var(--site-line); box-shadow: none !important; }
.subpage-refresh .banner_area::before, .subpage-refresh .banner_area::after { display: none; }
.subpage-refresh .banner_area .banner_content { padding: 32px 0; height: auto; min-height: 0; text-align: left; }
.subpage-refresh .banner_content h3 { font-size: 34px; font-weight: 600; line-height: 1.3; margin: 0 0 10px; padding: 0; color: var(--site-ink); }
.subpage-refresh .banner_content h3 img { display: none; }
.subpage-refresh .banner_content a { color: var(--site-muted); font-size: 13px; }
.subpage-refresh .general_area_section,
.subpage-refresh .general_area_section_without_image { margin-top: 0; padding-top: 36px !important; padding-bottom: 40px !important; }
.subpage-refresh .container .container { width: 100% !important; padding-left: 15px; padding-right: 15px; }
.subpage-refresh .banner_area + section > .container > .welcome_title { display: none; }
.subpage-refresh .price_list .price_box .price_round { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; border-radius: 16px; width: auto !important; height: 132px !important; margin: 16px; padding: 24px 12px !important; background: #f7f2ee !important; color: var(--site-accent); }
.subpage-refresh .price_round h5, .subpage-refresh .price_round h6 { margin: 0; color: var(--site-accent); line-height: 1.5; }
.subpage-refresh .price_round h6, .subpage-refresh .price_round h6 * { color: var(--site-muted) !important; font-size: 13px; }
.subpage-refresh .price_box h4 { color: var(--site-ink); font-size: 20px; line-height: 1.5; }
.subpage-refresh .blog_grid_item:has(.price_box) { background: #fff !important; }
.subpage-refresh .price_box table { font-size: 14px; line-height: 1.6; }
.subpage-refresh .price_box table td { padding: 10px; }
.subpage-refresh .search-filter-toggle { min-height: 46px; border-radius: 10px; background: var(--site-accent); box-shadow: none; }
.subpage-refresh #divMatchFoundDesktop .modal-dialog { max-width: 100%; }
.subpage-refresh .advertising-page h1 { font-size: 30px; color: var(--site-ink); margin-bottom: 24px; }
.subpage-refresh .advertising-page table { width: 100%; table-layout: fixed; border-collapse: collapse; }
.subpage-refresh .advertising-page td { padding: 12px; overflow-wrap: anywhere; border-color: var(--site-line); }
.subpage-refresh .advertising-page font { font-family: inherit; font-size: 14px; color: var(--site-ink); }
.subpage-refresh .advertising-page tr[bgcolor] { background: #fff; }
.subpage-refresh .advertising-page .advertising-sample { padding: 12px; border: 1px dashed var(--site-line); margin-top: 12px; }
.subpage-refresh .divStory { border-color: var(--site-line); border-radius: 14px; box-shadow: none; font-family: inherit; }
.subpage-refresh .divStory .bg-warning { background: transparent !important; color: var(--site-muted); text-align: left; font-size: 13px; }
.subpage-refresh .stories_area .story-pagination a,
.subpage-refresh .stories_area .story-pagination span { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; min-height: 40px; border-radius: 8px; border: 1px solid #d9b5ae; color: var(--site-accent); }
.subpage-refresh .stories_area .story-pagination a { background: #fff; }
.subpage-refresh .stories_area .story-pagination span { background: #faf0ec; }
.subpage-refresh .welcome_title { padding-bottom: 24px; }
.subpage-refresh .welcome_title h3 { color: var(--site-ink); font-size: 28px; font-weight: 600; line-height: 1.35; }
.subpage-refresh .welcome_title > img { display: none; }
.subpage-refresh .modal-content,
.subpage-refresh .panel { border: 1px solid var(--site-line); border-radius: 16px; box-shadow: 0 4px 16px rgba(55,37,29,.04); background: #fff; }
.subpage-refresh .modal-header { padding: 24px 24px 12px; border-bottom-color: var(--site-line); }
.subpage-refresh .modal-header .welcome_title { padding-bottom: 8px; }
.subpage-refresh .modal-body { padding: 24px; }
.subpage-refresh .modal-footer { border-top-color: var(--site-line); padding: 16px 24px; }
.subpage-refresh .modal-dialog { max-width: calc(100% - 32px); }
.subpage-refresh .form-group { margin-bottom: 20px; }
.subpage-refresh .control-label, .subpage-refresh label { color: var(--site-muted); line-height: 1.5; }
.subpage-refresh .form-control { min-height: 46px; height: auto; border: 1px solid #d9cfc8; border-radius: 8px; box-shadow: none; background: #fff; color: var(--site-ink); font-size: 15px; }
.subpage-refresh textarea.form-control { min-height: 120px; resize: vertical; }
.subpage-refresh select.form-control { height: 46px; max-width: 100%; }
.subpage-refresh .form-control:focus { border-color: var(--site-accent); box-shadow: 0 0 0 3px rgba(163,52,50,.12); }
.subpage-refresh .input-group-addon { color: var(--site-muted); background: #f7f2ee; border-color: #d9cfc8; }
.subpage-refresh .input-group .form-control { border-radius: 0 8px 8px 0; }
.subpage-refresh .input-group-addon:first-child { border-radius: 8px 0 0 8px; }
.subpage-refresh .btn.login_btn,
.subpage-refresh .register_angkar_btn,
.subpage-refresh .btn-primary { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 46px; height: auto !important; padding: 10px 22px !important; line-height: 1.5 !important; border: 1px solid var(--site-accent); border-radius: 10px; background: var(--site-accent); color: #fff; box-shadow: none !important; white-space: normal; }
.subpage-refresh .login_btn::before, .subpage-refresh .login_btn::after,
.subpage-refresh .register_angkar_btn::before, .subpage-refresh .register_angkar_btn::after { display: none; }
.subpage-refresh .login_btn:hover, .subpage-refresh .btn-primary:hover { background: #812725; color: #fff; }
.subpage-refresh .btn-default { min-height: 44px; border-color: #d9cfc8; border-radius: 8px; background: #fff; color: var(--site-ink); }
.subpage-refresh a:focus-visible, .site-refresh button:focus-visible { outline: 2px solid var(--site-accent); outline-offset: 3px; }
.subpage-refresh .panel-heading { background: #f7f2ee; color: var(--site-ink); border-color: var(--site-line); border-radius: 15px 15px 0 0; }
.subpage-refresh .panel-heading h4 { color: var(--site-ink); }
.subpage-refresh .who_we_left h4, .subpage-refresh .blog_grid_content h3, .subpage-refresh .address_item h3 { color: var(--site-ink); }
.subpage-refresh .who_we_left p { color: var(--site-muted); font-size: 15px; line-height: 1.8; }
.subpage-refresh .who_we_right img, .subpage-refresh .blog_grid_img img { max-width: 100%; height: auto; border-radius: 16px; }
.subpage-refresh .blog_grid_item { border: 1px solid var(--site-line); border-radius: 16px; background: #fff; overflow: hidden; margin-bottom: 24px; }
.subpage-refresh .address_details { padding: 36px 0; }
.subpage-refresh .address_item { padding: 24px 16px; margin-bottom: 16px; border: 1px solid var(--site-line); border-radius: 16px; background: #fff; }
.subpage-refresh .address_item h4 { font-size: 14px; line-height: 1.7; font-weight: 400; color: var(--site-muted); overflow-wrap: anywhere; }
.subpage-refresh .address_item img { width: 44px; height: 44px; object-fit: contain; }
.subpage-refresh .nav-tabs { border-bottom-color: var(--site-line); }
.subpage-refresh .nav-tabs > li.active > a { color: var(--site-accent); border-color: var(--site-line); border-bottom-color: #fff; }
.subpage-refresh .alert { border-radius: 10px; line-height: 1.6; }
/* One footer and one mobile navigation, including on real mobile user agents. */
.site-refresh .rv-mobile-nav { display: none !important; }
.site-refresh .footer_area { margin-top: auto; background: #332c2c; padding: 22px 24px; }
.site-refresh .copyright { display: flex; align-items: center; justify-content: space-between; gap: 24px; width: 100%; max-width: 1170px; margin: auto; }
.site-refresh .copyright::before, .site-refresh .copyright::after { display: none; }
.site-refresh .copyright .copyright_left,
.site-refresh .copyright .copyright_right { display: block; width: auto; float: none; background: transparent !important; color: #e6ddd7 !important; }
.site-refresh .copyright .copyright_text,
.site-refresh .copyright .copyright_social { float: none; width: auto; max-width: none; height: auto !important; padding: 0 !important; }
.site-refresh .copyright .copyright_text h4 { margin: 0; font-size: 12px !important; line-height: 1.7; color: #e6ddd7; font-weight: 400; }
.site-refresh .copyright .copyright_social { font-size: 12px; line-height: 1.7; text-align: right; }
@media (max-width: 767px) {
    .subpage-refresh #divSearchFilter { display: block !important; }
    .subpage-refresh #divSearchFilter .search-filter-toggle { margin: 0 0 16px; }
    .subpage-refresh #divMatchFoundDesktop .modal-dialog { margin: 0 0 24px; }
    .site-refresh .copyright { flex-direction: column; gap: 8px; }
    .site-refresh .copyright .copyright_text, .site-refresh .copyright .copyright_social { text-align: center; }
    .subpage-refresh .banner_area .banner_content { padding: 22px 0; }
    .subpage-refresh .banner_content h3 { font-size: 26px; }
    .subpage-refresh .welcome_title h3 { font-size: 24px; }
    .subpage-refresh .modal-dialog { width: auto; margin: 0 12px 24px; max-width: calc(100% - 24px); }
    .subpage-refresh .modal-header { padding: 20px 16px 10px; }
    .subpage-refresh .modal-body { padding: 20px 16px; }
    .subpage-refresh .modal-footer { padding: 16px; }
    .subpage-refresh .form-control { font-size: 16px; min-height: 48px; }
    .subpage-refresh select.form-control { height: 48px; }
    .subpage-refresh .address_details { padding: 24px 0; }
}
@media (max-width: 599px) {
    .site-refresh { padding-bottom: 0 !important; }
    .site-refresh > form { padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px)); }
    .subpage-refresh #UpdatePanel1 { padding-top: 68px; }
    .subpage-refresh .general_area_section, .subpage-refresh .general_area_section_without_image { padding-top: 24px !important; padding-bottom: 28px !important; }
    .subpage-refresh .registration-form { padding-top: 24px !important; }
    .subpage-refresh .welcome_title { padding-bottom: 20px; }
}

/* One compact card layout on every page. */
@media (max-width: 599px) {
    .site-refresh .profile-card-3.wedding-profile-card {
        min-height: 0; padding: 16px 14px; margin-bottom: 14px;
        display: grid; grid-template-columns: 82px minmax(0, 1fr); gap: 12px;
        border-radius: 16px !important; box-shadow: 0 3px 12px rgba(76,42,36,.08) !important;
    }
    .site-refresh .profile-card-3.wedding-profile-card .profile-thumb-block { padding: 4px 0 0; background: none; }
    .site-refresh .profile-card-3.wedding-profile-card .profile {
        width: 76px !important; max-width: 76px; margin: 0; border-width: 2px;
    }
    .site-refresh .profile-card-3.wedding-profile-card .card-content { padding: 0; width: 100%; min-width: 0; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); font-size: 12px; }
    .site-refresh .profile-card-3.wedding-profile-card .card-content > h4 span { display: inline-block; max-width: 100%; overflow-wrap: anywhere; }
    .site-refresh .profile-card-3.wedding-profile-card .card-content > h4 {
        min-height: 0; font-size: 17px; margin: 0 0 5px; text-align: left; justify-content: flex-start; display: block; overflow-wrap: normal;
    }
    .site-refresh .profile-card-3.wedding-profile-card .profile-identity { text-align: left; font-size: 12px; margin-bottom: 5px; }
    .site-refresh .profile-card-3.wedding-profile-card .profile-heart-divider { display: none; }
    .site-refresh .profile-card-3.wedding-profile-card .profile-fact { padding: 5px 0; gap: 5px; }
    .site-refresh .profile-card-3.wedding-profile-card .profile-fact-icon { flex-basis: 20px; width: 20px; height: 24px; font-size: 13px; background: none; }
    .site-refresh .profile-card-3.wedding-profile-card .profile-height { padding-left: 5px; }
    .site-refresh .profile-card-3.wedding-profile-card .profile-view-button { min-height: 44px; padding: 10px 6px !important; font-size: 14px; border-radius: 10px; box-shadow: none !important; }
    .site-refresh .profile-card-3.wedding-profile-card.has-gold-ribbon::before {
        top: auto; bottom: 15px; left: 8px; right: auto; transform: none;
        width: 88px; padding: 5px 3px; white-space: normal; font-size: 9px; line-height: 1.4; border-radius: 5px;
    }
}
@media (max-width: 360px) {
    .site-refresh .profile-card-3.wedding-profile-card .card-content > h4 { font-size: 15px; }
    .site-refresh .profile-card-3.wedding-profile-card .profile-age,
    .site-refresh .profile-card-3.wedding-profile-card .profile-height { font-size: 11px; gap: 2px; }
    .site-refresh .profile-card-3.wedding-profile-card .profile-fact-icon { flex-basis: 17px; }
}


/* Interaction details belong to the shared component too. */
.site-refresh .profile-card-3.wedding-profile-card { cursor: default; }
.site-refresh .profile-card-3.wedding-profile-card[onclick] { cursor: pointer; }
.site-refresh .profile-card-3.wedding-profile-card .profile-height-icon { width: 100%; max-width: 22px; height: auto; aspect-ratio: 1; }
.site-refresh a:focus-visible, .site-refresh button:focus-visible { outline: 2px solid var(--site-accent) !important; outline-offset: 3px; }

/* Public-page details reviewed through the actual navigation paths. */
.subpage-refresh .modal-login .modal-content { padding: 0; }
.subpage-refresh .modal-login .input-group-addon i { position: static; }
.subpage-refresh .modal-dialog.modal-sm.modal-login { width: 420px; }
.subpage-refresh .auth-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin: 0; background: #faf7f4; border-radius: 0 0 16px 16px; }
.subpage-refresh .auth-footer-link { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 8px; color: var(--site-accent); line-height: 1.5; }
.subpage-refresh .membership-payment-note { font-size: 13px; color: var(--site-muted); line-height: 1.5; }
.subpage-refresh .story-card { margin-bottom: 24px; }
.subpage-refresh .story-card-body { padding: 20px; }
.subpage-refresh .story-card .story-thumbnail { width: 150px; height: 150px; object-fit: cover; border: 3px solid #fff; outline: 2px solid #dbc8bb; box-shadow: none; }
.subpage-refresh .stories_area .story-pagination .story-page-active { background: var(--site-accent); border-color: var(--site-accent); color: #fff; }
.subpage-refresh .advertising-placeholder-wide, .subpage-refresh .advertising-placeholder-small { display: flex; align-items: center; justify-content: center; max-width: 100%; margin: 12px auto; border: 1px dashed #c9b7ac; border-radius: 8px; background: #f7f2ee; color: var(--site-muted); font-size: 12px; }
.subpage-refresh .advertising-placeholder-wide { width: 460px; aspect-ratio: 460 / 60; min-height: 44px; }
.subpage-refresh .advertising-placeholder-small { width: 130px; aspect-ratio: 130 / 60; min-height: 44px; }
.subpage-refresh .legal-content > .container { max-width: 860px; width: 100% !important; }
.subpage-refresh .legal-content .panel-body { padding: 28px; font-size: 15px; line-height: 1.85; color: var(--site-ink); }
.subpage-refresh .about-team .team-portrait { width: 300px; max-width: 100%; margin: auto; }
.subpage-refresh .about-team .team-portrait img { aspect-ratio: 1; object-fit: cover; width: 100%; border-radius: 12px; }
.subpage-refresh .about-team .team-role { color: var(--site-muted); font-size: 14px; }
.subpage-refresh .about-join { position: relative; min-height: 0; padding: 48px 24px; background: #f4ece6; }
.subpage-refresh .about-join .best_bg_slider, .subpage-refresh .about-join .right_best_content { display: none; }
.subpage-refresh .about-join .left_best_content { position: static; width: 100%; max-width: 1170px; margin: auto; }
.subpage-refresh .about-join .left_inner_content, .subpage-refresh .about-join .left_inner_right { position: static; float: none; width: 100%; max-width: none; min-height: 0; background: transparent; }
.subpage-refresh .about-join .left_inner_right h4 { padding: 0; max-width: 720px; color: var(--site-ink); font-size: 30px; line-height: 1.4; }
.subpage-refresh .about-join .left_inner_right .btn { width: auto; }
.subpage-refresh .about-testimonials { padding: 48px 0; background: #fff; }
.subpage-refresh .about-testimonials .testimonials_slider::before, .subpage-refresh .about-testimonials .test_man::before { display: none; }
.subpage-refresh .about-testimonials .item { display: flex; align-items: center; gap: 24px; }
.subpage-refresh .about-testimonials .item > .col-md-9 { flex: 1; width: auto; min-width: 0; }
.subpage-refresh .about-testimonials .item > .col-md-3 { flex: 0 0 160px; width: auto; }
.subpage-refresh .about-testimonials .test_left_content { padding: 24px; border: 1px solid var(--site-line); border-radius: 16px; background: var(--site-surface); }
.subpage-refresh .about-testimonials .test_left_content p { font-size: 15px; line-height: 1.8; color: var(--site-ink); }
.subpage-refresh .about-testimonials .test_man { float: none; margin: auto; max-width: 140px; }
.subpage-refresh .about-testimonials .test_man img { width: 100px; height: 100px; object-fit: cover; border: 3px solid #fff; outline: 2px solid #dbc8bb; box-shadow: none; }
.subpage-refresh .about-testimonials .test_man h4 { color: var(--site-ink); line-height: 1.5; }
.subpage-refresh .about-testimonials .owl-controls { position: static; margin-top: 20px; text-align: center; }
.subpage-refresh .about-testimonials .owl-prev, .subpage-refresh .about-testimonials .owl-next { min-width: 44px; min-height: 44px; }
@media (max-width: 767px) {
    .subpage-refresh .modal-dialog.modal-sm.modal-login { width: auto; }
    .subpage-refresh .legal-content .panel-body { padding: 20px; font-size: 14px; }
    .subpage-refresh .about-join, .subpage-refresh .about-testimonials { padding: 32px 20px; }
    .subpage-refresh .about-join .left_inner_right h4 { font-size: 24px; }
    .subpage-refresh .about-testimonials .item { flex-direction: column; align-items: stretch; }
    .subpage-refresh .about-testimonials .item > .col-md-3 { flex: auto; }
}
@media (max-width: 599px) {
    .subpage-refresh:has(.auth-footer) .banner_area { display: none; }
}

.site-refresh .password-toggle { cursor: pointer; min-width: 44px; text-align: center; vertical-align: middle; color: var(--site-muted); }
.site-refresh .password-toggle:focus-visible { outline: 2px solid var(--site-accent); outline-offset: 2px; }

.subpage-refresh .banner_content .current-breadcrumb { color: var(--site-muted); font-size: 13px; margin-left: 12px; }
.subpage-refresh .banner_content .current-breadcrumb::before { content: "\203A"; margin-right: 12px; }

.subpage-refresh .banner_content > a::before { display: none; }
.subpage-refresh .contact-addresses .row { display: flex; flex-wrap: wrap; row-gap: 20px; }
.subpage-refresh .contact-addresses .row > .col-sm-4 { display: flex; flex: 0 0 33.333333%; max-width: 33.333333%; }
.subpage-refresh .contact-addresses .address_item { width: 100%; margin: 0; }
.subpage-refresh .contact-form { padding-top: 0 !important; }
.subpage-refresh .contact-form .modal-dialog { margin-top: 0; }
.subpage-refresh .story-card-body > .row { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 24px; margin: 0; align-items: start; }
.subpage-refresh .story-card .divProfilePhoto { width: 150px; }
.subpage-refresh .story-card .divProfilePhoto > br, .subpage-refresh .story-content > br { display: none; }
.subpage-refresh .story-content { min-width: 0; }
.subpage-refresh .story-content .divStory { margin: 0; max-width: none; padding: 16px 20px; }
@media (max-width: 767px) {
    .subpage-refresh .contact-addresses .row > .col-sm-4 { flex-basis: 100%; max-width: 100%; }
    .subpage-refresh .story-card-body > .row { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .subpage-refresh .story-card .divProfilePhoto { margin: auto; }
    .subpage-refresh .story-content .divStory { padding: 12px; }
}

.subpage-refresh .story-card-body > .row::before, .subpage-refresh .story-card-body > .row::after { display: none; }

.subpage-refresh .about-join h2 { margin: 0 0 24px; max-width: 780px; color: var(--site-ink); font-size: 30px; line-height: 1.4; font-weight: 600; }
.subpage-refresh .about-testimonials .testimonial-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.subpage-refresh .about-testimonials .item { padding: 24px; border: 1px solid var(--site-line); border-radius: 16px; background: var(--site-surface); }
.subpage-refresh .about-testimonials .item > .col-md-3 { flex-basis: 120px; }
.subpage-refresh .about-testimonials .item > div { padding: 0; }
.subpage-refresh .about-testimonials .item > div > .row { margin: 0; }
.subpage-refresh .about-testimonials .test_left_content { border: 0; padding: 0; background: none; }
@media (max-width: 991px) { .subpage-refresh .about-testimonials .testimonial-grid { grid-template-columns: 1fr; } }
@media (max-width: 767px) { .subpage-refresh .about-join h2 { font-size: 24px; } .subpage-refresh .about-testimonials .item > .col-md-3 { flex-basis: auto; } }

.subpage-refresh .registration-form .form-group .form-group { margin-bottom: 0; }
.subpage-refresh .registration-form .intl-tel-input { display: block; width: 100%; }
.subpage-refresh .registration-form input[id$="txtMobile"] { width: 100% !important; }
.subpage-refresh .registration-form .bs-wizard-step.active > .bs-wizard-dot { background: var(--site-accent); }

.subpage-refresh .modal-login:has(.auth-footer) .modal-body > .row { margin-left: 0; margin-right: 0; }
.subpage-refresh .modal-login:has(.auth-footer) .modal-header .welcome_title { padding-bottom: 0; }
.subpage-refresh .modal-login:has(.auth-footer) .modal-body > .row:has(.input-group:not(:has(*))) { display: none; }
.subpage-refresh .modal-login:has(.auth-footer) input[type="checkbox"] { width: 18px; height: 18px; vertical-align: middle; }
.subpage-refresh .modal-login:has(.auth-footer) input[type="checkbox"] + label { display: inline-flex; align-items: center; min-height: 44px; margin: 0; }

.subpage-refresh .modal-login:has(.auth-footer) .btn.login_btn { width: auto; min-width: 180px; max-width: 100%; }
.subpage-refresh .modal-login:has(.auth-footer) .modal-body > .form-group:has(.input-group:not(:has(*))) { display: none; }

.site-refresh .search-submit-button { min-height: 46px; padding: 10px 22px; border: 1px solid var(--site-accent); border-radius: 10px; background: var(--site-accent); color: #fff; font: 500 14px/1.5 "Poppins", sans-serif; box-shadow: none; }
.site-refresh .search-submit-button:hover { background: #812725; }
.subpage-refresh #divSearchFilter .panel { border: 0; box-shadow: none; }
.subpage-refresh #divSearchFilter .panel-body { padding: 0 !important; }

/* Search keeps the same surfaces and profile cards as the homepage. */
.subpage-refresh .member-search-page {
    width: 100% !important; max-width: 1170px; margin: 0 auto;
    padding: 32px 24px 48px !important;
}
.subpage-refresh .member-search-page > .container { width: 100% !important; max-width: none; padding-left: 0; padding-right: 0; }
.member-search-page .search-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
.member-search-page .search-results-host { min-width: 0; width: 100%; }
.member-search-page #divSearchFilter.search-filter-sidebar,
.member-search-page #divMatchFoundDesktop.search-results {
    float: none; width: 100%; max-width: none; min-width: 0; padding: 0; margin: 0;
}
.member-search-page .search-filter-panels { display: grid; gap: 20px; }
.member-search-page .search-quick-fields { display: grid; gap: 12px; }
.member-search-page #divSearchFilter .search-quick-panel .form-inline { display: block; }
.member-search-page #divSearchFilter .search-quick-panel .form-inline > span { padding-left: 0 !important; }
.member-search-page .search-quick-panel,
.member-search-page .search-advanced-panel {
    min-width: 0; border: 1px solid var(--site-line); border-radius: 16px;
    background: #fff; box-shadow: 0 3px 12px rgba(76,42,36,.04); overflow: hidden;
}
.member-search-page .search-advanced-panel { overflow: visible; }
.member-search-page #divSearchFilter .modal-dialog {
    position: static; width: 100% !important; max-width: none; margin: 0 !important; padding: 0;
}
.member-search-page #divSearchFilter .modal-content,
.member-search-page #divSearchFilter .panel {
    border: 0; border-radius: 0; box-shadow: none; background: transparent; margin: 0; padding: 0;
}
.member-search-page #divSearchFilter .modal-header {
    padding: 20px 20px 16px; border: 0; border-bottom: 1px solid var(--site-line); background: transparent;
}
.member-search-page #divSearchFilter .modal-header h4 { margin: 0; color: var(--site-ink); font-size: 18px; font-weight: 600; line-height: 1.4; }
.member-search-page #divSearchFilter .modal-body { padding: 20px; max-height: none; overflow: visible; }
.member-search-page #divSearchFilter .panel-body { padding: 0 !important; }
.member-search-page #divSearchFilter .row { margin-left: 0; margin-right: 0; }
.member-search-page #divSearchFilter .form-group { position: relative; margin: 0 0 16px; }
.member-search-page #divSearchFilter .form-group .form-group { margin-bottom: 0; }
.member-search-page #divSearchFilter .form-group:last-child { margin-bottom: 0; }
.member-search-page #divSearchFilter .control-label,
.member-search-page #divSearchFilter .chkListlabel { font-size: 12px; font-weight: 500 !important; line-height: 1.5; margin-bottom: 6px; text-align: left; }
.member-search-page #divSearchFilter .form-control {
    width: 100% !important; min-width: 0; height: 46px; min-height: 46px;
    font-size: 14px; padding: 10px; border-color: #d9cfc8; border-radius: 8px;
}
.member-search-page #divSearchFilter .form-inline:has(select) { gap: 6px; }
.member-search-page #divSearchFilter .form-inline:has(select) .control-label { margin: 0; }
.member-search-page #divSearchFilter .form-inline:has(select) select { padding-left: 6px; padding-right: 2px; }
.member-search-page #divSearchFilter input[type="checkbox"],
.member-search-page #divSearchFilter input[type="radio"] { margin: 0 5px 0 0 !important; vertical-align: middle; }
.member-search-page #divSearchFilter table.form-control {
    display: table; height: auto !important; min-height: 0; padding: 0; border: 0 !important;
    border-radius: 0; background: transparent; font-size: 14px;
}
.member-search-page #divSearchFilter div:has(> table.form-control) { border-color: #d9cfc8 !important; border-radius: 8px; padding: 4px 6px; overflow-y: auto !important; }
.member-search-page #divSearchFilter table.form-control td { padding: 4px 0; }
.member-search-page #divSearchFilter table.form-control label { margin-bottom: 0; font-size: 13px; line-height: 1.6; }
.member-search-page #divSearchFilter .ui-dropdownchecklist-selector-wrapper,
.member-search-page #divSearchFilter .ui-dropdownchecklist-selector {
    display: block; min-height: 46px; max-width: 100%; border-radius: 8px; border-color: #d9cfc8; background: #fff;
}
.member-search-page #divSearchFilter .ui-dropdownchecklist-selector { display: flex; align-items: center; padding: 8px 10px; color: var(--site-ink); font-size: 14px; }
.member-search-page #divSearchFilter .ui-dropdownchecklist-text { min-width: 0; max-width: calc(100% - 20px); line-height: 1.5; }
.member-search-page #divSearchFilter .ui-dropdownchecklist-dropcontainer-wrapper { width: 100% !important; max-width: 100%; z-index: 20; }
.member-search-page #divSearchFilter .ui-dropdownchecklist-dropcontainer {
    width: 100% !important; max-height: min(240px, 45vh); box-sizing: border-box;
    border: 1px solid #d9cfc8; border-radius: 8px; background: #fff;
    box-shadow: 0 6px 18px rgba(55,37,29,.12); overflow-x: hidden;
}
.member-search-page #divSearchFilter .ui-dropdownchecklist-item {
    display: flex; align-items: flex-start; gap: 7px; padding: 6px 8px;
    white-space: normal !important; color: var(--site-ink) !important;
}
.member-search-page #divSearchFilter .ui-dropdownchecklist-item input[type="checkbox"] { flex: 0 0 auto; margin: 3px 0 0 !important; }
.member-search-page #divSearchFilter .ui-dropdownchecklist-item label.ui-dropdownchecklist-text {
    flex: 1; min-width: 0; max-width: none; margin: 0; padding: 0;
    white-space: normal; overflow-wrap: anywhere; color: var(--site-ink);
    font-size: 13px; font-weight: 400; line-height: 1.5;
}
.member-search-page .search-filter-group { border-top: 1px solid var(--site-line); margin: 0; }
.member-search-page .search-filter-group:first-child { border-top: 0; }
.member-search-page .search-filter-group > summary {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    min-height: 52px; padding: 14px 0; list-style: none; cursor: pointer;
    font-size: 14px; font-weight: 600; color: var(--site-ink); line-height: 1.5;
}
.member-search-page .search-filter-group > summary::-webkit-details-marker { display: none; }
.member-search-page .search-filter-group > summary::after { content: "+"; flex: 0 0 20px; text-align: center; color: var(--site-muted); font-size: 20px; font-weight: 400; }
.member-search-page .search-filter-group[open] > summary::after { content: "\2212"; }
.member-search-page .search-filter-group > summary:focus-visible { outline: 2px solid var(--site-accent); outline-offset: 2px; border-radius: 4px; }
.member-search-page .search-filter-fields { padding: 2px 0 18px; }
.member-search-page .search-filter-fields > .row:last-child .form-group { margin-bottom: 0; }
.member-search-page .search-filter-actions { padding: 16px 20px 20px; border-top: 1px solid var(--site-line); background: #fff; }
.member-search-page .search-filter-actions .search-submit-button,
.member-search-page .search-quick-panel .search-submit-button { width: 100% !important; }
.member-search-page .search-filter-toggle {
    display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 48px;
    margin: 0 0 16px; padding: 12px 16px; border: 1px solid var(--site-line); border-radius: 12px;
    color: var(--site-ink); background: #fff; box-shadow: none; font: 500 14px/1.5 "Poppins", sans-serif;
}
.member-search-page .search-results-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 20px; margin: 0 0 20px; }
.member-search-page .search-results-heading { flex: 1 1 180px; min-width: 0; }
.member-search-page .search-results-heading h2 { margin: 0 0 5px; font-size: 24px; font-weight: 600; line-height: 1.35; color: var(--site-ink); }
.member-search-page .search-results-heading span { color: var(--site-muted); font-size: 13px; line-height: 1.5; }
.member-search-page .search-page-size { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; }
.member-search-page .search-page-size label { margin: 0; font-size: 12px; font-weight: 500 !important; color: var(--site-muted); }
.member-search-page .search-page-size select.form-control { width: 76px !important; min-height: 44px; height: 44px; font-size: 14px; padding: 8px; }
.member-search-page .search-pagination { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; width: auto; max-width: 100%; padding: 0; height: auto; }
.member-search-page .search-pagination .btn.login_btn {
    display: inline-flex; align-items: center; justify-content: center;
    width: 44px !important; min-width: 44px; height: 44px !important; min-height: 44px;
    padding: 0 !important; margin: 0; border: 1px solid #d9cfc8; border-radius: 9px;
    background: #fff; color: var(--site-ink); font-size: 16px !important; font-weight: 500 !important;
    line-height: 1 !important; box-shadow: none !important;
}
.member-search-page .search-pagination .btn.login_btn:hover { border-color: #d9b5ae; background: #faf0ec; color: var(--site-accent); }
.member-search-page .search-pagination .aspNetDisabled,
.member-search-page .search-pagination .aspNetDisabled:hover { opacity: .45; background: #fff; border-color: var(--site-line); color: var(--site-muted); }
.member-search-page .search-pagination-footer { justify-content: center; margin-top: 24px; }
.member-search-page .search-message { max-width: 100%; }
.member-search-page .search-message:empty { display: none; }
.member-search-page .search-message .alert { max-width: 100% !important; width: auto !important; margin: 0 0 20px; }
.member-search-page .search-results-grid {
    display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 20px;
    width: 100% !important; margin: 0; padding: 0;
}
.member-search-page .search-results-grid > span { display: contents; }
.member-search-page .search-results-grid > br { display: none; }
.member-search-page .search-results-grid::before,
.member-search-page .search-results-grid::after { display: none; }
.member-search-page .search-result-item { display: flex; width: auto !important; min-width: 0; max-width: 100%; float: none; margin: 0; padding: 0; }
.member-search-page .search-result-item > .wedding-profile-card { flex: 1; width: 100%; max-width: none; margin: 0; }
@media (min-width: 600px) {
    .member-search-page .search-results-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 992px) {
    .member-search-page .search-layout { grid-template-columns: 280px minmax(0, 1fr); }
    .member-search-page .search-filter-toggle { display: none; }
    .member-search-page #divSearchFilter .search-filter-panels { display: grid; }
}
@media (min-width: 1200px) {
    .member-search-page .search-results-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
    .member-search-page #divSearchFilter.search-filters-collapsed .search-filter-panels { display: none; }
    .member-search-page .search-layout { gap: 8px; }
    .member-search-page #divSearchFilter:not(.search-filters-collapsed) { margin-bottom: 20px; }
}
@media (max-width: 599px) {
    .subpage-refresh .member-search-page { padding: 24px 16px 32px !important; }
    .member-search-page .search-results-toolbar { gap: 14px; margin-bottom: 16px; }
    .member-search-page .search-results-heading { flex-basis: 100%; }
    .member-search-page .search-results-heading h2 { font-size: 22px; }
    .member-search-page .search-pagination { margin-left: auto; gap: 5px; }
    .member-search-page .search-pagination .btn.login_btn { width: 40px !important; min-width: 40px; }
    .member-search-page .search-pagination-footer { justify-content: center; margin-left: 0; }
    .member-search-page .search-results-grid { gap: 14px; }
    .member-search-page #divSearchFilter .form-control { font-size: 16px; min-height: 48px; height: 48px; }
    .member-search-page #divSearchFilter .ui-dropdownchecklist-selector-wrapper,
    .member-search-page #divSearchFilter .ui-dropdownchecklist-selector { min-height: 48px; font-size: 16px; }
    .member-search-page #divSearchFilter .modal-body { padding: 16px; }
    .member-search-page #divSearchFilter .modal-header { padding: 18px 16px 14px; }
    .member-search-page .search-filter-actions { padding: 16px; }
}

/* Public pages use a single content surface and the same form rhythm. */
.subpage-refresh .auth-page { width: 100%; max-width: 1170px; margin: auto; padding: 32px 24px 48px !important; }
.subpage-refresh .auth-page .modal-dialog { margin: 0 auto; max-width: 100%; }
.subpage-refresh .auth-card { overflow: hidden; }
.subpage-refresh .auth-card .modal-header { padding: 24px 28px 0; border: 0; }
.subpage-refresh .auth-card .welcome_title { padding: 0 0 20px; text-align: left; }
.subpage-refresh .auth-card .welcome_title h3 { margin: 0; font-size: 26px; line-height: 1.35; }
.subpage-refresh .auth-card .welcome_title img { display: none; }
.subpage-refresh .auth-page .auth-form-fields { padding: 0 28px 28px; }
.subpage-refresh .auth-page .auth-field { margin: 0 0 20px; }
.subpage-refresh .auth-page .auth-field > .control-label { display: block; margin-bottom: 7px; font-size: 13px; font-weight: 500; }
.subpage-refresh .auth-page .input-group-addon { min-width: 46px; padding: 10px 14px; }
.subpage-refresh .auth-page .input-group .password-toggle { min-width: 46px; }
.subpage-refresh .auth-options { margin: 0 0 20px; display: flex; align-items: center; text-align: left; min-height: 32px; }
.subpage-refresh .auth-options > span { display: inline-flex; align-items: center; gap: 8px; }
.subpage-refresh .auth-options input { margin: 0; width: 16px; height: 16px; }
.subpage-refresh .auth-options label { margin: 0; font-size: 13px; font-weight: 400; }
.subpage-refresh .auth-actions { display: flex; align-items: center; justify-content: flex-start; gap: 12px; margin-top: 4px; }
.subpage-refresh .login-page .auth-actions .btn, .subpage-refresh .recovery-page .auth-actions .btn { width: 100% !important; }
.subpage-refresh .recovery-page .modal-dialog { width: 420px; }
.subpage-refresh .auth-message { margin: 20px 0 0; }
.subpage-refresh .auth-card .auth-footer { padding: 12px 20px; border-top: 1px solid var(--site-line); }
.subpage-refresh .auth-page .help-block { font-size: 13px; line-height: 1.5; }
.subpage-refresh .registration-page .modal-dialog { width: 860px; }
.subpage-refresh .registration-page .registration-field-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin: 0; }
.subpage-refresh .registration-page .registration-field-row::before,
.subpage-refresh .registration-page .registration-field-row::after { display: none; }
.subpage-refresh .registration-field-row > [class*="col-"] { float: none; width: auto; min-width: 0; padding: 0; }
.subpage-refresh .registration-field-row .form-group { margin: 0 0 20px; }
.subpage-refresh .registration-field-row .form-group .form-group { margin-bottom: 0; }
.subpage-refresh .registration-field-row .control-label { font-size: 13px; margin-bottom: 7px; font-weight: 500; }
.subpage-refresh .registration-consent { margin: 4px 0 24px; padding-top: 20px; border-top: 1px solid var(--site-line); }
.subpage-refresh .registration-consent > .control-label { font-size: 13px; display: inline-block; margin-bottom: 8px; }
.subpage-refresh .registration-mobile-row .iti, .subpage-refresh .registration-mobile-row .intl-tel-input { width: 100%; }
.subpage-refresh .auth-page .bs-wizard-info { color: var(--site-muted); font-size: 13px; line-height: 1.5; }
.subpage-refresh .registration-consent-copy { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 13px; line-height: 1.6; }
.subpage-refresh .registration-consent-choice { display: inline-flex; align-items: center; }
.subpage-refresh .registration-consent-choice input { margin: 0 3px 0 0; width: 16px; height: 16px; }
.subpage-refresh .registration-page .registration-consent-text { min-height: 0; height: auto; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: var(--site-ink); font-size: 13px; }
.subpage-refresh .registration-consent-copy a { color: var(--site-accent); text-decoration: underline; text-underline-offset: 3px; }
.subpage-refresh .registration-page .auth-actions .btn { min-width: 180px; }

/* Pricing remains easy to compare without nested frames or oversized price badges. */
.subpage-refresh .membership-page > .container { width: 100%; max-width: 1122px; padding: 0 24px; }
.subpage-refresh .membership-intro { margin: 0 0 24px; }
.subpage-refresh .membership-intro h2 { margin: 0; font-size: 26px; line-height: 1.4; font-weight: 600; color: var(--site-ink); }
.subpage-refresh .membership-plans { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; }
.subpage-refresh .membership-plan { border: 1px solid var(--site-line); border-radius: 16px; padding: 28px; min-width: 0; background: #fff; box-shadow: 0 3px 12px rgba(76,42,36,.04); }
.subpage-refresh .membership-plan-gold { border-color: #d8b7a3; }
.subpage-refresh .membership-plan-header { position: static; background: transparent; padding-bottom: 20px; border-bottom: 1px solid var(--site-line); }
.subpage-refresh .membership-plan-header h3 { margin: 0 0 14px; color: var(--site-ink); font-size: 22px; line-height: 1.4; font-weight: 600; }
.subpage-refresh .membership-price { display: flex; flex-direction: column; justify-content: center; gap: 5px; min-height: 72px; color: var(--site-accent); font-size: 30px; line-height: 1.3; font-weight: 600; }
.subpage-refresh .membership-payment-note { color: var(--site-muted); font-size: 13px; line-height: 1.5; font-weight: 400; }
.subpage-refresh .membership-plan > h4 { margin: 20px 0 8px; color: var(--site-ink); font-size: 14px; font-weight: 600; }
.subpage-refresh .membership-features { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 14px; line-height: 1.6; color: var(--site-muted); }
.subpage-refresh .membership-feature-indicator { width: 30px; }
.subpage-refresh .membership-features td { padding: 12px 0; vertical-align: top; border: 0; border-bottom: 1px solid #f0e9e4; overflow-wrap: anywhere; }
.subpage-refresh .membership-features tr:last-child td { border-bottom: 0; }
.subpage-refresh .membership-features td:last-child { width: 30px; padding-left: 10px; text-align: right; }
.subpage-refresh .membership-features p { margin: 0; }
.subpage-refresh .membership-feature-status { font-size: 15px; }
.subpage-refresh .membership-feature-status.is-included { color: #2b7145; }
.subpage-refresh .membership-feature-status.is-unavailable { color: #a68b81; }
.subpage-refresh .membership-plan-note { margin: 18px 0 0; color: var(--site-muted); font-size: 12px; line-height: 1.7; }
.subpage-refresh .membership-plan-actions { margin-top: 18px; }

/* Stories retain their content while photos, metadata, and pagination form one clean list. */
.subpage-refresh .success-stories-page > .container { max-width: 1080px; }
.subpage-refresh .story-editor { padding: 24px; border: 1px solid var(--site-line); border-radius: 16px; margin-bottom: 24px; background: #fff; }
.subpage-refresh .story-editor-field > label { display: block; font-size: 14px; margin-bottom: 10px; }
.subpage-refresh .story-editor-actions, .subpage-refresh .story-admin-actions { margin-top: 16px; }
.subpage-refresh .story-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px; margin: 0 0 24px; }
.subpage-refresh .story-pagination-bar { float: none; width: auto; height: auto; padding: 0; margin: 0; overflow: visible; }
.subpage-refresh .story-pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; }
.subpage-refresh .story-pagination > span { display: contents; padding: 0; border: 0; background: transparent; border-radius: 0; }
.subpage-refresh .success-stories-page .story-pagination > span { display: contents; border: 0; padding: 0; min-width: 0; min-height: 0; background: transparent; }
.subpage-refresh .story-pagination > br { display: none; }
.subpage-refresh .story-pagination .story-page-link { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 6px; border: 1px solid #d9cfc8; border-radius: 8px; color: var(--site-ink); background: #fff; font-size: 14px; }
.subpage-refresh .story-pagination .story-page-active { color: #fff; background: var(--site-accent); border-color: var(--site-accent); }
.subpage-refresh .story-list { display: grid !important; gap: 24px; margin: 0; padding: 0; }
.subpage-refresh .story-pagination .story-page-ellipsis { display: inline-flex; align-items: center; justify-content: center; min-width: 12px; width: auto; min-height: 44px; padding: 0; border: 0; background: transparent; color: var(--site-muted); }
.subpage-refresh .success-stories-page .story-pagination .story-page-ellipsis { display: inline-flex; min-width: 12px; width: auto; border: 0; padding: 0; border-radius: 0; background: transparent; }
.subpage-refresh .story-card .story-thumbnail { border-radius: 12px; }
.subpage-refresh .story-list > span { display: contents; }
.subpage-refresh .story-list > br { display: none; }
.subpage-refresh .story-list .story-card { margin: 0; }
.subpage-refresh .story-content .divStory { border: 0; border-radius: 0; padding: 0; box-shadow: none; font-family: inherit; font-size: 15px; line-height: 1.8; }
.subpage-refresh .story-content .divStory .row { margin: 0; }
.subpage-refresh .story-content .divStory .row > [class*="col-"] { padding-left: 0; padding-right: 12px; }
.subpage-refresh .story-content .divStory p { margin: 0 0 14px; line-height: 1.8; }

/* Informational pages use readable articles and restrained content cards. */
.subpage-refresh .legal-article { padding: 28px 32px; background: #fff; border: 1px solid var(--site-line); border-radius: 16px; color: var(--site-ink); font-size: 15px; line-height: 1.85; }
.subpage-refresh .legal-article h2 { margin: 28px 0 12px; font-size: 19px; font-weight: 600; line-height: 1.5; color: var(--site-ink); }
.subpage-refresh .legal-article h2:first-child { margin-top: 0; }
.subpage-refresh .legal-article p { margin: 0 0 16px; font-size: inherit; line-height: inherit; color: inherit; }
.subpage-refresh .legal-article a { overflow-wrap: anywhere; color: var(--site-accent); }
.subpage-refresh .legal-article .alert-info { margin: 16px 0; padding: 16px; color: var(--site-ink); background: #f7f2ee; border-color: var(--site-line); font-size: 14px; line-height: 1.8; }
.subpage-refresh .legal-article .alert-info p { margin: 0; font-size: inherit; line-height: inherit; }
.subpage-refresh .about-heading { padding-bottom: 24px; }
.subpage-refresh .about-heading h2 { margin: 0; font-size: 28px; font-weight: 600; color: var(--site-ink); line-height: 1.4; }
.subpage-refresh .about-intro-media img { width: 100%; max-width: 100%; height: auto; border-radius: 16px; }
.subpage-refresh .team-card { text-align: center; }
.subpage-refresh .about-team .team-portrait { width: 260px; max-width: 100%; margin: auto; }
.subpage-refresh .about-testimonials .testimonial-card { display: flex; align-items: flex-start; gap: 24px; margin: 0; }
.subpage-refresh .about-testimonials .testimonial-card .test_left_content { flex: 1; min-width: 0; margin: 0; padding: 0; border: 0; }
.subpage-refresh .about-testimonials .testimonial-card .test_man { flex: 0 0 110px; margin: 0; text-align: center; }
.subpage-refresh .testimonial-author { margin: 12px 0 0; color: var(--site-ink); font-size: 14px; font-weight: 500; line-height: 1.5; }
.subpage-refresh .contact-form-shell { width: 100%; max-width: 740px; }
.subpage-refresh .contact-fields { padding: 24px 28px 28px; }
.subpage-refresh .contact-fields .row { margin: 0; }
.subpage-refresh .contact-fields .form-group > .control-label { font-size: 13px; margin-bottom: 7px; font-weight: 500; }
.subpage-refresh .contact-form-actions { display: flex; justify-content: flex-start; margin-top: 4px; }
.subpage-refresh .contact-form-shell .modal-header { padding: 24px 28px 0; border: 0; }
.subpage-refresh .contact-form-shell .welcome_title { padding: 0 0 20px; text-align: left; }
.subpage-refresh .contact-form-shell .welcome_title h3 { margin: 0; font-size: 26px; }
.subpage-refresh .contact-form-shell .contact-fields { padding-top: 0; }
.subpage-refresh .contact-addresses a { color: var(--site-accent); }
.subpage-refresh .about-join > .container { width: 100%; max-width: 1170px; padding: 0; }
.subpage-refresh .advertising-page { max-width: 1170px; margin: auto; padding: 36px 24px 48px !important; }
.subpage-refresh .advertising-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.subpage-refresh .advertising-option { min-width: 0; padding: 24px; border: 1px solid var(--site-line); border-radius: 16px; background: #fff; }
.subpage-refresh .advertising-type-label { font-size: 12px; color: var(--site-muted); }
.subpage-refresh .advertising-option h2 { font-size: 22px; font-weight: 600; line-height: 1.4; color: var(--site-ink); margin: 8px 0 20px; }
.subpage-refresh .advertising-preview { min-height: 100px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 16px; margin: 0 0 20px; background: var(--site-surface); border-radius: 10px; }
.subpage-refresh .advertising-sample-label { font-size: 12px; color: var(--site-muted); text-align: center; line-height: 1.5; }
.subpage-refresh .advertising-charge { display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: baseline; margin: 0; }
.subpage-refresh .advertising-charge dt { color: var(--site-muted); font-weight: 400; }
.subpage-refresh .advertising-charge dd { margin: 0; }
.subpage-refresh .advertising-charge strong { font-size: 22px; font-weight: 600; color: var(--site-accent); }
.subpage-refresh .advertising-charge dd span { display: block; margin-top: 5px; color: var(--site-muted); font-size: 12px; }
.subpage-refresh .advertising-formats { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 24px; padding: 0; list-style: none; }
.subpage-refresh .advertising-formats li { padding: 8px 12px; background: var(--site-surface); border: 1px solid var(--site-line); border-radius: 8px; }
.subpage-refresh .advertising-contact { margin-top: 24px; }
@media (min-width: 1200px) {
    .navigation .login-register-wrapper .menu-forgot-password { display: none; }
}

/* Profile details keep their tab navigation and readable label/value pairs on phones. */
.subpage-refresh .member-details-page { width: 100%; max-width: 1170px; padding: 28px 24px 48px !important; }
.subpage-refresh .member-details-view, .subpage-refresh .member-details-view > tbody > tr > td { border: 0; width: 100%; padding: 0; }
.subpage-refresh .member-details-page .container-fluid,
.subpage-refresh .member-details-page .blog_grid_area,
.subpage-refresh .member-details-page .blog_grid_area > .container { padding: 0; width: 100%; }
.subpage-refresh .member-profile-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 28px; margin: 0; align-items: start; }
.subpage-refresh .member-profile-layout::before, .subpage-refresh .member-profile-layout::after { display: none; }
.subpage-refresh .member-profile-layout > .member-photo-column,
.subpage-refresh .member-profile-layout > .member-content-column { width: auto; min-width: 0; float: none; padding: 0 !important; }
.subpage-refresh .member-details-page .right_sidebar_area { margin: 0; padding: 0; }
.subpage-refresh .member-details-page .photo_widget { padding: 0; border: 0; }
.subpage-refresh .member-details-page .photo_widget > br { display: none; }
.subpage-refresh .member-details-page .main-photo { border: 1px solid var(--site-line); border-radius: 14px; padding: 0; box-shadow: none; }
.subpage-refresh .member-details-page .profileCard { background: #fff; border-radius: 16px; padding: 16px; border: 1px solid var(--site-line); }
.subpage-refresh .member-details-page .profileCard.has-gold-ribbon::before { background: var(--site-badge); border-color: var(--site-badge-border); color: var(--site-badge-ink); box-shadow: none; }
.subpage-refresh .member-details-page .thumb-photo:hover,
.subpage-refresh .member-details-page .thumb-selected { border-color: var(--site-accent) !important; box-shadow: 0 0 0 2px rgba(163,52,50,.12); }
.subpage-refresh .member-details-page .member-profile-heading h1 { margin: 0 0 12px; color: var(--site-ink); font-size: 30px; line-height: 1.35; font-weight: 600; }
.subpage-refresh .member-details-page .member-profile-heading { padding: 20px 24px; background: #fff; border-color: var(--site-line); border-radius: 16px; }
.subpage-refresh .member-details-page .member-profile-heading .member-profile-id { margin: 0; }
.subpage-refresh .member-details-page .member-profile-facts { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; color: var(--site-muted); font-size: 13px; line-height: 1.5; }
.subpage-refresh .member-details-page .member-profile-facts > span { background: #fff; padding: 5px 9px; border: 1px solid var(--site-line); border-radius: 7px; }
.subpage-refresh .member-details-page .member-profile-id { margin: 0 0 24px; font-size: 13px; color: var(--site-muted); }
.subpage-refresh .member-details-page .profile_menu { display: flex !important; flex-wrap: wrap; gap: 6px; margin: 0 0 20px; padding: 0; border: 0; }
.subpage-refresh .member-details-page .profile_menu > li { float: none; margin: 0; padding: 0; flex: 1 1 auto; }
.subpage-refresh .member-details-page .profile_menu > li > a { min-height: 44px; padding: 11px 12px; margin: 0; font-size: 13px; font-weight: 500; color: var(--site-muted); background: #fff; border: 1px solid var(--site-line); border-radius: 8px; line-height: 1.5; text-align: center; }
.subpage-refresh .member-details-page .profile_menu > li.active > a { color: var(--site-accent); background: #f7ece8; border-color: #d9b5ae; }
.subpage-refresh .member-details-page .tab-content > .tab-pane { display: none !important; }
.subpage-refresh .member-details-page .tab-content, .subpage-refresh .member-details-page .blog_grid_inner { padding-top: 0; }
.subpage-refresh .member-details-page .members_profile_inners { padding: 0; }
.subpage-refresh .member-details-page .tab-content > .tab-pane.active { display: block !important; }
.subpage-refresh .member-details-page .member-mobile-section-title { display: none !important; }
.subpage-refresh .member-details-page .member-manage-account { background: var(--site-accent); color: #fff; border-color: var(--site-accent); border-radius: 10px; box-shadow: none; font-weight: 500; }
.subpage-refresh .member-details-page .member-manage-account:hover,
.subpage-refresh .member-details-page .member-manage-account:active { background: #812725; color: #fff; border-color: #812725; box-shadow: none; }
.subpage-refresh .member-details-page [id$="btnDeleteInterest"] { background: #fff; color: var(--site-muted) !important; border-color: #d9cfc8; }
.subpage-refresh .member-details-page [id$="btnDeleteInterest"]:hover { background: #f7ece8; color: var(--site-accent) !important; border-color: #c49b93; }
.subpage-refresh .member-details-page .blog_grid_item-1 { border: 0; background: transparent; box-shadow: none; margin-top: 0 !important; }
.subpage-refresh .member-details-page .table-borderless { width: 100%; table-layout: fixed; margin: 0; font-size: 14px; line-height: 1.7; }
.subpage-refresh .member-details-page .table-borderless td { width: auto !important; padding: 10px 12px; border-bottom: 1px solid var(--site-line); overflow-wrap: anywhere; vertical-align: top; line-height: 1.7; }
.subpage-refresh .member-details-page .table-borderless td:first-child { width: 44% !important; padding-left: 0; color: var(--site-muted); font-weight: 400; }
.subpage-refresh .member-details-page .table-borderless td:last-child { color: var(--site-ink); font-weight: 500 !important; padding-right: 0; }
.subpage-refresh .member-details-page .table-borderless p { margin: 0; color: inherit; line-height: inherit; }
.subpage-refresh .member-details-page .table-borderless .member-detail-section-header { width: auto !important; padding: 0 0 12px; border: 0; background: transparent; }
.subpage-refresh .member-detail-section-heading { margin: 0; color: var(--site-ink); font-size: 18px; font-weight: 600; line-height: 1.5; text-align: left; }
.subpage-refresh .member-profile-pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: 8px; margin: 0 0 24px; }
.subpage-refresh .member-profile-pagination > br { display: none; }
.subpage-refresh .member-profile-pagination .pager-nav-btn { flex: 0 0 44px; width: 44px !important; min-width: 44px !important; max-width: 44px !important; height: 44px !important; min-height: 44px; padding: 0 !important; margin: 0 !important; background: #fff; color: var(--site-ink); border: 1px solid #d9cfc8; border-radius: 9px; font-size: 22px !important; font-weight: 500; line-height: 1 !important; white-space: nowrap; }
.subpage-refresh .member-profile-pagination .pager-nav-btn:hover { background: #f7ece8; border-color: #c49b93; color: var(--site-accent); }
.subpage-refresh .member-profile-pagination .pager-nav-btn:focus-visible { outline: 2px solid var(--site-accent); outline-offset: 3px; }
.subpage-refresh .member-profile-pagination > span { margin-left: auto; padding-left: 12px; color: var(--site-muted); font-size: 13px; line-height: 1.6; }
.subpage-refresh .member-profile-pagination > span b { color: var(--site-ink); font-weight: 600; }
@media (max-width: 599px) {
    .subpage-refresh .member-profile-pagination > span { flex-basis: 100%; margin-left: 0; padding: 4px 0 0; }
}
.site-refresh .navigation .nav-list { box-shadow: none; }
.site-refresh #nav-toggle { background: var(--site-surface); border-radius: 10px; }
.site-refresh #nav-toggle span { width: 20px; height: 2px; left: 12px; top: 21px; background: var(--site-accent); }
.site-refresh #nav-toggle span::before, .site-refresh #nav-toggle span::after { width: 20px; height: 2px; left: 0; background: var(--site-accent); }
.site-refresh #nav-toggle span::before { top: -6px; }
.site-refresh #nav-toggle span::after { top: auto; bottom: -6px; }
.site-refresh #nav-toggle.active span { background: transparent; }
.site-refresh #nav-toggle.active span::before { top: 0; transform: rotate(45deg); }
.site-refresh #nav-toggle.active span::after { top: 0; bottom: auto; transform: rotate(-45deg); }
@media (max-width: 991px) {
    .subpage-refresh .member-profile-layout { grid-template-columns: minmax(0, 1fr); }
    .subpage-refresh .member-photo-column { justify-self: center; max-width: 260px; width: 100% !important; }
}
@media (max-width: 767px) {
    .subpage-refresh .auth-page { padding: 24px 16px 32px !important; }
    .subpage-refresh .auth-card .modal-header { padding: 24px 20px 0; }
    .subpage-refresh .auth-page .auth-form-fields { padding: 0 20px 24px; }
    .subpage-refresh .registration-page .registration-field-row { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .subpage-refresh .registration-page .auth-actions .btn { width: 100%; }
    .subpage-refresh .membership-page > .container { padding: 0 16px; }
    .subpage-refresh .membership-plans { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    .subpage-refresh .membership-plan { padding: 22px 20px; }
    .subpage-refresh .membership-intro h2 { font-size: 24px; }
    .subpage-refresh .membership-features { font-size: 13px; }
    .subpage-refresh .story-editor { padding: 20px 16px; }
    .subpage-refresh .story-card-body { padding: 20px 16px; }
    .subpage-refresh .story-editor-actions .btn { width: 100%; }
    .subpage-refresh .legal-article { padding: 20px; font-size: 14px; line-height: 1.8; }
    .subpage-refresh .legal-article h2 { font-size: 18px; }
    .subpage-refresh .about-heading h2 { font-size: 24px; }
    .subpage-refresh .about-testimonials .testimonial-grid { grid-template-columns: minmax(0, 1fr); }
    .subpage-refresh .about-testimonials .testimonial-card { flex-direction: column-reverse; align-items: stretch; }
    .subpage-refresh .about-testimonials .testimonial-card .test_man { flex-basis: auto; display: flex; align-items: center; gap: 16px; max-width: none; text-align: left; }
    .subpage-refresh .about-testimonials .test_man img { width: 70px; height: 70px; }
    .subpage-refresh .testimonial-author { margin-top: 0; }
    .subpage-refresh .contact-fields { padding: 20px; }
    .subpage-refresh .contact-form-shell .modal-header { padding: 24px 20px 0; }
    .subpage-refresh .contact-form-shell .contact-fields { padding-top: 0; }
    .subpage-refresh .contact-form-actions .btn { width: 100%; }
    .subpage-refresh .advertising-page { padding: 24px 16px 32px !important; }
    .subpage-refresh .advertising-options { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    .subpage-refresh .advertising-option { padding: 20px; }
    .subpage-refresh .member-details-page { padding: 24px 16px 32px !important; }
    .subpage-refresh .member-details-page .member-profile-heading h1 { font-size: 26px; }
    .subpage-refresh .member-details-page .table-borderless { font-size: 13px; }
    .subpage-refresh .member-details-page .profile_menu { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .subpage-refresh .member-details-page .profile_menu > li > a { display: flex; align-items: center; justify-content: center; height: 100%; min-height: 54px; padding: 10px 8px; }
    .subpage-refresh .member-photo-column { max-width: 220px; }
    .subpage-refresh .member-details-page .photo-strip .thumb-photo { width: 50px; height: 66px; object-fit: cover; }
}

/* Signed-in pages use the same surfaces and spacing as the public pages. */
.subpage-refresh .account-dashboard .dashboard-shell { width: 100%; max-width: 1120px; margin: 32px auto 48px; }
.subpage-refresh .account-dashboard .dashboard-surface { padding: 0 28px 28px; border-color: var(--site-line); border-radius: 16px; box-shadow: 0 3px 12px rgba(76,42,36,.04); }
.subpage-refresh .account-dashboard .dashboard-header { padding: 26px 0 24px; border: 0; }
.subpage-refresh .account-dashboard .welcome_title { padding: 0; text-align: left; }
.subpage-refresh .account-dashboard .welcome_title h3 { margin: 0; color: var(--site-ink); font-size: 28px; font-weight: 600; }
.subpage-refresh .account-dashboard .welcome_title img { display: none; }
.subpage-refresh .account-dashboard .dashboard-layout { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 28px; margin: 0; align-items: start; }
.subpage-refresh .account-dashboard .dashboard-layout::before,
.subpage-refresh .account-dashboard .dashboard-layout::after { display: none; }
.subpage-refresh .account-dashboard .dashboard-profile,
.subpage-refresh .account-dashboard .dashboard-actions { width: auto !important; min-width: 0; padding: 0; margin: 0; }
.subpage-refresh .account-dashboard .dashboard-profile-card { padding: 0 0 18px; border: 1px solid var(--site-line); border-radius: 14px; background: var(--site-surface); box-shadow: none; }
.subpage-refresh .account-dashboard .dashboard-profile-heading { padding: 20px 16px 16px; border: 0; background: transparent; }
.subpage-refresh .account-dashboard .dashboard-profile-identity { display: grid; gap: 7px; font-size: 13px; line-height: 1.6; text-align: center; color: var(--site-muted); overflow-wrap: anywhere; }
.subpage-refresh .account-dashboard .dashboard-profile-identity > div > span:last-child { margin-left: 5px; color: var(--site-ink); font-weight: 500; }
.subpage-refresh .account-dashboard .dashboard-profile-body { padding: 0; }
.subpage-refresh .account-dashboard .dashboard-photo-list { margin: auto; border: 0; }
.subpage-refresh .account-dashboard .dashboard-photo-list td { text-align: center; padding: 0 0 18px; border: 0; }
.subpage-refresh .account-dashboard .profilePicture { display: block; margin: auto; width: 150px; height: 150px; max-width: 100%; object-fit: cover; border: 3px solid #fff; outline: 2px solid #dbc8bb; box-shadow: none; }
.subpage-refresh .account-dashboard .dashboard-profile-button { display: flex !important; justify-content: center; margin-left: auto !important; margin-right: auto !important; min-height: 46px; padding: 10px 14px; border: 1px solid var(--site-accent); border-radius: 10px; background: var(--site-accent); color: #fff; font-size: 14px; font-weight: 500; line-height: 1.5; box-shadow: none; }
.subpage-refresh .account-dashboard .dashboard-profile-button:hover { background: #812725; }
.subpage-refresh .account-dashboard .dashboard-membership-action { margin-top: 12px; }
.subpage-refresh .account-dashboard .dashboard-membership-action .dashboard-profile-button { background: #fff; color: var(--site-accent); border-color: #d9b5ae; margin: 0 auto !important; }
.subpage-refresh .account-dashboard .dashboard-permission-message { margin: 0 0 20px; }
.subpage-refresh .account-dashboard .dashboard-action-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 0 !important; }
.subpage-refresh .account-dashboard .dashboard-action-group:not(:has(.mp-action-btn)) { display: none; }
.subpage-refresh .account-dashboard .dashboard-action-grid:not(:has(.dashboard-action-group:first-child .mp-action-btn)) { grid-template-columns: minmax(0, 1fr); }
.subpage-refresh .account-dashboard .dashboard-group-body { padding: 0; }
.subpage-refresh .account-dashboard .dashboard-group-links { display: grid; gap: 10px; margin: 0; }
.subpage-refresh .account-dashboard .mp-action-btn { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 12px 14px; border: 1px solid var(--site-line); border-radius: 10px; box-shadow: none; color: var(--site-ink) !important; background: #fff; font-size: 14px; font-weight: 500; line-height: 1.5; transform: none; }
.subpage-refresh .account-dashboard .dashboard-action-group:first-child .mp-action-btn { background: var(--site-accent); color: #fff !important; border-color: var(--site-accent); }
.subpage-refresh .account-dashboard .dashboard-action-group:first-child .mp-action-btn i { color: #fff; }
.subpage-refresh .account-dashboard .dashboard-action-group:nth-child(2) .mp-action-btn { background: #fff; color: var(--site-ink) !important; border-color: var(--site-line); }
.subpage-refresh .account-dashboard .dashboard-action-group:nth-child(2) .mp-action-btn i { color: var(--site-accent); }
.subpage-refresh .account-dashboard .dashboard-action-group .mp-action-btn:hover { border-color: #c49b93; background: #f7ece8; color: var(--site-accent) !important; }
.subpage-refresh .account-dashboard .dashboard-action-group:first-child .mp-action-btn:hover { background: #812725; color: #fff !important; }
.subpage-refresh .account-dashboard .dashboard-account-controls { padding-top: 20px; border-color: var(--site-line); }
.subpage-refresh .account-dashboard .dashboard-account-controls h4 { color: var(--site-muted); font-size: 13px; font-weight: 500; }
.subpage-refresh .account-dashboard .dashboard-account-controls .mp-action-btn { background: #fff !important; border-color: var(--site-line); color: var(--site-muted) !important; }
.subpage-refresh .account-dashboard .dashboard-account-controls .mp-action-btn i { color: var(--site-muted); }

/* Match and interest lists retain the shared profile-card component. */
.subpage-refresh .member-list-page { width: 100%; max-width: 1170px; margin: auto; padding: 32px 24px 48px !important; }
.subpage-refresh .member-list-page > .container { width: 100%; max-width: none; padding: 0; }
.subpage-refresh .member-list-heading { position: static; margin: 0 0 24px; padding: 0; background: transparent; }
.subpage-refresh .member-list-heading h1 { margin: 0; color: var(--site-ink); font-size: 30px; font-weight: 600; line-height: 1.35; }
.subpage-refresh .member-results-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 20px; }
.subpage-refresh .member-results-toolbar:not(:has(.profile-count-label:not(:empty), .member-pagination, select)) { display: none; }
.subpage-refresh .member-results-toolbar > span { color: var(--site-muted); font-size: 13px; }
.subpage-refresh .member-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; float: none; width: auto; padding: 0; margin: 0; height: auto; }
.subpage-refresh .member-pagination .btn.login_btn { min-width: 44px; width: 44px !important; height: 44px !important; min-height: 44px; padding: 0 !important; margin: 0; border: 1px solid #d9cfc8; border-radius: 9px; background: #fff; color: var(--site-ink); font-size: 17px; box-shadow: none; }
.subpage-refresh .member-pagination .btn:hover { background: #f7ece8; color: var(--site-accent); }
.subpage-refresh .member-results-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; width: 100% !important; margin: 0; padding: 0; }
.subpage-refresh .member-results-grid > span { display: contents; }
.subpage-refresh .member-results-grid > br { display: none; }
.subpage-refresh .member-result-item { min-width: 0; width: auto !important; padding: 0; float: none; display: flex; }
.subpage-refresh .member-result-item > .wedding-profile-card { flex: 1; width: 100%; max-width: none; margin: 0; position: relative; overflow: hidden; }
.subpage-refresh .member-empty-state { padding: 24px; background: #fff; border: 1px solid var(--site-line); border-radius: 16px; color: var(--site-muted); }
.subpage-refresh .member-empty-state .alert { width: 100% !important; max-width: none !important; padding: 0; margin: 0; border: 0; background: transparent; color: var(--site-muted); font-size: 15px; line-height: 1.8; text-align: left; }
.subpage-refresh .member-empty-state p { margin: 0; }
.subpage-refresh .member-list-actions { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 12px; margin-top: 24px; }
.subpage-refresh .member-list-actions .btn.login_btn { min-width: 0; width: auto !important; background: #fff; color: var(--site-ink); border-color: #d9cfc8; }

/* Editable member forms use one surface per section, with wrapping actions. */
.subpage-refresh .member-form-page { width: 100%; max-width: 1120px; margin: auto; padding: 32px 24px 48px !important; }
.subpage-refresh .member-form-page .member-form-section { width: 100%; max-width: 100%; margin: 0 0 24px; }
.subpage-refresh .member-form-page .member-form-surface { border: 1px solid var(--site-line); border-radius: 16px; box-shadow: 0 3px 12px rgba(76,42,36,.04); background: #fff; }
.subpage-refresh .member-form-page .modal-header { padding: 24px 28px 0; border: 0; }
.subpage-refresh .member-form-page .welcome_title { padding: 0; text-align: left; }
.subpage-refresh .member-form-page .welcome_title h3 { margin: 0; padding: 0; color: var(--site-ink); font-size: 26px; font-weight: 600; line-height: 1.4; }
.subpage-refresh .member-form-page .welcome_title img { display: none; }
.subpage-refresh .member-form-page .member-form-body { padding: 24px 28px; }
.subpage-refresh .member-form-page .member-form-group { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.subpage-refresh .member-form-page .member-form-group + .member-form-group { margin-top: 24px; }
.subpage-refresh .member-form-page .member-form-group > .panel-heading { padding: 0 0 16px; border: 0; background: transparent; }
.subpage-refresh .member-form-page .panel-title, .subpage-refresh .member-form-page .panel-title span { color: var(--site-ink); font-size: 18px !important; font-weight: 600 !important; line-height: 1.5; }
.subpage-refresh .member-form-page .member-form-fields { padding: 0; }
.subpage-refresh .member-form-page .member-form-fields > .row { margin-left: -10px; margin-right: -10px; }
.subpage-refresh .member-form-page .member-form-fields > .row > [class*="col-"] { padding-left: 10px; padding-right: 10px; }
.subpage-refresh .member-form-page .control-label { font-size: 13px; font-weight: 500 !important; line-height: 1.5; margin-bottom: 7px; }
.subpage-refresh .member-form-page .form-group { margin-bottom: 20px; }
.subpage-refresh .member-form-page .form-group .form-group { margin-bottom: 0; }
.subpage-refresh .member-form-page .form-control { min-width: 0; max-width: 100%; width: 100%; }
.subpage-refresh .member-date-inputs { display: grid; grid-template-columns: minmax(0,.75fr) minmax(0,1.3fr) minmax(0,1fr); gap: 6px; width: 100%; }
.subpage-refresh .member-time-inputs { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 6px; width: 100%; }
.subpage-refresh .member-date-inputs > select, .subpage-refresh .member-time-inputs > select { width: 100% !important; min-width: 0; max-width: 100%; min-height: 46px; border: 1px solid #d9d4d0; border-radius: 8px !important; padding-left: 7px; padding-right: 2px; font: inherit; }
.subpage-refresh .member-form-fields .preference-field-row { margin: 0 0 20px; }
.subpage-refresh .preference-choice-heading { padding: 8px 10px; border: 1px solid var(--site-line) !important; border-radius: 8px 8px 0 0; background: var(--site-surface) !important; }
.subpage-refresh .preference-choice-heading label { font-size: 13px; font-weight: 400; }
.subpage-refresh .preference-choice-list { height: auto !important; min-height: 48px; max-height: 180px; width: 100% !important; overflow: auto !important; border: 1px solid var(--site-line) !important; border-radius: 8px; background: #fff !important; }
.subpage-refresh .preference-choice-list table { table-layout: fixed; width: 100% !important; height: auto; min-height: 0; border: 0; }
.subpage-refresh .preference-choice-list td { vertical-align: top; padding: 6px 10px; }
.subpage-refresh .preference-choice-list label { margin: 0 0 0 6px; font-size: 13px; font-weight: 400; line-height: 1.6; overflow-wrap: anywhere; }
.subpage-refresh .preference-choice-list input[type="checkbox"] { margin: 0; vertical-align: middle; }
.subpage-refresh .member-form-footer { padding: 0; }
.subpage-refresh .member-form-message { margin: 0 0 20px; }
.subpage-refresh .member-form-actions, .subpage-refresh .account-form-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: 12px; margin: 20px 0 0; }
.subpage-refresh .member-form-actions .btn, .subpage-refresh .account-form-actions .btn { width: auto !important; min-width: 150px; margin: 0; }
.subpage-refresh .member-form-actions [id$="btnCancel"], .subpage-refresh .account-form-actions [id$="btnCancel"] { background: #fff; color: var(--site-ink); border-color: #d9cfc8; }
.subpage-refresh .member-form-page .help-block { font-size: 13px; line-height: 1.5; }

/* Contact and credential changes keep their existing handlers and validation. */
.subpage-refresh .account-change-page { width: 100%; max-width: 1170px; padding: 32px 24px 48px !important; }
.subpage-refresh .account-change-page .modal-dialog.account-change-shell { width: 560px; max-width: 100%; margin: 0 auto; }
.subpage-refresh .account-change-shell .modal-content { padding: 0; }
.subpage-refresh .account-change-shell > .modal-content > .modal-header { padding: 24px 28px 0; border: 0; }
.subpage-refresh .account-change-shell .welcome_title.account-form-heading { padding: 0 0 20px; text-align: left; }
.subpage-refresh .account-change-shell .welcome_title h3 { margin: 0; color: var(--site-ink); font-size: 26px; line-height: 1.4; }
.subpage-refresh .account-change-shell .welcome_title img { display: none; }
.subpage-refresh .account-change-fields { padding: 0 28px 28px; }
.subpage-refresh .account-change-fields > .row { margin: 0; }
.subpage-refresh .account-change-fields .form-group { margin-bottom: 20px; }
.subpage-refresh .account-change-fields .control-label { font-size: 13px; font-weight: 500; margin-bottom: 7px; }
.subpage-refresh .account-change-mobile .intl-tel-input { display: block !important; width: 100% !important; }
.subpage-refresh .account-change-mobile .intl-tel-input input { width: 100% !important; }
.subpage-refresh .ConfirmationModal { max-width: calc(100vw - 32px); padding: 24px 20px; border: 1px solid var(--site-line); border-radius: 16px; background: #fff; }
.subpage-refresh .ConfirmationModal .btn { max-width: 100%; margin: 4px; }
.subpage-refresh .account-change-shell .auth-message { margin: 20px 0 0; }

/* Photo management presents a real gallery rather than a layout table. */
.subpage-refresh .manage-photos-page { width: 100%; max-width: 1120px; padding: 32px 24px 48px !important; }
.subpage-refresh .photo-management-shell { width: 100%; max-width: 100%; margin: 0; }
.subpage-refresh .photo-management-heading { padding: 24px 28px 0; border: 0; }
.subpage-refresh .photo-management-heading .welcome_title { padding: 0 0 20px; text-align: left; }
.subpage-refresh .photo-management-heading h3 { margin: 0; color: var(--site-ink); font-size: 26px; }
.subpage-refresh .photo-management-heading h3, .subpage-refresh .account-change-shell .welcome_title h3 { padding: 0; }
.subpage-refresh .photo-management-heading .welcome_title img { display: none; }
.subpage-refresh .photo-management-body { padding: 0 28px 28px; }
.subpage-refresh .photo-gallery { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; width: 100%; margin: 0; }
.subpage-refresh .photo-gallery > span { display: contents; }
.subpage-refresh .photo-gallery > br { display: none; }
.subpage-refresh .photo-gallery-toolbar { grid-column: 1 / -1; display: flex; justify-content: flex-start; align-items: center; }
.subpage-refresh .photo-gallery-toolbar > br { display: none; }
.subpage-refresh .photo-gallery-toolbar > .photo-delete-button { width: auto !important; min-height: 44px; padding: 10px 16px; margin: 0; background: #fff; color: var(--site-muted); border-color: #d9cfc8; font-size: 14px; }
.subpage-refresh .photo-gallery-card { padding: 16px; margin: 0; min-width: 0; border: 1px solid var(--site-line); border-radius: 12px; background: var(--site-surface); }
.subpage-refresh .photo-gallery-image { text-align: center; }
.subpage-refresh .managed-photo { width: 100%; max-width: 100%; height: 200px; object-fit: contain; border: 0 !important; border-radius: 8px; padding: 0; box-shadow: none; }
.subpage-refresh .photo-card-actions, .subpage-refresh .photo-crop-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; margin-top: 12px; }
.subpage-refresh .photo-card-actions .btn, .subpage-refresh .photo-crop-actions .btn { width: auto !important; min-height: 44px; padding: 9px 14px !important; margin: 0; border: 1px solid #d9cfc8; border-radius: 8px; background: #fff; color: var(--site-ink); }
.subpage-refresh .photo-upload-panel { margin-top: 24px; padding: 20px; border: 1px solid var(--site-line); border-radius: 12px; background: #fff; }
.subpage-refresh .photo-upload-fields { display: grid; gap: 12px; }
.subpage-refresh .photo-file-input { display: block; width: 100%; max-width: 100%; min-height: 44px; padding: 8px; border: 1px solid #d9cfc8; border-radius: 8px; color: var(--site-ink); background: #fff; font-size: 13px; }
.subpage-refresh .photo-file-input::file-selector-button { margin-right: 10px; padding: 6px 10px; border: 1px solid var(--site-line); border-radius: 6px; color: var(--site-ink); background: var(--site-surface); }
.subpage-refresh .photo-upload-note { margin: 0; font-size: 13px; line-height: 1.7; color: var(--site-muted); }
.subpage-refresh .photo-upload-error { font-size: 13px; line-height: 1.5; }
.subpage-refresh .photo-page-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: flex-start; margin-top: 24px; }
.subpage-refresh .photo-page-actions .btn { width: auto !important; }
@media (max-width: 991px) {
    .subpage-refresh .member-results-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .subpage-refresh .photo-gallery { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 767px) {
    .subpage-refresh .account-dashboard .dashboard-shell { max-width: calc(100% - 32px); margin: 24px auto 32px; }
    .subpage-refresh .account-dashboard .dashboard-surface { padding: 0 20px 24px; }
    .subpage-refresh .account-dashboard .dashboard-layout { grid-template-columns: minmax(0,1fr); gap: 24px; }
    .subpage-refresh .account-dashboard .dashboard-profile { width: 100% !important; }
    .subpage-refresh .account-dashboard .dashboard-profile-card { max-width: 380px; margin: auto; }
    .subpage-refresh .account-dashboard .dashboard-action-grid { gap: 14px; }
    .subpage-refresh .account-dashboard .dashboard-header { padding: 24px 0 20px; }
    .subpage-refresh .account-dashboard .welcome_title h3 { font-size: 26px; }
    .subpage-refresh .member-form-page, .subpage-refresh .account-change-page, .subpage-refresh .manage-photos-page, .subpage-refresh .member-list-page { padding: 24px 16px 32px !important; }
    .subpage-refresh .member-form-page .modal-header, .subpage-refresh .account-change-shell > .modal-content > .modal-header, .subpage-refresh .photo-management-heading { padding: 24px 20px 0; }
    .subpage-refresh .member-form-page .member-form-body { padding: 20px; }
    .subpage-refresh .member-form-page .member-form-fields > .row { margin-left: 0; margin-right: 0; }
    .subpage-refresh .member-form-page .member-form-fields > .row > [class*="col-"] { padding: 0; }
    .subpage-refresh .member-form-page .form-control { font-size: 16px; }
    .subpage-refresh .member-form-actions .btn, .subpage-refresh .account-form-actions .btn { flex: 1 1 140px; min-width: 0; }
    .subpage-refresh .account-change-fields, .subpage-refresh .photo-management-body { padding: 0 20px 24px; }
    .subpage-refresh .preference-choice-list tr, .subpage-refresh .preference-choice-list td { display: block; width: 100% !important; }
    .subpage-refresh .photo-upload-panel { padding: 16px; }
}
@media (max-width: 599px) {
    .subpage-refresh #pr-box { left: 16px !important; right: 16px !important; width: auto !important; max-width: calc(100vw - 32px); }
    .subpage-refresh .member-results-grid, .subpage-refresh .photo-gallery { grid-template-columns: minmax(0,1fr); gap: 14px; }
    .subpage-refresh .member-list-heading h1 { font-size: 26px; }
    .subpage-refresh .member-empty-state { padding: 20px; }
    .subpage-refresh .member-list-actions .btn { width: 100% !important; }
}
@media (max-width: 380px) {
    .subpage-refresh .account-dashboard .dashboard-action-grid { grid-template-columns: minmax(0,1fr); }
}
