/*
 * A4 print layout for the public pages (GIGW: content prints correctly on A4 paper).
 * Loaded with media="print" after every other stylesheet. The print block at the end of
 * style.css already hides the menus, side buttons and ticker; this fixes what still printed
 * badly: floating widgets, the home animation, carousels cut off at the right edge, lists cut
 * short by fixed heights, social-media frames, and the footer's link lists and page-wide logos.
 */

@page {
    size: A4;
    margin: 14mm 12mm;
}

/* Controls and decoration with no use on paper. */
.gigw-skip-link,
.sg-launcher,
.sg-panel,
.chat-bot,
.side-links-toggle,
.side-links,
.searchBoxTggler,
.headerSearchBoxArea,
.top-info-list,
.bhashini-plugin-container,
.vs-menu-wrapper,
.mainMenuSection,
.bannerSection,
.logoAnimationArea,
.content--reveal,
.showBannerBtn,
.upComungNews,
.socialSection,
.owl-nav,
.owl-dots,
.bx-controls,
.clientSection,
.rightSideBar,
.footer-center,
.searchAreaBox,
.dataTables_filter,
.dataTables_length,
.dataTables_paginate,
.pagination,
.modal,
.offcanvas,
iframe,
video {
    display: none !important;
}

/* Carousels: print every item in rows instead of a strip cut off at the page edge. */
.owl-carousel .owl-stage-outer {
    overflow: visible !important;
}
.owl-carousel .owl-stage {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px;
    width: auto !important;
    transform: none !important;
}
.owl-carousel .owl-item {
    width: 31% !important;
    float: none !important;
}
.owl-carousel .owl-item.cloned {
    display: none !important;
}

/* Cards in carousels size to their text (fixed heights made long event titles spill over). */
main .owl-carousel .owl-item *,
main .event-img-placeholder {
    height: auto !important;
    min-height: 0 !important;
}
main .event-img-placeholder,
main .event-img-placeholder span {
    font-size: 11pt !important;
    line-height: 1.3 !important;
    padding: 6px !important;
}

/* Lists and panels with a fixed height and their own scrollbar print in full. */
main *,
.footer-bottom * {
    max-height: none !important;
    overflow: visible !important;
}

/* Scrolling tickers print once and in full: no duplicate copy, no script-set height or offset. */
main .js-marquee-wrapper,
main .js-marquee,
main [class*="marquee"] {
    height: auto !important;
    margin-top: 0 !important;
    transform: none !important;
    animation: none !important;
}
main .js-marquee + .js-marquee {
    display: none !important;
}
main [style*="height"] {
    height: auto !important;
}

/* Table buttons stay on one line instead of breaking letter by letter. */
main table .btn,
main table a.btn,
main table td:last-child a {
    white-space: nowrap !important;
    word-break: normal !important;
}

/* Text on coloured cards prints dark on white. */
main .serviceBoxArea,
main [class*="bgArea-"],
main .event-img-placeholder {
    background: #fff !important;
    color: #000 !important;
    border: 1px solid #999 !important;
}
main .serviceBoxArea *,
main .event-img-placeholder * {
    color: #000 !important;
}

/* Document links keep their format and size note; external links print their address. */
main a[href^="http"]:not([href*="ipindia"])::after {
    content: " (" attr(href) ")";
    font-size: 9pt;
    word-break: break-all;
}

/* Footer: ownership and "last updated" only, in plain text. */
.section-footer,
.footer,
.footer-bottom {
    background: #fff !important;
    color: #000 !important;
}
.footer-bottom * {
    color: #000 !important;
}
.footer-bottom img {
    max-height: 40px !important;
    width: auto !important;
}
