/* Site-wide premium consistency layer. Homepage editorial styles remain isolated. */
:root{--premium-page-max:1320px;--premium-page-gutter:clamp(18px,3vw,36px);--premium-section-space:clamp(56px,7vw,96px);--premium-grid-gap:clamp(16px,2vw,24px);--premium-card-pad:clamp(20px,2.4vw,28px);--premium-radius:6px;--premium-control-radius:4px;--premium-media-ratio:16/10;--premium-shadow:0 18px 48px rgba(16,24,40,.08);--premium-ease:cubic-bezier(.2,.7,.2,1)}
.site-shell:not(.public-home-page){--page-max-width:var(--premium-page-max);--page-gutter:var(--premium-page-gutter);--section-space:var(--premium-section-space);--card-space:var(--premium-card-pad);background:var(--color-bg,#f6f8fb);color:var(--color-text-primary,#111827);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.005em}
.site-shell:not(.public-home-page) :is(.container,.container-fluid){padding-right:var(--premium-page-gutter);padding-left:var(--premium-page-gutter)}
.site-shell:not(.public-home-page) main>.container,.site-shell:not(.public-home-page) main>.container-fluid,.site-shell:not(.public-home-page) :is(.listing-page,.portal-page,.support-page,.community-page)>.container{max-width:var(--premium-page-max)}
.site-shell:not(.public-home-page) main{min-height:45vh}
.site-shell:not(.public-home-page) :is(h1,h2,h3,h4,h5,h6){color:var(--color-text-primary,#111827);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:700;letter-spacing:-.035em}
.site-shell:not(.public-home-page) :is(.section-title,.page-title,.portal-title){line-height:1.05}.site-shell:not(.public-home-page) :is(p,li){line-height:1.65}

/* Shared photographic introductions. */
.site-shell:not(.public-home-page) .page-header{display:flex;min-height:clamp(250px,28vw,360px)!important;align-items:flex-end;margin:0!important;padding:clamp(48px,7vw,82px) 0!important;background-position:center!important;background-size:cover!important;border-bottom:1px solid rgba(255,255,255,.12);text-align:left!important}
.site-shell:not(.public-home-page) .page-header:before{background:linear-gradient(90deg,rgba(5,9,15,.9),rgba(5,9,15,.5) 58%,rgba(5,9,15,.18))!important}
.site-shell:not(.public-home-page) .page-header :is(h1,h2){max-width:900px;margin:0;color:#fff!important;font-size:clamp(2.7rem,5vw,5rem)!important;letter-spacing:-.055em;line-height:.94}
.site-shell:not(.public-home-page) .page-header p{max-width:650px;margin:16px 0 0!important;color:rgba(255,255,255,.76)!important;font-size:clamp(.94rem,1.4vw,1.08rem)!important;line-height:1.55}

/* One surface language across public cards and panels. */
.site-shell:not(.public-home-page) :is(.card,.ui-card,.ui-panel,.portal-panel,.club-panel,.booking-panel,.support-panel,.market-panel,.messages-panel,.community-sidebar,.journey-panel,.detail-info-grid section,.profile-card,.portal-profile-card){border:1px solid var(--color-border,#e5e7eb);border-radius:var(--premium-radius);box-shadow:none}
.site-shell:not(.public-home-page) :is(.card-body,.community-card-body,.listing-card-body,.vehicle-card-body,.market-card-body,.portal-panel,.club-panel,.booking-panel,.support-panel,.journey-panel){padding:var(--premium-card-pad)}
.site-shell:not(.public-home-page) :is(.card,.ui-card,.community-card,.listing-card,.service-card){transition:border-color 220ms var(--premium-ease),box-shadow 220ms var(--premium-ease),transform 220ms var(--premium-ease)}
.site-shell:not(.public-home-page) :is(a.card,a.ui-card,.community-card,.listing-card,.service-card):hover{border-color:rgba(23,105,255,.34);box-shadow:var(--premium-shadow);transform:translateY(-3px)}

/* Media is always full bleed and consistently cropped. */
.site-shell:not(.public-home-page) :is(.community-card,.listing-card,.service-card,.vehicle-card,.event-card,.supplier-card){overflow:hidden}
.site-shell:not(.public-home-page) :is(.community-card-img,.card-img-top,.listing-card-media,.listing-card__media,.service-card-media,.vehicle-card-image,.event-card-image,.supplier-card-media){display:block;width:100%;height:auto!important;aspect-ratio:var(--premium-media-ratio);margin:0!important;overflow:hidden;border:0;border-radius:0!important;background-position:center!important;background-size:cover!important}
.site-shell:not(.public-home-page) :is(.community-card-img,.card-img-top,.listing-card-media,.listing-card__media,.service-card-media,.vehicle-card-image,.event-card-image,.supplier-card-media)>img,.site-shell:not(.public-home-page) img.card-img-top{width:100%;height:100%!important;object-fit:cover;object-position:center}

/* Precise controls and quieter data chrome. */
.site-shell:not(.public-home-page) :is(.btn,.ui-button,.nav-register-btn){min-height:46px;border-radius:var(--premium-control-radius)!important;font-weight:700;box-shadow:none}
.site-shell:not(.public-home-page) :is(.btn-sm,.ui-button--sm){min-height:38px}
.site-shell:not(.public-home-page) :is(.form-control,input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:48px;border-radius:var(--premium-control-radius)!important;padding-right:14px;padding-left:14px}
.site-shell:not(.public-home-page) textarea{min-height:120px}.site-shell:not(.public-home-page) :is(.form-group,.ui-field) label{margin-bottom:8px;font-size:.82rem;font-weight:700;letter-spacing:.01em}
.site-shell:not(.public-home-page) :is(.badge,.status-badge,.ui-badge){border-radius:999px;font-weight:700;letter-spacing:.015em}
.site-shell:not(.public-home-page) :is(.table,.ui-table){margin-bottom:0;color:inherit}
.site-shell:not(.public-home-page) :is(.table,.ui-table) thead th{padding:14px 16px;border-top:0;border-bottom:1px solid var(--color-border,#e5e7eb);font-size:.72rem;letter-spacing:.07em;text-transform:uppercase}
.site-shell:not(.public-home-page) :is(.table,.ui-table) tbody td{padding:16px;vertical-align:middle;border-top-color:var(--color-border,#e5e7eb)}
.site-shell:not(.public-home-page) :is(.modal-content,.community-modal-content,.market-modal-content,.message-modal-content){overflow:hidden;border:1px solid var(--color-border,#e5e7eb);border-radius:8px;box-shadow:0 28px 80px rgba(5,9,15,.24)}
.site-shell:not(.public-home-page) :is(.modal-header,.card-header,.ui-panel__header){border-bottom-color:var(--color-border,#e5e7eb)}

/* Admin shares the design system at workspace density. */
body#page-top{--premium-card-pad:22px;background:#f4f6f9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body#page-top :is(.card,.admin-card,.ui-card,.ui-panel){border:1px solid #e2e7ee;border-radius:6px;box-shadow:none}
body#page-top :is(.card-header,.admin-card-header){padding:16px 20px;background:transparent;border-bottom:1px solid #e2e7ee}
body#page-top :is(.card-body,.admin-card-body){padding:var(--premium-card-pad)}
body#page-top :is(.btn,.ui-button){min-height:42px;border-radius:4px!important;font-weight:700}
body#page-top :is(.form-control,input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:44px;border-radius:4px!important}
body#page-top :is(.table,.ui-table) thead th{padding:13px 14px;border-top:0;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}
body#page-top :is(.table,.ui-table) tbody td{padding:14px;vertical-align:middle}
body#page-top .admin-page-header{margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid #dde3eb}
body#page-top .admin-page-title{margin-bottom:7px;font-size:clamp(1.75rem,3vw,2.35rem);letter-spacing:-.045em}
html[data-theme=dark] .site-shell:not(.public-home-page) :is(.card,.ui-card,.ui-panel,.portal-panel,.club-panel,.booking-panel,.support-panel,.market-panel,.messages-panel,.community-sidebar,.journey-panel,.detail-info-grid section,.profile-card,.portal-profile-card){border-color:#2a3547}

@media(max-width:767.98px){:root{--premium-page-gutter:16px;--premium-section-space:48px;--premium-grid-gap:14px;--premium-card-pad:20px}.site-shell:not(.public-home-page) .page-header{min-height:210px!important;padding:42px 0 36px!important}.site-shell:not(.public-home-page) .page-header :is(h1,h2){font-size:clamp(2.25rem,11vw,3.25rem)!important}.site-shell:not(.public-home-page) :is(.community-card-img,.card-img-top,.listing-card-media,.listing-card__media,.service-card-media,.vehicle-card-image,.event-card-image,.supplier-card-media){aspect-ratio:16/9}.site-shell:not(.public-home-page) :is(a.card,a.ui-card,.community-card,.listing-card,.service-card):hover{box-shadow:none;transform:none}.site-shell:not(.public-home-page) :is(.table-responsive,.ui-table-wrap){margin-right:calc(-1 * var(--premium-page-gutter));margin-left:calc(-1 * var(--premium-page-gutter));padding-right:var(--premium-page-gutter);padding-left:var(--premium-page-gutter)}body#page-top{--premium-card-pad:18px}body#page-top .admin-page-header{margin-bottom:20px;padding-bottom:18px}}
@media(prefers-reduced-motion:reduce){.site-shell:not(.public-home-page) *,body#page-top *{transition-duration:.01ms!important}}
