/* Inter v20, SIL Open Font License; see assets/fonts/Inter-OFL.txt. */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../assets/fonts/inter-latin-ext-v20.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../assets/fonts/inter-latin-v20.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Shared visual language. Keep page layout/behavior local; use these tokens for new UI. */
:root {
  --ty-brand: #00a36c;
  --ty-brand-hover: #008f5e;
  --ty-ink: #0f172a;
  --ty-muted: #475569;
  --ty-surface: #f8fafc;
  --ty-mint: #ecfdf5;
  --ty-border: #e2e8f0;
  --ty-radius: 20px;
  --ty-shadow: 0 8px 24px -16px rgba(15,23,42,.2);
}
body[data-ty-page] {
  --brand-green: var(--ty-brand);
  --brand-green-hover: var(--ty-brand-hover);
  --text-main: var(--ty-ink);
  --text-muted: var(--ty-muted);
  --bg-color: var(--ty-surface);
  --teal-50: #ecfdf5;
  --teal-100: #d1fae5;
  --teal-500: #00a36c;
  --teal-600: #008f5e;
  --teal-700: #047857;
  background-color: var(--ty-surface);
  font-family: 'Inter', sans-serif;
  -webkit-font-smoothing: antialiased;
}
body[data-ty-page] :is(button,input,select,textarea) { font-family: inherit; }
body[data-ty-page] :is(a,button,input,select,textarea,summary):focus-visible {
  outline: 3px solid #00a36c; outline-offset: 3px;
}
body[data-ty-page] :is(.page-title,.hero-title,.bl-hero h1,.jp-hero h1) {
  font-size: clamp(2rem,4vw,3rem); font-weight: 800; line-height: 1.15; letter-spacing: -.035em;
}
/* Common public-page headers and editorial pages. */
body[data-ty-page] .dark-bg-header { background: #ecfdf5; border-bottom: 1px solid #d1fae5; }
body[data-ty-page] :is(.dark-bg-glow,.dark-bg-grid,.ty-glow-1,.ty-glow-2) { display: none; }
body[data-ty-page] .page-title { color: var(--ty-ink); }
body[data-ty-page] .page-subtitle { color: var(--ty-muted); }
body[data-ty-page] .title-badge { background: #fff; color: #047857; border-color: #b7e6d1; font-weight: 700; }
body[data-ty-page] :is(.bl-hero,.jp-hero) { background: var(--ty-mint); color: var(--ty-ink); }
body[data-ty-page] :is(.bl-hero,.jp-hero)::before,
body[data-ty-page] .jp-hero::after { display: none; }
body[data-ty-page] :is(.bl-meta,.bl-crumb,.jp-hero p.lead) { color: var(--ty-muted); }
body[data-ty-page] :is(.bl-chip,.bl-crumb a,.jp-eyebrow,.jp-hero h1 span) { color: #047857; }
body[data-ty-page] .jp-facts span { background: #fff; border-color: #d1fae5; color: #475569; }
body[data-ty-page] .jp-btn.g { background: #fff; border-color: #b7e6d1; color: #047857; }
/* Reusable cards: restrained borders and shadows, without changing status colors. */
body[data-ty-page] :is(.info-card,.document-card,.hero-card,.mascot-card,.pc-card,.login-card,.signup-card,.form-card,.bl-body,.bl-card,.jp-final,.tst-card,.eco-card,.faq-item,.stat-card,.entity-card,.booking-card,.summary-card,.usage-card,.plan-card,.admin-detail-card) {
  border-radius: var(--ty-radius); box-shadow: var(--ty-shadow);
}
body[data-ty-page] :is(.tst-wrap,.gl-wrap,.igb-in,.jp-final) {
  background: #fff; border: 1px solid var(--ty-border); border-radius: var(--ty-radius); box-shadow: var(--ty-shadow);
}
body[data-ty-page] :is(.tst-wrap,.gl-wrap,.igb-in)::before,
body[data-ty-page] :is(.tst-wrap,.gl-wrap)::after { display: none; }
body[data-ty-page] :is(.tst-head h2,.gl-head h2,.igb-copy h2,.jp-final h2,.eco-section h2,.cta-content h2,.mascot-text h2) {
  font-size: clamp(1.6rem,3vw,2.15rem); line-height: 1.2; font-weight: 800; letter-spacing: -.025em;
}
body[data-ty-page] :is(.igb-btn,.jp-btn,.search-btn) { border-radius: 12px; box-shadow: none; font-weight: 700; }
body[data-ty-page] .igb-in { color: var(--ty-ink); }
body[data-ty-page] .igb-copy p { color: var(--ty-muted); }
body[data-ty-page] .igb-copy h2 span { color: #008f5e; }
body[data-ty-page] :is(.igb-eyebrow,.igb-list span) { background: #ecfdf5; color: #047857; border-color: #d1fae5; }
body[data-ty-page] .igb-frame { box-shadow: none; border: 1px solid var(--ty-border); }
body[data-ty-page] .igb-preview { display: block; position: relative; color: #fff; }
body[data-ty-page] .igb-preview img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; }
body[data-ty-page] .igb-preview span { display: block; padding: 14px 18px; background: #047857; font-size: .9rem; font-weight: 600; }
body[data-ty-page] .ty-footer { background: #0f1535; }
/* Homepage hierarchy and breathing room. */
body[data-ty-page="index"] .hero { min-height: 540px; padding: 64px 0 100px; }
body[data-ty-page="index"] .hero-title { text-transform: none; text-shadow: none; font-size: clamp(2.25rem,4.5vw,3.75rem); }
body[data-ty-page="index"] .hero-overlay { width: 100%; background: linear-gradient(90deg,rgba(248,250,252,.97),rgba(248,250,252,.8) 45%,rgba(248,250,252,.12)); backdrop-filter: none; -webkit-backdrop-filter: none; mask-image: none; -webkit-mask-image: none; }
body[data-ty-page="index"] .mascot-img { display: none; }
body[data-ty-page="index"] .hero-text { max-width: 58%; }
body[data-ty-page="index"] .tabs { border-radius: 16px; box-shadow: var(--ty-shadow); }
body[data-ty-page="index"] .tab-btn { border-radius: 11px; font-weight: 600; }
body[data-ty-page="index"] .q-card { padding: 24px; border-radius: 20px; box-shadow: var(--ty-shadow); gap: 16px; }
body[data-ty-page="index"] .q-icon-front { width: 52px; height: 52px; border-radius: 14px; font-size: 24px; }
body[data-ty-page="index"] .q-arrow { box-shadow: none; }
body[data-ty-page="index"] .cta-section { background: #ecfdf5; color: var(--ty-ink); padding: 64px 20px; border-top: 1px solid #d1fae5; }
body[data-ty-page="index"] :is(.cta-bg-img,.cta-gradient,.cta-paw) { display: none; }
body[data-ty-page="index"] .cta-content p { color: var(--ty-muted); font-size: 1.05rem; }
body[data-ty-page="index"] .cta-content:hover h2 { transform: none; }
/* About: a single enabled partner card should fill its row. */
body[data-ty-page="about"] .partner-grid { grid-template-columns: repeat(auto-fit,minmax(min(100%,420px),1fr)); }
body[data-ty-page="about"] .hero-section { margin-bottom: 48px; }
body[data-ty-page="about"] .hero-card { padding: clamp(24px,4vw,40px); }
body[data-ty-page="about"] .hero-card p { font-size: 1.05rem; }
body[data-ty-page="about"] .mascot-bg-glow { display: none; }
body[data-ty-page="about"] .mascot-circle { background: #ecfdf5; border-color: #d1fae5; box-shadow: none; }
body[data-ty-page="about"] .mascot-tag { color: #047857; }
/* Account pages share the same primary accent; warning/error palettes are untouched. */
body:is([data-ty-page="admin-dashboard"],[data-ty-page="profile"],[data-ty-page="expert-dashboard"],[data-ty-page="ngo-dashboard"]) {
  --indigo-50: #ecfdf5; --indigo-100: #d1fae5; --indigo-200: #a7f3d0;
  --indigo-300: #6ee7b7; --indigo-400: #34d399; --indigo-500: #00a36c;
  --indigo-600: #008f5e; --indigo-700: #047857; --indigo-800: #065f46; --indigo-900: #064e3b;
}
body[data-ty-page="profile"] .card-banner { background: #ecfdf5; }
@media (max-width: 640px) {
  body[data-ty-page="index"] .hero { min-height: 370px; padding: 44px 0 80px; }
  body[data-ty-page="index"] .hero-text { max-width: 100%; padding-top: 0; }
  body[data-ty-page="index"] .hero-overlay { background: rgba(248,250,252,.8); }
  body[data-ty-page="index"] .tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; }
  body[data-ty-page="index"] .tab-btn { min-width: 0; padding: 12px 6px; }
  body[data-ty-page="index"] .q-card { padding: 18px; }
  body[data-ty-page] :is(.tst-wrap,.gl-wrap,.igb-in) { padding: 24px 16px; }
  body[data-ty-page] .igb-copy h2 { overflow-wrap: anywhere; }
  body[data-ty-page] :is(.login-card,.signup-card) { border-radius: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-ty-page] *, body[data-ty-page] *::before, body[data-ty-page] *::after {
    animation-duration: .01ms !important; animation-iteration-count: 1 !important;
    transition-duration: .01ms !important; scroll-behavior: auto !important;
  }
}
body[data-ty-page="pet-care-experts"] {
  --primary-50: #ecfdf5; --primary-100: #d1fae5; --primary-500: #00a36c;
  --primary-600: #008f5e; --primary-700: #047857;
}
body[data-ty-page="pet-care-experts"] .btn-submit-booking { background: #008f5e; box-shadow: none; }
body[data-ty-page="pet-care-experts"] .btn-submit-booking:hover:not(:disabled) { background: #047857; box-shadow: none; }
body[data-ty-page="pet-care-experts"] .btn-submit-booking:disabled { background: #94a3b8; }
body[data-ty-page="index"] .cta-buttons .btn-secondary { background: #fff; color: #047857; border-color: #b7e6d1; }
body[data-ty-page="index"] .cta-buttons .btn-primary { box-shadow: none; }
body[data-ty-page="contact"] .form-column {
  align-self: start; justify-content: flex-start; padding: clamp(24px,4vw,40px);
  border-radius: var(--ty-radius); box-shadow: var(--ty-shadow);
}
body[data-ty-page="contact"] .form-intro { margin-bottom: 28px; }
body[data-ty-page="contact"] .form-intro h2 { font-size: 1.5rem; font-weight: 800; color: #0f172a; margin: 0 0 8px; }
body[data-ty-page="contact"] .form-intro p { font-size: .95rem; line-height: 1.6; color: #475569; }
body[data-ty-page="jaipur"] .jp-more { background: #fff; color: #0f172a; border: 1px solid #e2e8f0; border-radius: 20px; box-shadow: var(--ty-shadow); }
body[data-ty-page="jaipur"] .jp-more p { color: #475569; }
body[data-ty-page="jaipur"] .jp-more h2 span { color: #008f5e; }
body[data-ty-page="about"] .bg-blobs { display: none; }
body[data-ty-page="about"] .mascot-card { border-color: #e2e8f0; }
body[data-ty-page="pet-care-experts"] .vc-tag { background: #f1f5f9; color: #475569; border-color: #e2e8f0; }
body[data-ty-page] .igb-preview img { height: auto; }
body[data-ty-page] :is(.jp-head h2,.jpb h2,.jp-more h2) { font-weight: 800; }
body[data-ty-page="admin-dashboard"] {
  --shadow-indigo: 0 4px 12px -6px rgba(0,163,108,.25);
  --shadow-indigo-lg: 0 6px 16px -8px rgba(0,163,108,.3);
}
body[data-ty-page="admin-dashboard"] .admin-id-section { background: #ecfdf5; }
body[data-ty-page="admin-dashboard"] .admin-id-glow { display: none; }

/* Phase 1: semantic premium foundation. Mint promotions remain a distinct light surface. */
:root {
  --ty-brand: #047857; --ty-brand-hover: #065f46;
  --ty-brand-deep: #065f46; --ty-forest: #064e3b; --ty-navy: #0f1535;
  --ty-card: #fff; --ty-surface-alt: #f1f5f9; --ty-focus: #047857;
  --ty-success: #166534; --ty-warning: #92400e; --ty-error: #b91c1c; --ty-info: #1e40af;
  --ty-space-1: 4px; --ty-space-2: 8px; --ty-space-3: 12px; --ty-space-4: 16px;
  --ty-space-6: 24px; --ty-space-8: 32px; --ty-space-12: 48px; --ty-space-16: 64px;
  --ty-content: 1280px; --ty-gutter: clamp(16px,3vw,32px);
  --ty-radius-sm: 12px; --ty-radius: 20px;
  --ty-shadow: 0 8px 24px -16px rgb(15 23 42 / .18);
  --ty-shadow-raised: 0 20px 48px -24px rgb(6 78 59 / .25);
}
body[data-ty-page] { --teal-600: #047857; --teal-500: #047857; --primary-600: #047857; }
body[data-ty-page] :is(.ty-btn,.adm-btn,.btn-primary,.btn-submit,.btn-submit-booking,.session-btn,.login-button,.btn-login-submit) {
  font-weight: 700; border-radius: var(--ty-radius-sm); min-height: 44px;
}
body[data-ty-page] :is(.btn-primary,.btn-submit,.btn-submit-booking,.session-btn) { background: var(--ty-brand); color: #fff; box-shadow: none; }
body[data-ty-page] :is(.btn-primary,.btn-submit,.btn-submit-booking,.session-btn):hover { background: var(--ty-brand-hover); }
body[data-ty-page] :is(button,input,select,textarea) { accent-color: var(--ty-brand); }
body[data-ty-page] :is(button:disabled,[aria-disabled="true"]) { cursor: not-allowed; opacity: .65; }
.ty-btn { display: inline-flex; justify-content: center; align-items: center; gap: 8px; min-height: 44px; padding: 10px 18px; font: 600 .9rem/1.4 Inter,sans-serif; border: 1px solid transparent; border-radius: 12px; text-decoration: none; cursor: pointer; transition: background .15s,border-color .15s; }
.ty-btn-primary { background: #047857; color: #fff; }
.ty-btn-primary:hover { background: #065f46; }
.ty-btn-outline { background: #fff; border-color: #cbd5e1; color: #065f46; }
.ty-btn-outline:hover { background: #ecfdf5; border-color: #047857; }
.ty-btn-danger { background: #b91c1c; color: #fff; }
.ty-btn-ghost { background: transparent; color: #065f46; }
.ty-eyebrow { display: block; color: #047857; font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
body[data-ty-page] .ty-footer { background: #043b2d; }
body[data-ty-page] .ty-footer :is(p,a,span) { text-underline-offset: 3px; }
body[data-ty-page="index"] .hero-overlay { background: linear-gradient(90deg,rgba(6,78,59,.98),rgba(6,78,59,.87) 36%,rgba(6,78,59,.1) 75%); }
body[data-ty-page="index"] .hero-title span:first-child { color: #fff; }
body[data-ty-page="index"] .hero-title span:last-child { color: #b3efcf; }
body[data-ty-page="index"] .hero-text > :not(.hero-title):not(.hero-event-pill) { color: #ecfdf5; }
body[data-ty-page="index"] .cta-section { background: #064e3b; color: #fff; border-color: #065f46; }
body[data-ty-page="index"] .cta-content p { color: #d1fae5; }
body[data-ty-page="contact"] .mascot-promo { background: #064e3b; }
body[data-ty-page] :is(.search-input,.form-control,.form-input,.form-select,.form-textarea) { min-height: 44px; }
body[data-ty-page] :is(.input-label,.form-label) { font-weight: 600; letter-spacing: .035em; }
body[data-ty-page] .tyo-code { min-height: 44px; }
body[data-ty-page] .tyo-x { min-width: 40px; min-height: 40px; }
body[data-ty-page] .tyo-big { color: #047857; }
body[data-ty-page] :is(.q-card,.bl-card,.jp-card,.event-card,.vc-card) { transition: border-color .15s,box-shadow .15s; }
body[data-ty-page] :is(.q-card,.bl-card,.jp-card,.event-card,.vc-card):hover { border-color: #a7cdbb; box-shadow: var(--ty-shadow-raised); }
body[data-ty-page] :is(.modal-content,.bm-content,.adm-modal) { max-height: calc(100dvh - 32px); overflow-y: auto; overscroll-behavior: contain; }
/* Admin shell: local progress, stable active panel and dense controls. */
body[data-ty-page="admin-dashboard"] { --indigo-600: #047857; --indigo-700: #065f46; }
body.ty-admin-pending :is(#sidebar,[id^="tab-"]) { visibility: hidden; }
body[data-ty-page="admin-dashboard"] #sidebar { background: #064e3b; }
body[data-ty-page="admin-dashboard"] :is(.sb-btn,.sb-name,.sb-role) { color: #e2f4eb; }
body[data-ty-page="admin-dashboard"] .sb-btn.active { background: #fff; color: #064e3b; box-shadow: none; }
body[data-ty-page="admin-dashboard"] .sb-btn:hover:not(.active) { background: #065f46; color: #fff; }
body[data-ty-page="admin-dashboard"] [aria-busy="true"] { border-top: 2px solid #047857; }
.admin-freshness { min-height: 20px; margin-bottom: 12px; color: #475569; font-size: .75rem; }
#admin-load-status:not([hidden]) { padding: 20px; margin: 0 0 20px; border: 1px solid #fecaca; background: #fff; border-radius: 16px; color: #991b1b; }
#admin-load-status p { margin: 0 0 12px; }
@media(max-width:640px) { body[data-ty-page="index"] .hero-overlay { background: rgba(6,78,59,.83); } }
/* The offer bar (site.js) is the only top announcement: it appears only while an offer is running and
   not dismissed, and pushes the header down just while it shows. */
body[data-ty-page] .tyo { display: flex; align-items: center; }
body[data-ty-page] .tyo > div { width: 100%; }
body[data-ty-page] .tyo-sp { height: 0; }
html.ty-private-concealed body { visibility: hidden; }
body[data-ty-page] .ty-footer :is(.ty-brand-desc,.ty-news-desc,.ty-copyright,.ty-legal-link,.ty-link-item a) { color: #d1e5db; }
body[data-ty-page] .ty-footer .ty-input { background: #fff; color: #0f172a; border-color: #a7cdbb; min-height: 44px; }
body[data-ty-page] .ty-footer .ty-input::placeholder { color: #475569; opacity: 1; }
body[data-ty-page] .ty-footer .ty-btn-sub { background: #047857; color: #fff; min-height: 44px; }
.ty-error-page { max-width: 760px; margin: 10vh auto; padding: 32px; }
.ty-error-page img { max-width: 180px; height: auto; margin-bottom: 48px; }
.ty-error-page h1 { color: #064e3b; font-size: clamp(2rem,5vw,3.5rem); font-weight: 800; line-height: 1.15; margin: 16px 0 24px; }
.ty-error-page p { color: #475569; line-height: 1.6; margin-bottom: 24px; }
.admin-access-check { padding: 24px; color: #475569; }
.admin-skeleton-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-top: 20px; }
.admin-skeleton-grid span { display: block; height: 100px; background: #e2e8f0; border-radius: 16px; }
body:not(.ty-admin-pending) .admin-access-check { display: none; }
body[data-ty-page] #ty-desktop-nav a[aria-current="page"] { color: #065f46; text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 2px; }
body[data-ty-page="index"] #ty-offer { min-height: 320px; max-width: var(--home-w,1280px); margin: 32px auto 48px; padding: 0 var(--home-gutter,16px); }
body[data-ty-page="index"] #ty-offer > :is(.tyoc-in,.ty-care-panel) { min-height: 320px; }
.ty-care-panel { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 32px; background: #fff; border: 1px solid #e2e8f0; border-radius: 20px; }
.ty-care-panel h2 { font-size: clamp(1.5rem,3vw,2rem); font-weight: 800; line-height: 1.2; color: #064e3b; margin: 12px 0; }
.ty-care-panel p { color: #475569; line-height: 1.6; }
.ty-care-panel > a { flex-shrink: 0; }
.ty-hero-eyebrow { min-height: 18px; font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 12px; }
@media(max-width:820px) { .ty-care-panel { flex-direction: column; align-items: flex-start; } }

/* Brand offer treatment: navy depth, mint highlights and the existing green actions. */
:root { --ty-brand-gradient: linear-gradient(135deg, #0f1535 0%, #12345a 60%, #00A36C 160%); }
body[data-ty-page] .ty-standard-offer { background: var(--ty-brand-gradient); border-bottom: 1px solid #3b6d78; color: #fff; }
body[data-ty-page] .ty-standard-offer .tyo-name { color: #d2e3ef; }
body[data-ty-page] .ty-standard-offer .tyo-big { color: #b3efcf; }
body[data-ty-page] .ty-standard-offer :is(.tyo-count,.tyo-sub) { color: #d2e3ef; }
body[data-ty-page] .ty-standard-offer .tyo-go a,
body[data-ty-page] .ty-standard-offer .tyo-go a span { color: #d1fae5; }
body[data-ty-page] .ty-standard-offer .tyo-x { border-color: #69828d; color: #fff; background: transparent; }
body[data-ty-page] .ty-standard-offer .tyo-x:hover { background: #234764; }
body[data-ty-page] .tyoc-in { position: relative; isolation: isolate; grid-template-columns: minmax(0,1.35fr) minmax(130px,.65fr) minmax(240px,1fr); gap: 28px; background: var(--ty-brand-gradient); border: 1px solid #294d68; color: #fff; overflow: hidden; padding: clamp(20px,3vw,40px); }
body[data-ty-page] .tyoc-in::before { content: ''; position: absolute; z-index: -1; width: 380px; height: 380px; border: 1px solid #ffffff12; border-radius: 50%; left: -160px; top: -250px; box-shadow: 0 0 0 45px #ffffff04,0 0 0 90px #ffffff03; pointer-events: none; }
body[data-ty-page] .tyoc h2 { color: #fff; font-size: clamp(28px,3vw,40px); overflow-wrap: anywhere; }
body[data-ty-page] .tyoc h2 span { color: #a7f3d0; }
body[data-ty-page] .tyoc-eb { background: #ffffff10; border: 1px solid #ffffff26; color: #e0f5ec; display: flex; align-items: center; gap: 8px; }
.tyoc-spark { color: #eac888; font-size: 16px; }
body[data-ty-page] .tyoc-sub { color: #dae5ee; font-size: 13px; }
body[data-ty-page] .tyoc-sub b { color: #b3efcf; }
body[data-ty-page] .tyoc-end { color: #dae5ee; }
body[data-ty-page] .tyoc-panel { background: #f3faf7; border-color: #d6e9df; padding: 20px; position: relative; }
body[data-ty-page] .tyoc-code { border-style: dashed; border-color: #7da994; }
.tyoc-art { position: relative; min-width: 0; padding: 8px; }
.tyoc-art img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: 48% 48% 36% 36%; border: 5px solid #ffffff18; }
.tyoc-art-note { display: block; position: relative; margin: -12px -6px 0; padding: 9px 8px; border-radius: 10px; background: #fff5df; color: #42432d; font-size: 10px; font-weight: 700; text-align: center; transform: rotate(-3deg); }
body[data-ty-page="index"] .search-box { border: 1px solid #dce6e2; border-radius: 20px; box-shadow: 0 12px 32px -22px #173b3540; }
body[data-ty-page="index"] .search-input-wrapper { border: 1px solid transparent; border-radius: 13px; background: #f5f8f7; }
body[data-ty-page="index"] .search-input-wrapper:focus-within { border-color: #047857; box-shadow: 0 0 0 2px #04785720; background: #fff; }
body[data-ty-page="index"] .search-input-wrapper input:focus,
body[data-ty-page="index"] .search-input-wrapper input:focus-visible { outline: none; box-shadow: none; border: 0; }
body[data-ty-page] .ty-footer .ty-news-inner { background: transparent; }
body[data-ty-page] .ty-footer .ty-news-glow { display: none; }
body[data-ty-page="index"] .cta-section { background: var(--ty-brand-gradient); border-color: #294d68; }
@media(max-width:1100px) {
 body[data-ty-page] .tyoc-in { grid-template-columns: minmax(0,1fr) minmax(240px,.85fr); }
 .tyoc-art { display: none; }
}
@media(max-width:640px) {
 body[data-ty-page] .tyoc-in { grid-template-columns: minmax(0,1fr); gap: 20px; }
 body[data-ty-page] .tyoc-panel { padding: 16px; }
 body[data-ty-page] .tyoc h2 { font-size: 30px; }
}

/* Homepage rhythm and shared discovery cards — November 2026. */
body[data-ty-page="index"] { --block-gap: 48px; }
body[data-ty-page="index"] :is(.tst,.jpb,.home-trio,.gl,.igb) { margin-top: 0; margin-bottom: 48px; padding-bottom: 0; }
body[data-ty-page="index"] :is(.tst-wrap,.gl-wrap) { background: transparent; border: 0; box-shadow: none; padding: 0; overflow: visible; }
body[data-ty-page="index"] :is(.tst-head,.gl-head) { text-align: left; margin-bottom: 24px; max-width: 660px; }
body[data-ty-page="index"] :is(.tst-head p,.gl-head p) { margin-left: 0; font-size: .95rem; }
body[data-ty-page="index"] :is(.tst-head h2,.gl-head h2) { font-size: clamp(1.7rem,3vw,2.25rem); margin: 12px 0 10px; }
body[data-ty-page] .tst-grid { max-width: none; gap: 20px; }
body[data-ty-page] .tst-card { border-radius: 18px; padding: 14px; gap: 12px; box-shadow: 0 5px 18px -12px #18372e30; }
body[data-ty-page] .tst-shot { aspect-ratio: auto; height: 230px; border-radius: 12px; flex-shrink: 0; }
body[data-ty-page] .tst-tag { margin: 0; font-size: 11px; padding: 5px 10px; }
body[data-ty-page] .tst-body { display: flex; flex-direction: column; flex: 1; padding: 0 4px 4px; }
body[data-ty-page] .tst-title { font-size: 1rem; line-height: 1.4; }
body[data-ty-page] .tst-cap { font-size: .85rem; line-height: 1.6; margin-bottom: 12px; }
body[data-ty-page] .tst-src { margin-top: auto; align-self: flex-start; background: transparent; padding-left: 0; }
body[data-ty-page] .jpb a { grid-template-columns: minmax(0,1fr) minmax(0,.85fr); background: #edf6f1; border: 1px solid #d5e8de; border-radius: 22px; box-shadow: none; }
body[data-ty-page] .jpb-tx { padding: clamp(24px,3vw,40px); gap: 14px; }
body[data-ty-page] .jpb h2 { font-size: clamp(1.5rem,2.7vw,2.1rem); line-height: 1.2; text-wrap: balance; }
body[data-ty-page] .jpb p { font-size: .9rem; }
body[data-ty-page] .jpb-im { height: 100%; min-height: 280px; gap: 10px; padding: 18px 18px 18px 0; }
body[data-ty-page] .jpb-im img { border-radius: 14px; }
body[data-ty-page] .jpb-go { border-radius: 10px; box-shadow: none; font-size: .85rem; padding: 12px 18px; background: #047857; }
body[data-ty-page="index"] .home-trio { gap: 20px; align-items: stretch; }
body[data-ty-page="index"] .home-trio :is(.rescue-card-inner,.vault-card-inner,.tip-banner) { width: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 24px; border-radius: 18px; min-height: 0; background: #fff; border: 1px solid #dfe8e3; box-shadow: none; transform: none; }
body[data-ty-page="index"] .home-trio :is(.rescue-text,.vault-body,.tip-content) { display: flex; flex-direction: column; width: 100%; flex: 1; }
body[data-ty-page="index"] .home-trio :is(.rescue-icon-wrap,.rescue-icon,.vault-icon,.tip-img-wrapper) { width: 44px; height: 44px; min-width: 44px; border-radius: 12px; font-size: 22px; box-shadow: none; }
body[data-ty-page="index"] .rescue-icon { background: #fff1f2; }
body[data-ty-page="index"] .vault-icon { background: #e7f6ee; }
body[data-ty-page="index"] :is(.rescue-pulse-ring,.tip-glow) { display: none; }
body[data-ty-page="index"] .home-trio :is(h3,.tip-text) { font-size: 1.1rem; line-height: 1.5; margin: 6px 0 8px; }
body[data-ty-page="index"] .home-trio :is(.rescue-text p,.vault-body p) { font-size: .875rem; line-height: 1.6; }
body[data-ty-page="index"] :is(.rescue-eyebrow,.vault-eyebrow,.tip-content h4) { font-size: 10px; line-height: 1.5; letter-spacing: .06em; }
body[data-ty-page="index"] .vault-chips { margin-top: 12px; padding-top: 0; gap: 6px; }
body[data-ty-page="index"] .vault-chips span { font-size: 10px; padding: 4px 7px; }
body[data-ty-page="index"] .home-trio :is(.rescue-cta,.vault-cta,.tip-link) { width: 100%; min-height: 44px; border-radius: 10px; padding: 11px 12px; font-size: .85rem; line-height: 1.4; box-shadow: none; margin-top: auto; text-align: center; justify-content: center; flex: 0 0 auto; }
body[data-ty-page="index"] .home-trio .tip-link { margin-top: auto; }
body[data-ty-page="index"] .home-trio .tip-content { gap: 8px; }
body[data-ty-page="index"] .rescue-cta { background: #fff1f2; color: #b91c1c; border: 1px solid #fecdd3; }
body[data-ty-page="index"] .vault-cta { background: #047857; color: #fff; }
body[data-ty-page="index"] .tip-link { background: #f0f5f3; color: #065f46; border: 1px solid #dfe8e3; }
body[data-ty-page="index"] .gl-grid.home { grid-auto-rows: 185px; gap: 14px; }
body[data-ty-page] .gl-it { border-radius: 16px; box-shadow: none; }
body[data-ty-page="index"] .igb-in { grid-template-columns: minmax(0,1fr) minmax(0,.85fr); padding: 28px; gap: 32px; border-radius: 22px; }
body[data-ty-page="index"] .igb-preview img { aspect-ratio: 16/10; max-height: 280px; }
body[data-ty-page="index"] .eco-section { max-width: var(--home-w,1280px); margin: 0 auto 48px; padding: 0 var(--home-gutter,16px); background: transparent; border: 0; }
body[data-ty-page="index"] .eco-title { margin-bottom: 24px; }
body[data-ty-page="index"] .eco-grid { gap: 20px; }
body[data-ty-page="index"] .eco-card { padding: 24px; border-radius: 18px; box-shadow: none; }
body[data-ty-page="index"] .cta-section { padding: 48px 24px; }
body[data-ty-page="index"] .cta-content { max-width: 760px; margin: auto; }
body[data-ty-page="index"] .cta-content p { margin: 16px auto 24px; }

/* Directory cards: consistent identity, metadata, pricing, then actions. */
body[data-ty-page] :is(.vet-card,.event-card,.bl-card,.jp-card) { border: 1px solid #dfe8e3; border-radius: 18px; background: #fff; box-shadow: 0 5px 18px -12px #18372e30; overflow-wrap: anywhere; }
body[data-ty-page] :is(.vet-card,.event-card,.bl-card,.jp-card):hover { border-color: #aacdbb; box-shadow: 0 12px 26px -18px #17473755; transform: translateY(-2px); }
body[data-ty-page] .vet-grid { gap: 20px; }
body[data-ty-page] .vet-card { padding: 24px; gap: 16px; }
body[data-ty-page] .vc-top { gap: 16px; margin-bottom: 0; align-items: flex-start; }
body[data-ty-page] .vc-img-box { width: 72px; height: 72px; border-radius: 16px; background: #edf6f1; border: 1px solid #d8e8de; position: relative; }
body[data-ty-page] .vc-img-box img { position: relative; z-index: 1; object-fit: cover; }
.vc-image-fallback { position: absolute; inset: 0; display: grid; place-items: center; color: #047857; font-size: 24px; font-weight: 700; }
body[data-ty-page] .vc-header { gap: 12px; flex-wrap: wrap; }
body[data-ty-page] .vc-name { font-size: 1.1rem; line-height: 1.35; white-space: normal; overflow: visible; text-overflow: clip; margin: 0; flex: 1 1 160px; }
body[data-ty-page] .vc-name button { font: inherit; font-weight: inherit; color: inherit; text-align: left; background: transparent; border: 0; padding: 0; cursor: pointer; }
body[data-ty-page] .vc-rating { padding: 3px 7px; border-radius: 7px; background: #f8f5ec; gap: 4px; flex-shrink: 0; }
body[data-ty-page] :is(.vc-star,.vc-rating-val) { font-size: .75rem; }
body[data-ty-page] .vc-spec { color: #047857; font-size: .825rem; line-height: 1.5; white-space: normal; margin-top: 5px; }
body[data-ty-page] .vc-org { font-size: .8rem; margin-top: 4px; white-space: normal; }
body[data-ty-page] .vc-meta-row { gap: 8px 14px; margin-top: 12px; font-size: .75rem; }
body[data-ty-page] .vc-loc-text { max-width: 100%; white-space: normal; }
body[data-ty-page] .vc-meta-item { min-width: 0; align-items: flex-start; }
body[data-ty-page] .vc-meta-item:first-child { flex-basis: 100%; }
body[data-ty-page] .vc-tags { gap: 6px; margin: 0; }
body[data-ty-page] .vc-tag { font-size: .7rem; padding: 5px 9px; line-height: 1.4; border-radius: 7px; }
body[data-ty-page] .vc-bottom { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; padding-top: 16px; border-top: 1px solid #e7eeea; }
body[data-ty-page] .vc-price-box { grid-column: 1/-1; width: 100%; margin-bottom: 2px; }
body[data-ty-page] .vc-price-val { font-size: 1.15rem; flex-wrap: wrap; gap: 6px; }
body[data-ty-page] .vc-price-lbl { font-size: .75rem; }
body[data-ty-page] .vc-dot { display: none; }
body[data-ty-page] .vc-bottom .btn-book-sm { display: none; }
body[data-ty-page] .vc-bottom :is(.btn-book-lg,.btn-consult-lg) { display: flex; width: 100%; min-width: 0; min-height: 44px; align-items: center; justify-content: center; padding: 10px 8px; font-size: .8rem; border-radius: 10px; line-height: 1.4; white-space: normal; box-shadow: none; }
body[data-ty-page] .vc-bottom .btn-book-lg { color: #065f46; background: #f0f9f4; border: 1px solid #c5dfd1; }
body[data-ty-page] .vc-bottom .btn-consult-lg { background: #047857; color: #fff; border: 1px solid #047857; }
body[data-ty-page] .event-card { padding: 24px; gap: 20px; align-items: stretch; }
body[data-ty-page] .event-top-row { gap: 18px; min-width: 0; }
body[data-ty-page] .event-date-block { background: #edf6f1; border: 1px solid #d5e8de; border-radius: 12px; min-width: 64px; width: 64px; padding: 10px; box-shadow: none; }
body[data-ty-page] .event-title { font-size: 1.2rem; line-height: 1.4; }
body[data-ty-page] .event-info { min-width: 0; }
body[data-ty-page] .event-meta { flex-wrap: wrap; gap: 8px 18px; font-size: .8rem; }
body[data-ty-page] .event-action { border-top: 1px solid #e7eeea; padding-top: 16px; display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 16px; }
body[data-ty-page] .event-action-btns { display: flex; gap: 10px; flex-wrap: wrap; }
body[data-ty-page] .event-action-btns button { min-height: 44px; border-radius: 10px; padding: 10px 16px; font-size: .85rem; }
body[data-ty-page] .event-action-btns .btn-join { background: #f0f9f4; color: #065f46; border: 1px solid #c5dfd1; }
body[data-ty-page] .bl-card { display: flex; flex-direction: column; }
body[data-ty-page] .bl-card > img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
@media(max-width:900px) {
 body[data-ty-page="index"] .home-trio { grid-template-columns: minmax(0,1fr); }
 body[data-ty-page="index"] .igb-in { grid-template-columns: minmax(0,1fr); }
 body[data-ty-page] .jpb a { grid-template-columns: minmax(0,1fr); }
 body[data-ty-page] .jpb-im { order: 0; min-height: 0; height: 220px; padding: 0 24px 24px; }
}
@media(max-width:640px) {
 body[data-ty-page="index"] :is(.tst,.jpb,.home-trio,.gl,.igb) { margin-bottom: 32px; }
 body[data-ty-page] .tst-grid { display: grid; grid-template-columns: minmax(0,1fr); overflow: visible; margin: 0; padding: 0; }
 body[data-ty-page] .tst-card { min-width: 0; }
 body[data-ty-page] .tst-shot { height: 180px; }
 body[data-ty-page="index"] .home-trio :is(.rescue-card-inner,.vault-card-inner,.tip-banner) { padding: 20px; }
 body[data-ty-page] .vet-card { padding: 18px; }
 body[data-ty-page] .vc-img-box { width: 56px; height: 56px; border-radius: 12px; }
 body[data-ty-page] .vc-name { font-size: 1rem; }
 body[data-ty-page] .vc-top { gap: 12px; }
 body[data-ty-page] .event-card { padding: 18px; }
 body[data-ty-page] .event-action { flex-direction: column; align-items: stretch; }
 body[data-ty-page] .event-action-btns button { flex: 1 1 110px; }
 body[data-ty-page="index"] .gl-grid.home { grid-auto-rows: 155px; }
}
/* Keep event dates legible and prevent the old entrance animation from fading cards on scroll. */
body[data-ty-page] .event-card { display: grid; grid-template-columns: minmax(0,1fr) auto; animation: none; opacity: 1; }
body[data-ty-page] .event-date-block { flex: 0 0 72px; width: 72px; min-width: 72px; align-self: flex-start; }
body[data-ty-page] .date-day { font-size: 1.75rem; line-height: 1.2; white-space: nowrap; overflow-wrap: normal; }
body[data-ty-page] .date-month { font-size: .7rem; }
body[data-ty-page] .event-action { width: 180px; border-top: 0; border-left: 1px solid #e7eeea; padding: 0 0 0 20px; flex-direction: column; justify-content: center; }
body[data-ty-page] .event-action-btns { width: 100%; }
body[data-ty-page] .event-action-btns button { width: 100%; }
body[data-ty-page="expert"] .card { border: 1px solid #dfe8e3; border-radius: 18px; padding: 22px; box-shadow: 0 5px 18px -12px #18372e30; min-width: 0; }
body[data-ty-page="expert"] .card-h { align-items: center; gap: 12px; margin-bottom: 16px; }
body[data-ty-page] :is(.info-card,.document-card,.booking-card,.summary-card,.usage-card,.plan-card,.entity-card,.stat-card) { border-radius: 18px; border-color: #dfe8e3; box-shadow: 0 5px 18px -12px #18372e30; min-width: 0; }
@media(max-width:640px) {
 body[data-ty-page] .event-card { grid-template-columns: minmax(0,1fr); }
 body[data-ty-page] .event-action { width: 100%; border-left: 0; border-top: 1px solid #e7eeea; padding: 16px 0 0; align-items: stretch; }
 body[data-ty-page] .event-action-btns { flex-wrap: nowrap; }
 body[data-ty-page] .event-action-btns button { min-width: 0; padding: 10px 8px; font-size: .8rem; }
}

/* Gallery: keep captions in normal flow so text and photos never compete. */
body[data-ty-page="gallery"] .gl-page .gl-wrap { padding:24px; overflow:visible; background:transparent; border:0; box-shadow:none; }
body[data-ty-page="gallery"] .gl-page .gl-grid { grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:auto; gap:24px; }
body[data-ty-page="gallery"] .gl-it { display:flex; flex-direction:column; text-align:left; border:1px solid #dfe8e3; border-radius:16px; background:white; box-shadow:0 4px 16px #0f153508; }
body[data-ty-page="gallery"] .gl-it img { height:240px; object-fit:contain; background:#edf3ef; }
body[data-ty-page="gallery"] .gl-cap { position:static; padding:16px; color:#0f172a; background:none; flex:1; }
body[data-ty-page="gallery"] .gl-cap small { display:block; color:#475569; line-height:1.5; }
body[data-ty-page="gallery"] .gl-filters { justify-content:flex-start; padding:4px; gap:8px; }
body[data-ty-page="gallery"] .gl-ig-card { border:0; background:#eaf5ef; padding:24px; border-radius:16px; box-shadow:none; }
body[data-ty-page="gallery"] .title-section { margin-bottom:24px; }
body[data-ty-page="gallery"] .page-title { font-size:clamp(28px,4vw,44px); }
body[data-ty-page="gallery"] .content-container { max-width:1200px; }
/* Pricing hierarchy, wrapping and consistent service surfaces. */
body[data-ty-page="expert"] section.blk { margin-top:48px; }
body[data-ty-page="expert"] h2.h { text-transform:none; font-size:clamp(26px,3vw,34px); line-height:1.2; letter-spacing:-.03em; margin-bottom:20px; }
body[data-ty-page="expert"] .cards { align-items:start; gap:20px; }
body[data-ty-page="expert"] .card { padding:24px; border-radius:18px; border-top:3px solid #b8dfcc; box-shadow:0 6px 24px #0f153506; }
body[data-ty-page="expert"] .card-h { padding-bottom:16px; border-bottom:1px solid #e8eeeb; }
body[data-ty-page="expert"] .card-t { font-size:18px; font-weight:750; }
body[data-ty-page="expert"] .chip { border-radius:8px; padding:7px 10px; font-weight:550; line-height:1.45; max-width:100%; overflow-wrap:anywhere; }
body[data-ty-page="expert"] .chip:is(.gold,.grey) { background:#f1f6f3; color:#365448; }
body[data-ty-page="expert"] .price-big { font-size:30px; display:flex; flex-wrap:wrap; align-items:baseline; gap:6px; }
body[data-ty-page="expert"] .note { font-weight:400; }
body[data-ty-page="expert"] .tier { flex-wrap:wrap; border-radius:10px; }
body[data-ty-page] .vc-offer { align-items:center; gap:12px; margin:16px 0 0; padding:12px; background:#f0f8f4; color:#245e46; border:1px solid #d5eade; border-radius:10px; font-size:13px; line-height:1.4; }
body[data-ty-page] .vc-offer-saving { flex-shrink:0; font-weight:750; border-right:1px solid #c2dfd0; padding-right:12px; }
body[data-ty-page] .vc-offer small { display:block; color:#52685c; font-size:11px; margin-top:2px; }
/* Compact closing invitation with a quieter footer transition. */
body[data-ty-page="index"] .cta-section { max-width:1200px; margin:48px auto; border:0; border-radius:22px; padding:36px; }
body[data-ty-page="index"] .cta-content { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:12px 32px; text-align:left; max-width:none; }
body[data-ty-page="index"] .cta-content h2 { font-size:30px; line-height:1.2; margin:0; }
body[data-ty-page="index"] .cta-content p { grid-column:1; font-size:15px; line-height:1.6; margin:0; max-width:640px; }
body[data-ty-page="index"] .cta-buttons { grid-column:2; grid-row:1 / 3; margin:0; }
body[data-ty-page="index"] .cta-buttons a { padding:14px 22px; font-size:15px; border-radius:10px; }
body[data-ty-page] .ty-footer { padding:48px 0 24px; background:#0a302b; }
body[data-ty-page] .ty-f-grid { gap:28px; margin-bottom:32px; }
body[data-ty-page] .ty-f-grid > * { min-width:0; }
body[data-ty-page] .ty-brand-desc, body[data-ty-page] .ty-news-desc { font-size:14px; line-height:1.7; }
body[data-ty-page] .ty-bottom-bar { padding-top:20px; gap:16px; }
body[data-ty-page] .ty-legal-links { flex-wrap:wrap; justify-content:center; border:0; background:transparent; padding:0; border-radius:0; }
body[data-ty-page] .ty-legal-link { font-size:12px; }
body[data-ty-page] .ty-faint-paw { display:none; }
body[data-ty-page] .tyo-in { gap:24px; }
body[data-ty-page] .tyo-message { flex:0 1 auto; }
body[data-ty-page] .tyo-details { margin-left:auto; }
html { scroll-padding-top:calc(var(--tyo-h,80px) + 100px); }
html[data-ty-festival="diwali"] .tyo { border-bottom:2px solid #dab577; background-image:radial-gradient(circle at 12% 15%,#efc87526 0,transparent 24%),linear-gradient(135deg,#0f1535 0%,#12345a 60%,#00A36C 160%); }
html[data-ty-festival="diwali"] .tyo-name::before { content:'✦ '; color:#f1cd89; }
html[data-ty-festival="diwali"] .cta-section::after { content:'✦'; position:absolute; right:18px; top:10px; color:#e8c078; font-size:24px; pointer-events:none; }
@media(max-width:900px) {
 body[data-ty-page="gallery"] .gl-page .gl-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body[data-ty-page="index"] .cta-section { margin:32px 16px; }
 body[data-ty-page="index"] .cta-content { display:flex; flex-direction:column; align-items:flex-start; }
 body[data-ty-page="index"] .cta-buttons { margin-top:12px; }
}
@media(max-width:560px) {
 body[data-ty-page="gallery"] .gl-page .gl-wrap { padding:0; }
 body[data-ty-page="gallery"] .gl-page .gl-grid { grid-template-columns:1fr; gap:16px; }
 body[data-ty-page="gallery"] .gl-it img { height:240px; }
 body[data-ty-page="gallery"] .gl-chip { padding:9px 12px; font-size:12px; }
 body[data-ty-page="expert"] .card { padding:18px; }
 body[data-ty-page="index"] .cta-section { padding:26px 22px; }
 body[data-ty-page="index"] .cta-content h2 { font-size:25px; }
 body[data-ty-page] .ty-footer { padding-bottom:96px; }
 body[data-ty-page] .tyo-in { gap:8px; }
}
body[data-ty-page="expert"] .title { text-transform:none; font-size:clamp(28px,3.4vw,44px); line-height:1.12; overflow-wrap:normal; word-break:normal; }

/* All service detail pages share the same reading and booking hierarchy. */
body:is([data-ty-page="expert"],[data-ty-page="event"]) .wrap { max-width:1160px; padding-inline:24px; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .hero { gap:32px; padding:28px; background:white; border:1px solid #dfe8e3; border-radius:22px; align-items:start; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .hero > * { min-width:0; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .title { font-size:clamp(28px,3.2vw,42px); font-weight:800; line-height:1.15; letter-spacing:-.035em; text-transform:none; overflow-wrap:anywhere; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .lead { font-size:16px; line-height:1.65; margin:16px 0 22px; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .facts { gap:12px; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .fact { gap:12px; min-width:0; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .fact > div { min-width:0; overflow-wrap:anywhere; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .fact-ic { width:38px; height:38px; border-radius:10px; font-size:18px; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .fact-main { font-size:15px; line-height:1.5; font-weight:650; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .fact-sub { font-size:13px; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) :is(.photo,.banner-box) { border-radius:16px; box-shadow:none; background:#f0f5f2; align-self:center; }
body[data-ty-page="expert"] .photo img { object-fit:contain; }
body[data-ty-page="event"] .banner-box img { max-height:480px; object-fit:contain; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .btn { min-height:44px; padding:12px 18px; border-radius:10px; font-size:14px; text-align:center; line-height:1.4; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .btn-dark { background:#047857; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .btn-light { border:1px solid #d7e5dc; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .cta-row { gap:10px; margin-top:22px; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) section.blk { margin-top:40px; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) h2.h { font-size:clamp(24px,3vw,32px); line-height:1.2; text-transform:none; font-weight:800; letter-spacing:-.03em; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .about { font-size:15px; line-height:1.75; }
body:is([data-ty-page="expert"],[data-ty-page="event"]) .where { padding:20px; border-radius:16px; background:#f0f7f3; border:1px solid #dcebe2; }
body[data-ty-page="expert"] .gallery figure { aspect-ratio:auto; border:1px solid #dfe8e3; border-radius:14px; background:white; }
body[data-ty-page="expert"] .gallery img { height:210px; object-fit:contain; background:#edf3ef; }
body[data-ty-page="expert"] .gallery figcaption { position:static; padding:12px; background:none; color:#475569; font-weight:500; line-height:1.5; }
body[data-ty-page="expert"] .book-strip { padding:24px; border-radius:18px; background:var(--ty-brand-gradient); }
body[data-ty-page="expert"] .book-strip b { font-size:22px; }
body[data-ty-page="expert"] .book-strip span { font-size:14px; }
body[data-ty-page="event"] .card { background:white; border:1px solid #dfe8e3; border-top:3px solid #b8dfcc; border-radius:18px; padding:22px; }
body[data-ty-page="event"] .card-ic { width:40px; height:40px; border-radius:10px; margin-bottom:14px; }
body[data-ty-page="event"] .card-t { font-size:18px; font-weight:750; }
body[data-ty-page="event"] .reg { gap:28px; }
body[data-ty-page="event"] :is(.form-card,.partners-box) { border-radius:18px; box-shadow:0 6px 24px #0f153508; }
body[data-ty-page="event"] .form-head { background:var(--ty-brand-gradient); padding:22px; }
body[data-ty-page="event"] .form-head b { font-size:22px; text-transform:none; }
body[data-ty-page="event"] .form-body { padding:22px; }
body[data-ty-page="event"] .submit { background:#047857; border-radius:10px; text-transform:none; min-height:48px; padding:12px; }
body[data-ty-page="event"] .partners-box { padding:22px; }
@media(max-width:700px) {
 body:is([data-ty-page="expert"],[data-ty-page="event"]) .wrap { padding-inline:16px; }
 body:is([data-ty-page="expert"],[data-ty-page="event"]) .hero { grid-template-columns:minmax(0,1fr); padding:18px; gap:22px; }
 body:is([data-ty-page="expert"],[data-ty-page="event"]) :is(.photo,.banner-box) { order:-1; width:100%; }
 body:is([data-ty-page="expert"],[data-ty-page="event"]) .cta-row .btn { flex:1 1 100%; }
 body[data-ty-page="event"] .reg { grid-template-columns:minmax(0,1fr); }
 body[data-ty-page="event"] .two { grid-template-columns:minmax(0,1fr); }
 body:is([data-ty-page="expert"],[data-ty-page="event"]) .where .btn { width:100%; }
}

/* Account workspaces: one scale for navigation, panels and dense operational data. */
body:is([data-ty-page="admin-dashboard"],[data-ty-page="expert-dashboard"],[data-ty-page="profile"],[data-ty-page="ngo-dashboard"]) {
  --indigo-50:#ecfdf5; --indigo-100:#d1fae5; --indigo-500:#00a36c; --indigo-600:#047857; --indigo-700:#065f46;
  --shadow-sm:0 3px 14px -10px #0f153530; --shadow-md:0 10px 28px -20px #0f153540;
}
body[data-ty-page="admin-dashboard"] #main { min-width:0; padding:clamp(16px,3vw,36px); background:#f8fafc; }
body[data-ty-page="admin-dashboard"] .content-wrap { max-width:1200px; }
body[data-ty-page="admin-dashboard"] .sec-header { margin-bottom:24px; }
body[data-ty-page="admin-dashboard"] .sec-title { font-size:clamp(24px,2.6vw,34px); line-height:1.2; font-weight:800; }
body[data-ty-page="admin-dashboard"] .sec-subtitle { font-size:14px; line-height:1.6; max-width:65ch; }
body[data-ty-page="admin-dashboard"] :is(.stat-card,.table-wrap,.profile-card,.empty-state) { border-radius:18px; border:1px solid #dfe8e4; box-shadow:var(--ty-shadow); }
body[data-ty-page="admin-dashboard"] .stat-card { padding:20px; }
body[data-ty-page="admin-dashboard"] .stats-grid { gap:16px; margin-bottom:24px; }
body[data-ty-page="admin-dashboard"] .stat-icon { width:42px; height:42px; border-radius:12px; font-size:20px; }
body[data-ty-page="admin-dashboard"] .card-grid { gap:20px; }
body[data-ty-page="admin-dashboard"] .table-wrap { overflow-x:auto; }
body[data-ty-page="admin-dashboard"] :is(th,td) { padding:14px 16px; font-size:13px; line-height:1.5; }
body[data-ty-page="admin-dashboard"] th { background:#f0f7f3; color:#475569; }
body[data-ty-page="admin-dashboard"] :is(.adm-in,.form-input,.plan-form-input) { min-height:44px; border:1px solid #d4e2dc; border-radius:10px; background:#fff; max-width:100%; }
body[data-ty-page="admin-dashboard"] :is(.adm-btn,.bc-btn,.lifecycle-btn) { min-height:40px; border-radius:10px; }
body[data-ty-page="admin-dashboard"] .sb-footer { background:#064e3b; }
body[data-ty-page="admin-dashboard"] .sb-logout { background:#ffffff0a; color:#d1fae5; border-color:#ffffff30; }
body[data-ty-page="admin-dashboard"] .sb-btn { min-height:44px; }
body[data-ty-page="admin-dashboard"] .sb-btn .sb-label { margin-top:0; font-size:13px; }
body[data-ty-page="admin-dashboard"] .modal-title { font-size:22px; }
body:is([data-ty-page="profile"],[data-ty-page="expert-dashboard"]) :is(.data-card,.form-card,.qs-card,.completion-card,.app-card,.error-card) { border-radius:18px; border:1px solid #dfe8e4; box-shadow:var(--ty-shadow); }
body:is([data-ty-page="profile"],[data-ty-page="expert-dashboard"]) :is(.dash-title,.ph-title) { font-size:clamp(25px,3vw,36px); text-transform:none; line-height:1.2; letter-spacing:-.03em; }
body:is([data-ty-page="profile"],[data-ty-page="expert-dashboard"]) :is(.dash-subtitle,.ph-subtitle) { font-size:14px; line-height:1.65; }
body:is([data-ty-page="profile"],[data-ty-page="expert-dashboard"]) :is(.dc-title,.fch-title) { font-size:18px; line-height:1.4; }
body:is([data-ty-page="profile"],[data-ty-page="expert-dashboard"]) :is(.fm-input,.form-control) { border:1px solid #d4e2dc; border-radius:10px; min-height:46px; background:#fafdfb; font-size:15px; max-width:100%; }
body:is([data-ty-page="profile"],[data-ty-page="expert-dashboard"]) :is(.fm-label,.form-label) { color:#334b40; font-size:13px; line-height:1.5; margin-bottom:8px; }
body:is([data-ty-page="profile"],[data-ty-page="expert-dashboard"]) :is(.modal-content,.m-body) { max-width:100%; }
body:is([data-ty-page="profile"],[data-ty-page="expert-dashboard"]) :is(.btn-submit,.btn-outline,.btn-m-submit,.btn-m-cancel,.btn-retry) { min-height:44px; border-radius:12px; font-size:14px; }
body[data-ty-page="expert-dashboard"] :is(.fc-header,.fc-body,.fc-footer) { padding:clamp(16px,2vw,24px); }
body[data-ty-page="expert-dashboard"] .sidebar { background:#064e3b; color:#d1fae5; }
body[data-ty-page="expert-dashboard"] .sidebar :is(.sb-btn,.sb-clinic-name,.sb-title) { color:#e2f4eb; }
body[data-ty-page="expert-dashboard"] .sidebar .sb-btn.active { background:#ecfdf5; color:#065f46; box-shadow:none; }
body[data-ty-page="expert-dashboard"] .sidebar .sb-btn:hover { background:#ffffff18; }
body[data-ty-page="expert-dashboard"] .sidebar .sb-btn.active:hover { background:#d1fae5; }
body[data-ty-page="profile"] .data-card { padding:clamp(18px,2.4vw,28px); }
body[data-ty-page="profile"] :is(.ib-val,.cb-title) { overflow-wrap:anywhere; }
body[data-ty-page="profile"] .tabs-container { gap:8px; padding:6px; border-radius:14px; }
body[data-ty-page="profile"] .table-wrapper { overflow-x:auto; }
body[data-ty-page="ngo-dashboard"] main { min-width:0; }
body[data-ty-page="ngo-dashboard"] main :is(.rounded-3xl,.rounded-2xl) { border-radius:18px; box-shadow:var(--ty-shadow); }
body[data-ty-page="ngo-dashboard"] main h1 { font-size:clamp(25px,3vw,36px); line-height:1.2; }
body[data-ty-page="ngo-dashboard"] :is(input,select,textarea) { border-radius:10px; }
body[data-ty-page="ngo-dashboard"] [id^="tab-btn-"] { min-height:44px; border-radius:12px; }
body[data-ty-page="ngo-dashboard"] .bg-teal-600 { background-color:#047857; }
.ty-workspace-error { max-width:560px; margin:32px auto; padding:28px; border:1px solid #e2e8f0; border-radius:18px; background:#fff; }
.ty-workspace-error h2 { margin:0 0 12px; color:#0f1535; font-size:24px; }
.ty-workspace-error p { color:#475569; line-height:1.6; margin-bottom:20px; }
/* Informational pages retain their own content hierarchy within the shared scale. */
body:is([data-ty-page="about"],[data-ty-page="contact"],[data-ty-page="faq"],[data-ty-page="privacy"],[data-ty-page="terms"],[data-ty-page="refund-policy"],[data-ty-page="shipping-policy"],[data-ty-page="mou-experts"],[data-ty-page="mou-ngos"],[data-ty-page="breeder-guidelines"]) :is(.document-card,.pc-card,.info-card,.faq-card,.service-card,.party-card,.role-card-full,.com-card,.support-card) { border-radius:18px; box-shadow:var(--ty-shadow); border:1px solid #dfe8e4; }
body:is([data-ty-page="privacy"],[data-ty-page="terms"],[data-ty-page="refund-policy"],[data-ty-page="shipping-policy"],[data-ty-page="mou-experts"],[data-ty-page="mou-ngos"],[data-ty-page="breeder-guidelines"]) .document-card { padding:clamp(20px,4vw,48px); }
body[data-ty-page="contact"] :is(.form-control,.input-control) { min-height:48px; border-radius:12px; border-color:#d4e2dc; }
body[data-ty-page="faq"] .faq-btn { min-height:56px; padding:18px 20px; gap:16px; text-align:left; }
body[data-ty-page="faq"] .faq-q { line-height:1.5; }
body[data-ty-page="faq"] .faq-chevron { flex-shrink:0; }
body[data-ty-page="pay"] main { padding:clamp(24px,4vw,48px) 16px 48px; }
body[data-ty-page="pay"] .card { border-radius:18px; padding:clamp(20px,3vw,28px); box-shadow:var(--ty-shadow); }
body[data-ty-page="pay"] h1 { font-size:clamp(25px,3vw,34px); letter-spacing:-.03em; }
body[data-ty-page="pay"] :is(.btn,.upi-btn) { border-radius:12px; min-height:48px; box-shadow:none; line-height:1.4; }
body[data-ty-page="pay"] .qr-box { border-width:1px; border-style:solid; border-radius:14px; }
body[data-ty-page="pay"] .wa-msg { background:#f5faf7; border-color:#d4e2dc; }
body[data-ty-page="pay"] :is(.for,.hint,.qr-hint) { line-height:1.6; }
@media(max-width:767px) {
  body[data-ty-page="admin-dashboard"] #main { height:auto; min-height:70vh; overflow:visible; }
  body[data-ty-page="admin-dashboard"] .stat-card { padding:14px; }
  body[data-ty-page="admin-dashboard"] #sb-nav { padding:10px 12px; }
  body[data-ty-page="admin-dashboard"] .sb-mobile-logout { margin-bottom:0; }
  body[data-ty-page="expert-dashboard"] .completion-card { gap:16px; }
  body:is([data-ty-page="profile"],[data-ty-page="expert-dashboard"]) :is(.fm-grid,.form-grid) { gap:18px; }
  body[data-ty-page="pay"] .top-in { flex-wrap:wrap; }
}
/* Operational cards must expose full contact and service information. */
body[data-ty-page="admin-dashboard"] .entity-card { padding:20px; gap:18px; border-radius:18px; }
body[data-ty-page="admin-dashboard"] .entity-details { padding:14px; gap:12px; }
body[data-ty-page="admin-dashboard"] :is(.entity-name,.entity-detail .value,.doc-name) { white-space:normal; overflow-wrap:anywhere; line-height:1.5; }
body[data-ty-page="admin-dashboard"] .entity-detail { align-items:flex-start; }
body[data-ty-page="admin-dashboard"] .entity-footer { flex-wrap:wrap; gap:12px; }
body[data-ty-page="expert-dashboard"] .sidebar .sb-btn { background:transparent; }
body[data-ty-page="expert-dashboard"] .sidebar .sb-btn.active { background:#ecfdf5; color:#065f46; }
body[data-ty-page="expert-dashboard"] .sidebar .sb-name { color:#ecfdf5; }
body[data-ty-page="expert-dashboard"] .sb-footer { background:#064e3b; border-color:#ffffff20; }
body[data-ty-page="expert-dashboard"] .booking-card { align-items:flex-start; gap:20px; }
body[data-ty-page="expert-dashboard"] .bc-left { align-items:flex-start; }
body[data-ty-page="expert-dashboard"] :is(.bc-pet,.bc-owner,.bc-meta,.scg-val) { white-space:normal; overflow-wrap:anywhere; line-height:1.5; }
body[data-ty-page="expert-dashboard"] .bc-status { font-size:10px; line-height:1.5; padding:4px 8px; margin-bottom:8px; }
body[data-ty-page="expert-dashboard"] .booking-card button { min-height:40px; }
body[data-ty-page="admin-dashboard"] #adm-modal-body > h2 { padding-right:36px; }
@media(max-width:767px) {
  body[data-ty-page="expert-dashboard"] .booking-card { flex-direction:column; align-items:stretch; }
  body[data-ty-page="expert-dashboard"] .booking-card > :last-child:not(.bc-left) { width:100%; }
  body[data-ty-page="expert-dashboard"] .booking-card > :last-child > button { flex:1; }
  body[data-ty-page="admin-dashboard"] .adm-kv { grid-template-columns:minmax(65px,1fr) minmax(0,2fr); gap:12px; }
}

/* Mobile reading scale: keep copy readable and controls usable on touch screens. */
@media (max-width:767px) {
  html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
  body[data-ty-page] { font-size:16px; line-height:1.55; }
  body[data-ty-page] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),select,textarea) { font-size:16px !important; }
  body[data-ty-page] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),select) { min-height:48px; }
  body[data-ty-page] :is(button,.ty-btn,.ty-btn-login,.ty-btn-signup,.gl-filter,.btn-support) { min-height:44px; }
  body[data-ty-page] :is(.ty-footer p,.ty-footer a,.t-desc,.t-link,.doc-text,.section-desc,.faq-content-inner,.pc-desc,.ic-desc) { font-size:15px; line-height:1.7; }
  body[data-ty-page] :is(.tyo-name,.tyo-sub,.tyo-count,.tyo-copy,.tyo-copy span,.tyo-go a,.tyo-go a span) { font-size:12px; line-height:1.5; }
  body[data-ty-page] .tyo-code-value { font-size:14px; }
  body[data-ty-page] .tyo-in { grid-template-columns:minmax(0,1fr) auto 44px; gap:8px; }
  body[data-ty-page] .tyo-x { width:44px; height:44px; margin-top:0; }
  body[data-ty-page] .tyo-go a { min-height:36px; }
  body[data-ty-page] :is(.tst-eyebrow,.tst-tag,.tst-src,.jpb-eb,.rescue-eyebrow,.vault-eyebrow,.gl-eyebrow,.gl-tag,.igb-eyebrow,.jp-kicker,.bl-chip,.bl-card .ct,.tyoc-art-note,.tyoc-end,.tyoc-code small,.vc-offer small,.loc-badge,.vc-tag,.pc-label,.fin-badge,.vs-bottom-dark,.vs-bottom,.ethics-badge-strict,.doc-status-label,.doc-tag-active,.doc-tag-version) { font-size:12px; line-height:1.5; letter-spacing:.02em; }
  body[data-ty-page="index"] :is(.vault-chips span,.tip-content h4) { font-size:12px; line-height:1.5; }
  body[data-ty-page] :is(.ty-helpline small,.help-float small) { font-size:12px; }
  body[data-ty-page] :is(.vc-meta,.vc-spec,.vc-org,.vc-bottom,.vc-offer,.gl-item p,.gl-card p,.tst-card p,.jpb-copy p) { font-size:14px; line-height:1.6; }
  body[data-ty-page] :is(.vc-bottom .btn-book-lg,.vc-bottom .btn-consult-lg,.vc-bottom .btn-wa) { font-size:14px; min-height:46px; }
  body[data-ty-page] :is(.form-label,.fm-label,.fg-label,.input-label,.role-lbl) { font-size:14px; line-height:1.5; }
  body[data-ty-page] :is(.page-title,.hero-title,.hero h1,.jp-hero h1,.bl-hero h1,.dash-title,.ph-title,.sec-title) { font-size:clamp(26px,7.5vw,32px); line-height:1.18; letter-spacing:-.025em; }
  body[data-ty-page] :is(.page-subtitle,.hero-subtitle,.dash-subtitle,.ph-subtitle,.sec-subtitle) { font-size:15px; line-height:1.65; }
  body[data-ty-page="index"] :is(.tst-head h2,.gl-head h2,.jpb h2,.eco-section h2,.cta-content h2,.igb-copy h2) { font-size:26px; line-height:1.25; }
  body[data-ty-page="admin-dashboard"] :is(.stat-label,.stat-tag,.info-label,.admin-id-role,.entity-reg,.sb-badge,.status-pill) { font-size:12px; line-height:1.5; letter-spacing:.03em; }
  body[data-ty-page="admin-dashboard"] :is(.stat-card,.entity-card) { padding:16px; }
  body[data-ty-page="admin-dashboard"] .stats-grid { gap:12px; }
  body[data-ty-page="admin-dashboard"] :is(th,td,.entity-detail) { font-size:14px; }
  body[data-ty-page="admin-dashboard"] :is(.lifecycle-btn,.adm-btn,.sb-btn .sb-label) { font-size:13px; }
  body[data-ty-page="expert-dashboard"] :is(.sb-label-short,.qs-lbl,.scg-lbl,.bc-status,.cc-status) { font-size:12px; line-height:1.5; }
  body[data-ty-page="expert-dashboard"] :is(.bc-owner,.bc-meta,.scg-val,.sch-sub,.cc-desc) { font-size:14px; line-height:1.6; }
  body[data-ty-page="expert-dashboard"] .sidebar .sb-btn { padding:8px 12px; min-width:64px; }
  body[data-ty-page="profile"] :is(.ib-lbl,.vh-label,.tab-btn) { font-size:12px; line-height:1.5; }
  body[data-ty-page="profile"] :is(.ib-val,.cb-desc,.fm-check-txt) { font-size:14px; line-height:1.6; }
  body[data-ty-page="ngo-dashboard"] :is([class~="text-[9px]"],[class~="text-[10px]"],[class~="text-[11px]"]) { font-size:12px; line-height:1.5; }
  body[data-ty-page="ngo-dashboard"] .text-gray-400 { color:#64748b; }
  body[data-ty-page="pay"] :is(.hint,.apps-lbl,.qr-hint,.secure) { font-size:12px; line-height:1.6; }
  body[data-ty-page="pay"] :is(.for,.wa-msg,.howto-list) { font-size:14px; line-height:1.65; }
  body[data-ty-page="pay"] #qr { padding:12px; background:#fff; border-radius:10px; }
  body[data-ty-page] :is(.table-wrap,.table-wrapper) { overscroll-behavior-x:contain; }
}
@media(max-width:767px) {
  body[data-ty-page] :is(.jp-chip small,.ty-emergency-label small) { font-size:12px; }
  body[data-ty-page="expert-dashboard"] .sb-badge { font-size:12px; min-width:20px; min-height:20px; }
  body[data-ty-page="expert-dashboard"] :is(.scid-spec,.scid-clinic) { font-size:14px; line-height:1.6; }
  body[data-ty-page="pay"] .qr-box { padding:12px; background:#fff; }
  body[data-ty-page="pay"] #qr { max-width:100%; }
  body[data-ty-page="pay"] #qr :is(img,canvas) { max-width:100%; height:auto; }
}
@media(max-width:480px) {
  body[data-ty-page] .ty-emergency-call { width:48px; height:48px; min-height:48px; padding:0; justify-content:center; left:12px; bottom:calc(12px + env(safe-area-inset-bottom)); animation:none; box-shadow:0 4px 14px #991b1b30; }
  body[data-ty-page] .ty-emergency-call .ty-emergency-label { display:none; }
}

/* Form rhythm: one label gap, one field gap, and space between sections. */
body[data-ty-page] :is(.form-group,.fm-group,.input-group) { display:flex; flex-direction:column; align-items:stretch; min-width:0; gap:10px; }
body[data-ty-page] :is(label.form-label,label.fm-label,label.fg-label,label.input-label) { display:block; margin-bottom:10px; line-height:1.5; }
body[data-ty-page] :is(.form-group,.fm-group,.input-group) > :is(label.form-label,label.fm-label,label.fg-label,label.input-label) { margin-bottom:0; }
body[data-ty-page] :is(.form-label-row) { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; column-gap:16px; row-gap:8px; margin-bottom:0; }
body[data-ty-page] .form-label-row > label.form-label { margin-bottom:0; }
body[data-ty-page] :is(.form-grid,.fm-grid,.form-grid2,.form-grid3,.form-grid4,.fm-grid-2,.form-row) { row-gap:24px; column-gap:24px; }
body[data-ty-page] :is(.form-grid,.form-row) > .form-group { margin-bottom:0; }
body[data-ty-page] :is(.form-group,.fm-group,.input-group) > .ty-err { margin-top:0; }
body[data-ty-page="expert-dashboard"] .form-grid { margin-bottom:24px; }
body[data-ty-page="admin-dashboard"] #blog-form { gap:24px !important; }
body[data-ty-page="contact"] :is(.form-group,.form-row) { margin-bottom:24px; }
body[data-ty-page="contact"] .form-row > .form-group { margin-bottom:0; }
body[data-ty-page="pay"] .field { margin-bottom:24px; }
body[data-ty-page="pay"] .field > label:not(.drop) { margin-bottom:10px; }
@media(max-width:767px) {
  body[data-ty-page] :is(.form-grid,.fm-grid,.form-grid2,.form-grid3,.form-grid4,.fm-grid-2,.form-row) { column-gap:20px; }
}
body[data-ty-page="event"] .pdc-label { margin-bottom:10px; }
body[data-ty-page="event"] .pdc-field { margin-bottom:20px; }
body[data-ty-page="ngo-dashboard"] form label:not(:has(input[type="checkbox"],input[type="radio"])) { display:block; margin-bottom:10px; }
body[data-ty-page="expert-dashboard"] .gpk-sizes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
body[data-ty-page="expert-dashboard"] .gpk-sizes label { display:flex; flex-direction:column; gap:10px; min-width:0; line-height:1.5; }
body[data-ty-page="expert-dashboard"] .gpk-sizes label span { font-size:13px; }
body[data-ty-page="ngo-dashboard"] #edit-profile-modal label { margin-bottom:10px; }
body[data-ty-page="ngo-dashboard"] #edit-profile-modal .space-y-4 > div + div { margin-top:24px; }
@media(max-width:560px) { body[data-ty-page="expert-dashboard"] .gpk-sizes { grid-template-columns:minmax(0,1fr); gap:24px; } }
body[data-ty-page="event"] .pdc-label { font-size:13px; line-height:1.5; }
