/* Shared visual finish. Keep category and status colours in their feature styles. */
:root {
  --portal-ink: #24394d;
  --portal-muted: #576c7d;
  --portal-line: #d8e3ea;
  --portal-brand: #176b70;
  --portal-navy: #193b57;
  --portal-surface: #f6f8fb;
  --portal-accent: #a85b19;
}
html { font-size: 17px; }
html.large { font-size: 21px; }
body.site-page:not(.admin-body) {
  background: linear-gradient(135deg, #fff8ee 0, #f6f8fb 420px, #f1f7f7 100%);
}
body.site-page > header {
  border-top: 4px solid #d99338;
  background: linear-gradient(105deg, #fffaf2, #fff 55%, #f0f7f8);
}
body.site-page #site-nav {
  background: #fff;
  border-bottom: 1px solid #d8e4df;
  padding-top: 6px;
  padding-bottom: 6px;
}
body.site-page #site-nav > a {
  color: #244557;
  font-size: .88rem;
  padding: 10px 12px;
}
body.site-page #site-nav > a:hover {
  background: #edf4f1;
  color: #174c42;
}
body.site-page #site-nav .portal-nav-dropdown > summary { color: #fff; }
body.site-page #site-nav .portal-nav-dropdown > summary::after { color: #e4c58f; }
body.site-page #site-nav .portal-nav-dropdown > summary:hover { background: #ffffff1f; }
body.site-page #site-nav .portal-nav-dropdown.is-current > summary,
body.site-page #site-nav .portal-nav-dropdown[open] > summary { background: #e2f2ee; color: #194e58; }
body.site-page #site-nav .portal-nav-dropdown > summary:focus-visible { outline-color: #ffd38c; }
body.site-page #site-nav > a[aria-current=page] {
  background: #fff0d7;
  color: #5d3814;
  box-shadow: inset 0 -3px #d99338;
}
body.site-page #site-nav > a:last-child:not([aria-current=page]) {
  background: #edf4f1;
  border-color: #bdcfc7;
  color: #174c42;
}
body.site-page #site-nav button {
  background: #edf6f6;
  color: #194e58;
  border-color: #b9d8dc;
}
body.site-page .portal-home-hero {
  margin: 20px 0 0;
  padding: clamp(22px, 3vw, 40px);
  gap: 32px;
  border: 1px solid #d5e3e7;
  border-radius: 18px;
  background: linear-gradient(115deg, #fff3df, #fffaf3 42%, #e8f4f3);
}
body.site-page .portal-home-hero h1 {
  font-size: clamp(1.85rem, 3.3vw, 2.75rem);
  line-height: 1.5;
  margin: 10px 0 16px;
}
.site-page .portal-home-hero h1 span { color: #176b70; }
.site-page .portal-hero-description { font-size: 1rem; line-height: 1.85; }
body.site-page .portal-home-hero > * { min-width: 0; }
body.site-page.page-home .community-home .community-shortcuts > a:nth-child(n) {
  border-top: 3px solid #278084;
  background: #eff8f6;
}
body.site-page.page-home .community-home .community-shortcuts > a:nth-child(2) { border-top-color: #aa6687; background: #fcf2f6; }
body.site-page.page-home .community-home .community-shortcuts > a:nth-child(3) { border-top-color: #b57a2c; background: #fff7eb; }
body.site-page.page-home .community-home .community-shortcuts > a:nth-child(4) { border-top-color: #82609e; background: #f5effa; }
.site-page .portal-hero-panel {
  background: #ffffffed;
  border-top: 4px solid #278084;
  box-shadow: 0 8px 24px #193b5709;
  padding: 22px;
}
.site-page .portal-hero-panel > a { padding: 17px 0; }
.site-page .portal-hero-panel > a:nth-of-type(1) .portal-feature-number { background: #fff0d7; color: #86501b; }
.site-page .portal-hero-panel > a:nth-of-type(2) .portal-feature-number { background: #e2f2ee; color: #216354; }
.site-page .portal-hero-panel > a:nth-of-type(3) .portal-feature-number { background: #eee8f6; color: #69488b; }
.site-page .portal-eyebrow { color: #88501c; }
.site-page .portal-section-heading h2 { font-size: clamp(1.35rem, 2.3vw, 1.65rem); }
.site-page .portal-home-section { padding-top: 28px; padding-bottom: 28px; }
.site-page .portal-card-grid > .portal-card {
  --card-accent: #278084;
  --card-tint: #eff8f6;
  border-top: 3px solid var(--card-accent);
  background: linear-gradient(160deg, var(--card-tint), #fff 65%);
  box-shadow: 0 4px 16px #193b5706;
}
.site-page .portal-card-grid > .portal-card:nth-child(3n+2) { --card-accent: #b57a2c; --card-tint: #fff6e8; }
.site-page .portal-card-grid > .portal-card:nth-child(3n) { --card-accent: #82609e; --card-tint: #f5effa; }
.site-page .portal-card-grid > .portal-card .portal-label { background: #fff; color: #355365; border: 1px solid #d8e3ea; }
body.site-page .portal-page-heading {
  padding: 20px 24px;
  border: 1px solid #d8e3ea;
  border-left: 4px solid #278084;
  border-radius: 12px;
  background: linear-gradient(110deg, #eaf4f4, #fff 80%);
}
.site-page .portal-page-heading h1 { font-size: clamp(1.55rem, 2.8vw, 2rem); }
.site-page .portal-filter { border-top: 3px solid #d9a254; background: #fffcf6; }
.site-page .portal-note { background: #eef2fa; border-left: 3px solid #7384af; }
.site-page .portal-data-summary { background: #edf6f5; border: 1px solid #c8e2df; border-radius: 12px; }
.site-page .community-join { background: linear-gradient(110deg, #fff0d7, #f6eef8 65%, #e9f3f5); border-color: #e1d6c8; }
body.site-page footer.portal-footer {
  background: linear-gradient(110deg, #f0f5fa, #eef6f4);
  border-top: 3px solid #d9a254;
}
body.site-page footer .portal-footer-menu > a { color: #294f67; }
.site-page input, .site-page select, .site-page textarea { font-size: max(16px, 1rem); }
body.site-page #site-nav > a:focus-visible { outline-color: #ffd38c; }
@media (max-width: 700px) {
  body.site-page .portal-home-hero { grid-template-columns: minmax(0, 1fr); padding: 22px 18px; gap: 22px; border-radius: 12px; }
  .site-page .portal-hero-panel { padding: 18px; }
  body.site-page .portal-page-heading { padding: 18px; }
  body.site-page #site-nav > a { min-height: 44px; box-sizing: border-box; padding: 11px 12px; }
}
/* Reading contrast across public pages and the signed-in workspaces. */
body.site-page .portal-footer-bottom{color:#506674}
body.site-page .settings-workspace .settings-hero{background:linear-gradient(115deg,#153e62,#17646b)}
body.site-page .settings-workspace .settings-hero h1{color:#fff}
body.site-page .settings-workspace .settings-hero p{color:#edf8f7}
body.site-page .settings-workspace .settings-hero .settings-kicker{color:#d6eee6}
body.site-page .settings-workspace .settings-hero .settings-back{background:#ffffff0a;color:#fff;border-color:#bddbd4}
body.site-page .admin-role small{color:#934618}
body.site-page .admin-nav-group h2{color:#536978}
body.site-page :is(.admin-topbar,.society-workspace-topbar) b{color:#526879}
body.site-page :is(.census-filter-head,.census-report-heading,.census-report-meta) :is(p,small,span){color:#4c6275}
/* Coordinated ink and accent colours for smaller explanatory text. */
body.site-page main :is(.portal-hero-attribution,.portal-hero-footnote,.portal-hero-panel small,.portal-hero-panel>a>b,.community-shortcuts small,.home-stats-note,.home-stats-heading>span,.home-stats-explore>small,.home-stats-row small,.home-stats-share,.home-conference-weekday,.home-conference-weekday>span,.home-conference-info dt){color:#4a6071}
body.site-page main .home-institution-identity{background:#edf5f0}
body.site-page main .home-institution-identity p{color:#284d62}
body.site-page main .home-institution-identity strong{color:#6b3e69}
body.site-page main :is(.event-owner-name em,.event-owner-name small,.event-venue,.event-reference){color:#435c68}
body.site-page main :is(.family-directory-hero p,.society-directory-hero p,.family-profile-location,.family-profile-facts span,.profile-meta dt,.compact-family-card>a>span,.family-id,.candidate-breadcrumb span){color:#495d70}
body.site-page main .family-profile-eyebrow{color:#7b4e28}
body.site-page main .candidate-section-nav a[aria-current=location]{background:#205b68;border-color:#205b68;color:#fff}
body.site-page main .candidate-section-nav a[aria-current=location]>span{background:#ffffff18;color:#fff}
body.site-page main :is(.family-manage-identity p>span,.family-manage-meta span,.family-photo-field small,.member-editor-hero span,.member-editor-delete p,.member-editor-savebar>a,.member-detail-page dt,.member-hero-eyebrow,.request-family-flow small,.requests-heading>small){color:#4a6071}
body.site-page main .member-editor-hero p,body.site-page main .member-editor-privacy h2{color:#805020}
body.site-page main .member-editor-savebar button{background:#17646b;border-color:#17646b;color:#fff}
body.site-page main :is(.account-hero p,.account-hero aside>span,.account-hero aside>small,.account-settings-form p,.account-danger p,.account-quick-actions>a>b){color:#485d70}
body.site-page main .account-hero p.eyebrow{color:#805020}
body.site-page main .account-setup li.complete>span{color:#1f624c}
body.site-page main :is(.society-workspace-heading p,.society-heading-location,.society-dashboard-banner p,.society-quick-links small,.society-quick-links>a>b,.society-leader-row small,.society-next-event small,.society-leader>p,.society-conference p,.society-public-contact-strip dt){color:#495d70}
body.site-page main .society-workspace-heading p.section-kicker{color:#805020}
body.site-page main .society-quick-links>a>span{color:#805020}
body.site-page main :is(.admin-page-heading p,.admin-topbar span,.admin-dashboard-title small,.admin-priority-card small,.admin-chart-legend span,.admin-chart-group>small,.admin-overview-grid>a>small,.admin-dashboard-welcome>span,.admin-command-panel small,.admin-command-panel a>b){color:#495f6c}
body.site-page main :is(.admin-priority-icon,.admin-dashboard-title p.section-kicker){color:#805020}
body.site-page main :is(.admin-kpi-icon,.admin-command-panel a>span){color:#2c6254}
body.site-page main :is(.census-hero-meta span,.census-hero-meta small,.census-numbered-title p,.census-numbered-title small,.census-section-heading>p,.census-advanced-filters small,.census-health-label span,.census-health-card small){color:#485e70}
body.site-page main .census-filter-head>div>span{color:#fff}
body.site-page.page-register main :is(.registration-heading p,.registration-existing,.registration-steps small,.registration-steps li>span,.registration-field-note,.registration-login,.registration-form-heading p){color:#4b6075}
body.site-page.page-register main .registration-heading p.registration-kicker{color:#8a4817}
body.site-page.page-register main .registration-benefits h2,body.site-page.page-register main .registration-perks strong{color:#244c62}
body.site-page.page-register main .registration-benefits .registration-eyebrow{color:#285f59}
body.site-page.page-register main .registration-perks p{color:#455f71}
body.site-page.page-register main .registration-form-card button[type=submit]{background:linear-gradient(110deg,#155a83,#17646b);color:#fff}
body.site-page main :is(input,textarea)::placeholder{color:#526579;opacity:1}
body.site-page main :is(.guide-nav>p,.info-highlights p,.info-support-card small){color:#4b6074}
body.site-page main .info-privacy .portal-info-hero{background:linear-gradient(110deg,#193b57,#285f66)}
body.site-page main .info-privacy .portal-info-hero :is(h1,p){color:#fff}
body.site-page.page-register main .registration-benefits{background:linear-gradient(135deg,#edf7ef,#f0f3fa);color:#355569}
body.site-page.page-register main .registration-steps li.active>span{background:#205b68;color:#fff}
body.site-page main :is(input,textarea)::placeholder{color:#526579!important;opacity:1}
body.site-page main .member-editor .member-editor-layout .member-editor-savebar>button{background:#17646b;color:#fff;border-color:#17646b}
body.site-page main .society-workspace .society-workspace-heading .society-heading-copy>p{color:#495d70}
body.site-page main .society-workspace .society-workspace-heading .society-heading-copy>p.section-kicker{color:#805020}
body.site-page main .matrimonial-directory .profile-card .profile-meta dt{color:#495d70}
body.site-page main .account-dashboard .account-hero>div>p{color:#485d70}
body.site-page main .account-dashboard .account-hero>div>p.eyebrow{color:#805020}
body.site-page main .account-dashboard .account-quick-actions>a>span{color:#71502d}
body.site-page.page-account main .account-settings-form p{color:#495d70}
body.site-page main :is(.census-primary-metrics>a>small,.census-health-card>div>p,.family-results-heading>span){color:#495e70}
body.site-page main .society-directory-page .society-directory-hero p.eyebrow{color:#285a70}
body.site-page.page-home main .community-home :is(.community-shortcuts small,.home-conference-weekday,.home-conference-info dt,.home-institution-values>span){color:#465d70}
body.site-page.page-home main .community-home .home-institution-values>span{background:#fff7e8;color:#74491f;border-color:#d7c29d}
body.site-page.page-register main .registration-steps li:first-child>span{background:#205b68;color:#fff}
body.site-page.page-profile main .candidate-page .candidate-section-nav a{color:#244b60}
body.site-page.page-profile main .candidate-page .candidate-section-nav a[aria-current=location]{background:#205b68;color:#fff;border-color:#205b68}
body.site-page main .admin-chart-bars>span>b{color:#3e5d52}
body.site-page main .info-chapters nav a>span{color:#176459}
body.site-page.page-profile main .candidate-page .candidate-section-nav a{transition:none}
body.site-page.page-profile main .candidate-page .candidate-primary-actions a.button:hover,body.site-page.page-profile main .candidate-page .candidate-primary-actions a.button:focus-visible{background:#e7f1ed;color:#205b68;border-color:#205b68}
body.site-page.page-profile main .candidate-page .candidate-primary-actions [data-biodata-download]:hover,body.site-page.page-profile main .candidate-page .candidate-primary-actions [data-biodata-download]:focus-visible{background:#205b68;color:#fff;border-color:#205b68}
body.site-page main#main :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #85501b;outline-offset:3px}
body.site-page #site-nav :is(a,button,summary):focus-visible{outline:3px solid #ffd38c;outline-offset:3px}
body.site-page main .society-sample-note{padding:10px 14px;background:#f2f6ef;color:#405d4b;border:1px solid #d1dfcd;border-radius:8px;font-size:.9rem}
body.site-page .portal-actions{align-items:stretch}
body.site-page .portal-actions>.button,body.site-page .portal-section-heading>.button{white-space:normal;text-align:center;max-width:100%;box-sizing:border-box}
body.site-page main .portal-card-footer>a:first-child:not(.button):not(.portal-text-link){color:#405d6b}
/* Clear event information and a two-card home section. */
body.site-page.page-home main .home-conferences>.portal-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
body.site-page main .portal-event-card .portal-event-organizer{display:flex;flex-direction:column;gap:4px;margin:3px 0 10px;padding:11px 13px;border:1px solid #cbddd3;border-radius:9px;background:#edf5ef}
body.site-page main .portal-event-organizer>span{font-size:.8rem;line-height:1.6;color:#4b6371}
body.site-page main .portal-event-organizer>a{font-size:.95rem;line-height:1.75;font-weight:650;color:#28594d;text-decoration:none;overflow-wrap:anywhere}
body.site-page main .portal-event-organizer>a:hover{color:#163f35;text-decoration:underline}
body.site-page main .portal-event-card a.portal-event-details{display:inline-flex;align-items:center;justify-content:center;min-height:47px;max-width:100%;box-sizing:border-box;padding:10px 18px;margin:0;background:#20554c;border:1px solid #20554c;color:#fff;font-size:.95rem;font-weight:700;line-height:1.6;text-decoration:none;white-space:normal;text-align:center}
body.site-page main .portal-event-card a.portal-event-details:hover,body.site-page main .portal-event-card a.portal-event-details:focus-visible{background:#153e37;border-color:#153e37;color:#fff}
body.site-page.page-about main :is(.institution-brand-intro,.about-sidebar-note,.portal-about-services) a.button{display:inline-flex;justify-content:center;align-items:center;min-height:46px;max-width:100%;box-sizing:border-box;padding:10px 16px;line-height:1.65;white-space:normal;text-align:center;text-decoration:none;background:#fff;color:#285369;border:1px solid #9ebbbc;border-radius:9px;font-size:.94rem}
body.site-page.page-about main :is(.institution-brand-intro,.about-sidebar-note,.portal-about-services) a.button:hover{background:#e8f2ef;color:#1c4d43;border-color:#4d8072}
@media(max-width:700px){body.site-page.page-home main .home-conferences>.portal-card-grid{grid-template-columns:minmax(0,1fr);gap:16px}body.site-page main .portal-event-card a.portal-event-details{width:100%}}
/* Keep event fact labels readable on white cards. */
body.site-page main .portal-facts dt{color:#4b6371}

/* Conference directory: a short introduction and two readable event cards. */
body.site-page main .parichay-listing{display:grid;gap:18px}
body.site-page main .parichay-listing .parichay-hero{display:grid;grid-template-columns:minmax(0,1fr) 88px;align-items:center;gap:20px;padding:20px 24px;margin:0;background:linear-gradient(110deg,#fff6e6,#edf5f1);border:1px solid #d7e1d8;border-left:4px solid #b67b2f}
body.site-page main .parichay-hero .eyebrow{margin:0 0 4px;font-size:.82rem;color:#805020}
body.site-page main .parichay-hero h1{margin:0 0 6px;font-size:clamp(1.45rem,2.6vw,1.9rem);line-height:1.5;color:#244e61}
body.site-page main .parichay-hero .parichay-intro{max-width:860px;margin:0;font-size:.94rem;line-height:1.8;color:#405b60}
body.site-page main .parichay-symbol{display:block;width:88px;height:auto}
body.site-page main .parichay-hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:12px;font-size:.85rem}
body.site-page main .parichay-hero-meta .support-badge{padding:4px 10px;background:#fff;border:1px solid #cbdbce;color:#36594a}
body.site-page main .parichay-hero-meta>a{color:#28594d;font-weight:650;text-underline-offset:4px}
body.site-page main .parichay-listing .portal-section-heading{margin-bottom:12px}
body.site-page main .parichay-listing .portal-section-heading h2{font-size:1.3rem;margin:0 0 4px}
body.site-page main .parichay-listing .portal-section-heading p{font-size:.9rem;color:#4b6371;margin:0}
body.site-page main .parichay-listing .portal-filter{display:grid;grid-template-columns:minmax(180px,1.6fr) repeat(2,minmax(110px,1fr)) auto auto;gap:12px;align-items:end;padding:14px 16px;margin:0 0 16px;border-top:1px solid #d8e3ea;background:#fff}
body.site-page main .parichay-listing .portal-filter label{min-width:0}
body.site-page main .parichay-listing .portal-filter :is(input,select){box-sizing:border-box;min-height:44px;margin-bottom:0}
body.site-page main .parichay-listing .portal-filter button{min-height:44px;margin:0;padding:9px 18px}
body.site-page main .parichay-listing .portal-filter>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;padding:8px 0;color:#405d6b;text-underline-offset:3px}
body.site-page main .parichay-listing .portal-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body.site-page main .parichay-listing .portal-event-card{display:flex;flex-direction:column;align-items:stretch;border-top:3px solid #368679}
body.site-page main .parichay-listing .portal-event-card:nth-child(2n){border-top-color:#b67b2f}
body.site-page main .parichay-listing .portal-event-card h3{font-size:1.1rem;line-height:1.65;margin:12px 0}
body.site-page main .parichay-listing .portal-event-organizer{padding:9px 12px;gap:2px;margin:0 0 12px}
body.site-page main .parichay-listing .portal-card-footer{margin-top:auto;padding-top:14px}
body.site-page main .parichay-listing .event-participation{margin:0;padding:20px}
body.site-page main .parichay-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0;padding:0;list-style:none;counter-reset:participation}
body.site-page main .parichay-steps>li{counter-increment:participation;padding:14px;border:1px solid #dbe5df;border-radius:9px;background:#f6f9f5;min-width:0}
body.site-page main .parichay-steps>li::before{content:counter(participation,decimal-leading-zero);display:block;font-size:.8rem;font-weight:750;color:#805020;margin-bottom:5px}
body.site-page main .parichay-steps strong{color:#28594d;font-size:.97rem}
body.site-page main .parichay-steps p{font-size:.9rem;line-height:1.8;margin:7px 0 0;color:#405b60}
body.site-page main .event-participation .parichay-contact-note{border-top:1px solid #dbe5df;padding-top:12px;margin:0;font-size:.85rem;color:#4b6371}
@media(max-width:900px){body.site-page main .parichay-listing .portal-filter{grid-template-columns:repeat(2,minmax(0,1fr))}body.site-page main .parichay-listing .portal-filter>label:first-of-type{grid-column:1/-1}body.site-page main .parichay-listing .portal-filter button{width:100%}}
@media(max-width:700px){
 body.site-page main .parichay-listing{gap:16px}
 body.site-page main .parichay-listing .parichay-hero{grid-template-columns:minmax(0,1fr);padding:17px;gap:0}
 body.site-page main .parichay-symbol{display:none}
 body.site-page main .parichay-listing .portal-card-grid,body.site-page main .parichay-steps{grid-template-columns:minmax(0,1fr);gap:12px}
 body.site-page main .parichay-listing .portal-filter{padding:12px;gap:10px}
 body.site-page main .parichay-listing .event-participation{padding:17px}
}

/* Main menu groups use text colour, with an underline for the current page. */
body.site-page #site-nav>a:is(.portal-nav-community,.portal-nav-family){background:transparent;border:0;border-bottom:3px solid transparent;border-radius:7px;box-shadow:none;text-underline-offset:5px;text-decoration-thickness:2px}
body.site-page #site-nav>a.portal-nav-community{color:#244557}
body.site-page #site-nav>a.portal-nav-family{color:#244557}
body.site-page #site-nav>a.portal-nav-community:is(:hover,:focus-visible){background:#edf4f1;color:#174c42;text-decoration:underline}
body.site-page #site-nav>a.portal-nav-family:is(:hover,:focus-visible){background:#edf4f1;color:#174c42;text-decoration:underline}
body.site-page #site-nav>a.portal-nav-community[aria-current=page]{background:#edf4f1;color:#174c42;border-bottom-color:#af7d2b;box-shadow:none;text-decoration:none}
body.site-page #site-nav>a.portal-nav-family[aria-current=page]{background:#edf4f1;color:#174c42;border-bottom-color:#af7d2b;box-shadow:none;text-decoration:none}

/* Consistent page rhythm: compact surfaces with room for readable text. */
body.site-page main{padding:24px 24px 36px}
body.site-page main :is(.panel,.portal-card){padding:20px}
body.site-page main :is(.panel,.portal-card)>:first-child{margin-top:0}
body.site-page main :is(.panel,.portal-card)>:last-child{margin-bottom:0}
body.site-page main>.panel+.panel{margin-top:16px}
body.site-page main .portal-section-heading{gap:12px;margin-bottom:16px}
body.site-page main .portal-section-heading :is(h1,h2,p){margin-top:0;margin-bottom:6px}
body.site-page main .portal-actions{gap:10px;margin-top:16px}
body.site-page main .portal-actions>:is(a.button,button){display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;box-sizing:border-box}
body.site-page main :is(.portal-card-grid,.portal-detail-grid,.about-layout,.guide-layout){gap:18px}
body.site-page main :is(.about-page,.volunteer-workspace){gap:18px}
body.site-page main .portal-home-section{padding:24px 0}
body.site-page.page-home main .portal-home-hero{padding:28px;gap:24px;margin-top:0}
body.site-page main .portal-hero-panel{padding:20px}
body.site-page main .portal-hero-panel>a{padding:16px 0}
body.site-page.page-home main .home-conferences{padding:24px 20px;margin:20px 0}
body.site-page.page-home main .portal-data-summary{margin-top:20px}
body.site-page main .community-join{padding:22px;margin:22px 0;gap:20px}
body.site-page main .institution-brand-intro{padding:24px;gap:24px;margin-bottom:20px}
body.site-page main .portal-info .info-content-card{padding:18px 20px}
body.site-page main :is(.guide-start,.guide-search,.guide-service){padding:18px;margin:14px 0}
body.site-page footer.portal-footer{padding-top:26px}
body.site-page .portal-footer-inner{gap:24px}
body.site-page .portal-footer-bottom{margin-top:18px;padding:14px 0}
/* Remove doubled margins inside cards without tightening form controls. */
body.site-page main :is(.panel,.portal-card,.about-panel,.info-content-card)>:is(h2,h3){margin-top:0;margin-bottom:10px}
body.site-page main :is(.panel,.portal-card,.about-panel,.info-content-card)>p{margin-top:10px;margin-bottom:10px}
body.site-page main :is(.panel,.portal-card,.about-panel,.info-content-card)>:first-child{margin-top:0}
body.site-page main :is(.panel,.portal-card,.about-panel,.info-content-card)>:last-child{margin-bottom:0}
body.site-page main .about-panel{padding:20px}
body.site-page main .about-work-grid>section{padding:16px}
body.site-page main .account-dashboard .panel{padding:17px}
body.site-page main .candidate-sidebar .panel{padding:17px}
@media(max-width:700px){
 body.site-page main{padding:18px 14px 28px}
 body.site-page main :is(.panel,.portal-card){padding:17px}
 body.site-page main :is(.portal-card-grid,.portal-detail-grid,.about-layout,.guide-layout){gap:14px}
 body.site-page main .portal-home-section{padding:20px 0}
 body.site-page.page-home main .portal-home-hero{padding:20px 17px;gap:18px}
 body.site-page.page-home main .home-conferences{padding:20px 16px;margin:18px 0}
 body.site-page main :is(.institution-brand-intro,.community-join){padding:18px;gap:18px}
 body.site-page main .portal-info .info-content-card{padding:16px}
 body.site-page main :is(.guide-start,.guide-search,.guide-service){padding:16px}
 body.site-page main .about-panel{padding:17px}
 body.site-page main .about-work-grid>section{padding:14px}
}
