/* Interior pages share the global Pack And Go tokens and remain independent of legacy theme plugins. */
.pg-interior { color: var(--pg-ink, #252839); background: #fff; }
.pg-sitemap-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 290px), 1fr)); gap: 40px 64px; padding-top: 56px; padding-bottom: 72px; }
.pg-sitemap-grid::before, .pg-sitemap-grid::after { content: none; }
.pg-sitemap-grid .iconList a { display: block; padding: 4px 0; text-underline-offset: 4px; }
.pg-interior .container { max-width: 1240px; }
.pg-interior .page-header { margin: 0; padding: 48px 0 56px; border: 0; background: var(--pg-paper, #f6f5f1); }
.pg-interior .page-header h1 { color: var(--pg-navy, #262262); font-size: clamp(2.2rem, 4vw, 3.8rem); line-height: 1.08; letter-spacing: -.045em; font-weight: 650; margin: 0 0 26px; max-width: 21ch; }
.pg-interior h2 { color: var(--pg-navy, #262262); font-size: clamp(1.65rem, 2.8vw, 2.5rem); line-height: 1.2; letter-spacing: -.025em; margin: 0 0 24px; }
.pg-interior h3 { color: var(--pg-navy, #262262); font-size: 1.3rem; line-height: 1.35; margin: 0 0 18px; }
.pg-interior p, .pg-interior li { font-size: 1.025rem; line-height: 1.75; }
.pg-interior p { margin: 0 0 22px; }
.pg-interior .orange { color: inherit; }
.pg-interior .blue { color: var(--pg-navy, #262262); }
.pg-interior .pg-eyebrow { font-size: .72rem; font-weight: 750; letter-spacing: .14em; line-height: 1.5; color: var(--pg-muted, #626471); margin: 0 0 20px; }
.pg-breadcrumb { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; font-size: .75rem; line-height: 1.5; color: var(--pg-muted, #626471); margin: 0 0 38px; }
.pg-breadcrumb a { color: var(--pg-navy, #262262); text-underline-offset: 3px; }
.pg-breadcrumb [aria-hidden] { color: #9c9ca7; }
.pg-service-grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr); gap: clamp(30px, 5vw, 80px); align-items: center; }
.pg-service-copy { padding: 14px 0; }
.pg-service-copy p { color: #4a4b59; }
.pg-service-quote { margin-top: 8px; }
.pg-service-visual { margin: 0; width: 100%; height: 420px; background: #fff; overflow: hidden; position: relative; }
.pg-journey-teaser { padding: clamp(50px, 6vw, 90px) 0; background: #f0efeb; border-block: 1px solid var(--pg-line); }
.pg-journey-teaser > .container { display: flex; align-items: center; justify-content: space-between; gap: 36px; flex-wrap: wrap; }
.pg-journey-teaser h2 { max-width: 690px; margin: 14px 0 20px; font-size: clamp(30px, 3.5vw, 48px); letter-spacing: -.05em; }
.pg-journey-teaser p:not(.pg-eyebrow) { max-width: 600px; margin-bottom: 0; color: var(--pg-muted); }
.pg-service-visual::after { content: ''; position: absolute; left: 0; bottom: 0; width: 64px; height: 5px; background: var(--pg-orange, #f1592a); }
.pg-service-visual img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.pg-service-visual.pg-operation-people img { object-position: center 30%; }
.pg-service-visual.pg-operation-crates img { object-position: center 58%; }
.pg-service-visual img[src="images/mascotas/mascotas3.jpg"] { object-position: center 20%; }
.pg-interior .iconList { padding: 0; margin: 24px 0; list-style: none; }
.pg-interior .iconList li { padding: 10px 0 10px 20px; border-bottom: 1px solid var(--pg-line, #dedee5); position: relative; }
.pg-interior .iconList li::before { content: ''; position: absolute; width: 5px; height: 5px; background: var(--pg-orange, #f1592a); top: 22px; left: 0; }
.pg-interior #content > section { padding-top: 64px; padding-bottom: 64px; }
.pg-interior #content > section + section { border-top: 1px solid var(--pg-line, #dedee5); }
.pg-interior #content .row > [class*='col-'] { margin-bottom: 20px; }
.pg-interior .span12 { width: 100%; padding: 0 15px; }
.pg-interior .span12 > [class*='col-'] { padding-left: 0; }
.pg-interior .img-responsive { display: block; max-width: 100%; height: auto; }
.pg-interior .largeQuote .center img { margin: 0 auto; }
.pg-interior .largeQuote .row { align-items: center; }
.pg-interior .mb40 { margin-bottom: 36px; }
.pg-interior .boxContent { padding: 28px; background: var(--pg-paper, #f6f5f1); }
.pg-interior .boxContent p { font-size: .95rem; }
.pg-interior .boxContent p:last-child { margin-bottom: 0; }
.pg-service-next { background: var(--pg-navy, #262262); color: #fff; padding: 54px 0 30px; }
.pg-next-layout { display: flex; justify-content: space-between; align-items: center; gap: 32px; }
.pg-interior .pg-service-next h2 { color: #fff; margin: 0; max-width: 24ch; }
.pg-interior .pg-service-next .pg-eyebrow { color: #c8c5e0; }
.pg-next-layout .btn { flex-shrink: 0; }
.pg-interior .pg-service-topics { margin: 34px 0 0; padding-top: 20px; border-top: 1px solid #5c5885; color: #d7d5e6; font-size: .72rem; line-height: 1.8; word-spacing: .14em; }
.pg-service-details { padding: 60px 0; }
.pg-service-details .iconList { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 36px; }
.pg-photo-gallery { display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-color: var(--pg-orange, #f1592a) var(--pg-paper, #f6f5f1); padding-bottom: 14px; }
.pg-photo-gallery img { flex: 0 0 86%; min-width: 0; width: 86%; height: 310px !important; object-fit: cover; scroll-snap-align: start; }
.pg-photo-gallery:focus-visible { outline: 3px solid var(--pg-orange, #f1592a); outline-offset: 5px; }
.pg-interior .pg-gallery-help { font-size: .8rem; color: var(--pg-muted, #626471); margin-top: 12px; }
.pg-interior .pg-company-lead { max-width: 850px; margin-bottom: 0; color: var(--pg-muted, #626471); font-size: clamp(1.05rem, 1.7vw, 1.25rem); }
.pg-company-lead strong { color: var(--pg-navy, #262262); }
.pg-editorial { max-width: 820px; margin: 0 auto; padding: 64px 0; }
.pg-editorial h2 { margin: 48px 0 20px; padding-top: 24px; border-top: 1px solid var(--pg-line, #dedee5); }
.pg-editorial h2:first-child { margin-top: 0; padding-top: 0; border: 0; }
.pg-article-nav { display: flex; flex-wrap: wrap; gap: 14px 24px; margin-top: 26px; }
.pg-article-nav a { font-size: .8rem; color: var(--pg-navy, #262262); text-decoration: underline; text-underline-offset: 5px; }
.pg-contact-layout { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.4fr); gap: clamp(30px, 7vw, 100px); padding: 64px 0; }
.pg-contact-details address { font-style: normal; }
.pg-contact-details h3 { font-size: .75rem; text-transform: uppercase; letter-spacing: .1em; margin: 30px 0 10px; color: var(--pg-muted, #626471); }
.pg-contact-details a { color: var(--pg-navy, #262262); text-underline-offset: 4px; overflow-wrap: anywhere; }
.pg-contact-details .pg-contact-phone { font-size: 1.3rem; font-weight: 600; }
.pg-contact-details #mapWrapper { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--pg-line, #dedee5); }
.pg-contact-form { padding: 34px; background: var(--pg-paper, #f6f5f1); border-top: 3px solid var(--pg-orange, #f1592a); }
.pg-contact-form h2 { font-size: 1.65rem; margin-bottom: 10px; }
.pg-contact-form .pg-form-help { font-size: .8rem; color: var(--pg-muted, #626471); }
.pg-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.pg-form-field-full { grid-column: 1 / -1; }
.pg-contact-form label { display: block; margin-bottom: 8px; font-weight: 600; font-size: .85rem; color: var(--pg-navy, #262262); }
.pg-contact-form .form-group { margin: 0; }
.pg-contact-form .form-control { display: block; width: 100%; height: auto; min-height: 50px; border: 1px solid #858593; border-radius: 2px; box-shadow: none; background: #fff; padding: 12px 14px; color: var(--pg-ink, #252839); font: inherit; font-size: 1rem; }
.pg-contact-form .form-control:focus { border-color: var(--pg-navy, #262262); outline: 2px solid var(--pg-navy, #262262); outline-offset: 2px; }
.pg-contact-form textarea.form-control { min-height: 144px; resize: vertical; }
.pg-contact-form .form-control::placeholder { color: var(--pg-muted, #646472); font-size: .9rem; opacity: 1; }
.pg-contact-form .securityCheck { border: 0; padding: 24px 0 0; margin: 24px 0 0; border-top: 1px solid var(--pg-line, #dedee5); }
.pg-contact-form .securityCheck legend { width: auto; padding: 0; margin-bottom: 14px; font-size: .95rem; color: var(--pg-navy, #262262); font-weight: 650; border: 0; }
.pg-captcha-row { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; }
.pg-captcha-row img { width: 100px; height: 40px; object-fit: contain; }
.pg-captcha-field { flex: 1; min-width: 140px; }
.pg-contact-form .result:not(:empty) { margin: 22px 0; padding: 16px; border: 1px solid var(--pg-line, #dedee5); font-size: .9rem; background: #fff; }
.pg-contact-form .result:focus { outline: 2px solid var(--pg-navy, #262262); outline-offset: 3px; }
.pg-contact-form [aria-invalid='true'] { border-color: #a62126; }
.pg-contact-form button[type='submit'] { margin-top: 24px; }
.pg-contact-form button[disabled] { cursor: wait; opacity: .6; }
.pg-legal #content { padding: 60px 0 72px; }
.pg-legal .pg-legal-copy { max-width: 840px; margin: auto; }
.pg-legal .panel-group { margin-top: 36px; }
.pg-legal .panel { border: 0; border-top: 1px solid var(--pg-line, #dedee5); box-shadow: none; border-radius: 0; margin: 0; background: #fff; }
.pg-legal .panel-heading { padding: 0; background: #fff; }
.pg-legal .panel-title { margin: 0; font-size: 1rem; }
.pg-legal .panel-title a { display: flex; justify-content: space-between; gap: 16px; padding: 24px 0; font-weight: 650; color: var(--pg-navy, #262262); text-decoration: none; }
.pg-legal .panel-title a::after { content: '+'; font-size: 1.4rem; line-height: 1; }
.pg-legal .panel-title a[aria-expanded='true']::after { content: '−'; }
.pg-legal .panel-title i { display: none; }
.pg-legal .panel-body { border: 0 !important; padding: 0 0 26px; line-height: 1.8; }
.pg-confirmation { padding: 78px 0; background: var(--pg-paper, #f6f5f1); }
.pg-confirmation .pg-confirmation-panel { max-width: 780px; margin: auto; padding: clamp(30px, 6vw, 72px); background: #fff; border-top: 4px solid var(--pg-orange, #f1592a); }
.pg-confirmation h1 { font-size: clamp(2.1rem, 4vw, 3.5rem); line-height: 1.1; color: var(--pg-navy, #262262); letter-spacing: -.035em; margin-bottom: 26px; }
.pg-confirmation .pg-confirmation-mark { display: inline-flex; width: 56px; height: 56px; align-items: center; justify-content: center; background: var(--pg-paper, #f6f5f1); border-radius: 50%; margin-bottom: 28px; color: var(--pg-navy, #262262); font-size: 1.7rem; }
.pg-confirmation .pg-confirmation-links { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; margin-top: 30px; }
@media (max-width: 991px) {
  .pg-service-grid { gap: 30px; grid-template-columns: 1.1fr 1fr; }
  .pg-service-visual { height: 350px; }
  .pg-service-details .iconList { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pg-contact-layout { gap: 35px; grid-template-columns: 1fr 1.4fr; }
  .pg-contact-form { padding: 26px; }
}
@media (max-width: 767px) {
  .pg-interior .page-header { padding: 26px 0 38px; }
  .pg-breadcrumb { margin-bottom: 26px; font-size: .72rem; }
  .pg-service-grid { grid-template-columns: 1fr; gap: 32px; }
  .pg-service-copy { padding: 0; }
  .pg-service-visual { height: 310px; }
  .pg-service-visual img { object-position: center; }
  .pg-interior .page-header h1 { font-size: clamp(2rem, 8.3vw, 3rem); max-width: 23ch; margin-bottom: 22px; }
  .pg-interior p, .pg-interior li { font-size: 1rem; }
  .pg-interior #content > section, .pg-service-details { padding: 38px 0; }
  .pg-interior #content .row > [class*='col-'] { margin-bottom: 28px; }
  .pg-next-layout { flex-direction: column; align-items: flex-start; gap: 26px; }
  .pg-service-next { padding: 38px 0 26px; }
  .pg-service-details .iconList { grid-template-columns: 1fr; }
  .pg-interior .span12 > [class*='col-'] { padding: 0; margin-bottom: 22px; }
  .pg-photo-gallery img { height: 280px !important; }
  .pg-editorial { padding: 40px 0; }
  .pg-editorial h2 { margin-top: 34px; }
  .pg-contact-layout { grid-template-columns: 1fr; gap: 28px; padding: 38px 0; }
  .pg-contact-form { padding: 24px 20px; }
  .pg-form-grid { grid-template-columns: 1fr; gap: 20px; }
  .pg-contact-form button[type='submit'] { width: 100%; }
  .pg-legal #content { padding: 36px 0 46px; }
  .pg-confirmation { padding: 38px 0; }
}
@media (prefers-reduced-motion: reduce) { .pg-photo-gallery { scroll-behavior: auto; } }
/* Existing standalone status pages also use the brand without loading the old template. */
.pg-system-page { margin: 0; background: #f6f5f1; color: #252839; font-family: Arial, Helvetica, sans-serif; }
.pg-system-page *, .pg-system-page *::before, .pg-system-page *::after { box-sizing: border-box; }
.pg-system-header { max-width: 1240px; margin: auto; padding: 28px 24px; }
.pg-system-header img { display: block; max-width: 210px; width: 100%; height: auto; }
.pg-system-page .container { margin: 0 auto; padding: 0 24px; }
.pg-system-page .btn { display: inline-flex; align-items: center; gap: 24px; padding: 16px 22px; background: #262262; color: #fff; text-decoration: none; font-weight: 600; border-bottom: 3px solid #f1592a; }
.pg-system-page a { color: #262262; text-underline-offset: 4px; }
.pg-system-page a:focus-visible { outline: 3px solid #f1592a; outline-offset: 5px; }
.pg-system-footer { padding: 20px 24px 40px; text-align: center; color: #626471; font-size: .8rem; }
.pg-service-actions { display: flex; flex-wrap: wrap; gap: 20px; align-items: center; margin-top: 28px; }
.pg-service-actions .pg-service-quote { margin: 0; }
.pg-interior .pg-pets-social { font-size: .85rem; line-height: 1.5; color: var(--pg-navy, #262262); text-decoration: underline; text-underline-offset: 4px; }
/* Destination guidance: species and regulatory routes remain visibly separate. */
.pg-pet-requirements-intro { max-width: 920px; margin-bottom: 44px; }
.pg-interior .pg-pet-reviewed { color: var(--pg-muted, #626471); font-size: .8rem; }
.pg-pet-requirement { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.45fr); gap: 64px; padding: 36px 0; border-top: 1px solid var(--pg-line, #dedee5); scroll-margin-top: 130px; }
.pg-pet-requirement header { padding-top: 12px; }
.pg-pet-requirement header p:not(.pg-eyebrow) { font-size: .95rem; color: var(--pg-muted, #626471); }
.pg-interior .pg-pet-requirement h3 { font-size: 1.6rem; }
.pg-interior .pg-pet-requirement .iconList { margin: 0 0 20px; }
.pg-interior .pg-pet-source-note { font-size: .875rem; line-height: 1.7; color: var(--pg-muted, #626471); margin-bottom: 0; }
.pg-pet-requirement a { text-decoration: underline; text-underline-offset: 3px; }
.pg-pet-requirements .pg-article-nav { gap: 12px 28px; }
@media (max-width: 767px) {
  .pg-pet-requirements-intro { margin-bottom: 28px; }
  .pg-pet-requirement { grid-template-columns: 1fr; gap: 12px; padding: 26px 0; scroll-margin-top: 90px; }
  .pg-pet-requirement header { padding-top: 0; }
  .pg-interior .pg-pet-requirement h3 { font-size: 1.4rem; }
}

/* Archived participation: standard site identity, original campaign artwork. */
.pg-interior .pg-campaign-lead { max-width: 710px; margin-bottom: 0; color: var(--pg-muted, #626471); font-size: clamp(1.05rem, 1.7vw, 1.25rem); }
.pg-campaign-archive .page-header h1 { max-width: 23ch; }
.pg-campaign-cover { margin: 52px 0 0; }
.pg-campaign-cover img { display: block; width: 100%; height: auto; background: #342966; }
.pg-campaign-archive figcaption { margin-top: 14px; font-size: .75rem; line-height: 1.6; color: var(--pg-muted, #626471); }
.pg-campaign-story { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(40px, 6vw, 96px); align-items: start; padding: 76px 0; }
.pg-campaign-copy { padding-top: 16px; }
.pg-campaign-copy h2 { max-width: 20ch; }
.pg-campaign-brands { display: block; width: 100%; max-width: 440px; height: auto; margin: 36px 0; }
.pg-campaign-fair { margin: 0; padding-top: 26px; border-top: 1px solid var(--pg-line, #dedee5); }
.pg-campaign-fair img { display: block; width: 176px; max-width: 70%; height: auto; }
.pg-campaign-photo { margin: 0; }
.pg-campaign-photo img { display: block; width: 100%; height: auto; }
.pg-campaign-return { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 20px 32px; padding: 26px 0 58px; border-top: 1px solid var(--pg-line, #dedee5); }
.pg-campaign-return a, .pg-company-participations a { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; color: var(--pg-navy, #262262); font-size: .9rem; font-weight: 600; text-decoration: underline; text-underline-offset: 5px; }
.pg-company-participations { padding: 52px 0; border-top: 1px solid var(--pg-line, #dedee5); }
.pg-company-participations > .container { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 26px; }
.pg-company-participations p:not(.pg-eyebrow) { max-width: 680px; margin-bottom: 0; }
.pg-company-participations .pg-eyebrow { margin-bottom: 12px; }
.pg-company-participations h2 { margin-bottom: 16px; }
@media (max-width: 767px) {
  .pg-campaign-cover { margin-top: 30px; }
  .pg-campaign-cover img { height: 200px; object-fit: cover; object-position: left bottom; }
  .pg-campaign-story { grid-template-columns: 1fr; gap: 36px; padding: 40px 0; }
  .pg-campaign-copy { padding-top: 0; }
  .pg-campaign-copy h2 { max-width: none; }
  .pg-campaign-brands { margin: 28px 0; }
  .pg-campaign-fair img { width: 150px; }
  .pg-campaign-return { padding-bottom: 40px; gap: 12px 26px; }
  .pg-company-participations { padding: 38px 0; }
}

/* Editorial scenes for moving and packing: full images, no carousel or crop. */
.pg-scene-heading { max-width: 720px; margin-bottom: 32px; }
.pg-scene-heading .pg-eyebrow { margin-bottom: 12px; }
.pg-interior .pg-scene-heading h2 { margin-bottom: 0; }
.pg-scene-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: start; }
.pg-scene-card { min-width: 0; margin: 0; }
.pg-scene-card img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; background: var(--pg-paper, #f6f5f1); }
.pg-scene-card figcaption { padding-top: 20px; }
.pg-scene-card figcaption strong { display: block; color: var(--pg-navy, #262262); font-size: 1.1rem; line-height: 1.4; font-weight: 650; }
.pg-scene-card figcaption span { display: block; margin-top: 8px; color: var(--pg-muted, #626471); font-size: .9rem; line-height: 1.65; }
.pg-interior .pg-advice-photo { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; }
@media (max-width: 767px) {
  .pg-scene-heading { margin-bottom: 26px; }
  .pg-scene-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .pg-scene-card figcaption { padding-top: 16px; }
}
