/*
Theme Name: Paragon
Theme URI: https://www.paragonforwarding.com/
Description: Child theme of Twenty Twenty-Five carrying the Paragon / Gaba design system: colours, Poppins and Open Sans, Paragon and Gaba headers and footers.
Author: Paragon International Forwarding Inc.
Template: twentytwentyfive
Version: 1.0.9
Requires at least: 6.7
Requires PHP: 7.4
Text Domain: paragon
*/

/* Small additions the block settings cannot express. Each is tied to a CSS class set in the block's Advanced panel. */

/* Eyebrow line above headings */
.is-eyebrow{font-family:var(--wp--preset--font-family--poppins);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:0}

/* Supplier-to-door route: dashed line with stops */
.pg-route{position:relative}
.pg-route>.wp-block-column{position:relative;padding-top:34px;border-top:3px dashed var(--wp--preset--color--green-600)}
.pg-route>.wp-block-column:before{content:"";position:absolute;left:0;top:-11px;width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--wp--preset--color--navy-900);box-sizing:border-box}
.pg-route>.wp-block-column:last-child:before{background:var(--wp--preset--color--green-600);border-color:var(--wp--preset--color--green-600)}
@media (max-width:781px){
 .pg-route{gap:0!important;border-left:3px dashed var(--wp--preset--color--green-600);margin-left:9px;padding-left:24px}
 .pg-route>.wp-block-column{border-top:0;padding:0 0 22px}
 .pg-route>.wp-block-column:before{left:-35px;top:2px;width:16px;height:16px;border-width:3px}
}

/* Photo tiles */
.pg-tile{height:100%;transition:transform .2s,box-shadow .2s}
.pg-tile:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,17,54,.10)}
.pg-tile .wp-block-image{margin:0}
.pg-tile .wp-block-image img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}
@media (max-width:781px){.pg-tile .wp-block-image img{aspect-ratio:21/9}}

/* Check-mark lists */
.pg-ticks{list-style:none;padding-left:0}
.pg-ticks li{position:relative;padding-left:32px;margin-bottom:10px}
.pg-ticks li:before{content:"";position:absolute;left:0;top:2px;width:22px;height:22px;border-radius:50%;background:var(--wp--preset--color--green-600)}
.pg-ticks li:after{content:"";position:absolute;left:7px;top:8px;width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}

/* Sticky in-page menu */
.pg-subnav{position:sticky;top:0;z-index:20}
.pg-subnav a{text-decoration:none;white-space:nowrap}
.pg-subnav .wp-block-group{overflow-x:auto}

/* FAQ */
.wp-block-details{border-bottom:1px solid var(--wp--preset--color--neutral-200);padding:16px 0}
.wp-block-details summary{font-family:var(--wp--preset--font-family--poppins);font-weight:600;color:var(--wp--preset--color--navy-900);cursor:pointer}

/* Sticky quote card on desktop */
@media (min-width:782px){.pg-sticky{position:sticky;top:24px}}

/* Tables */
.wp-block-table.pg-table th{background:var(--wp--preset--color--neutral-050);font-family:var(--wp--preset--font-family--poppins);color:var(--wp--preset--color--navy-900);text-align:left}
.wp-block-table.pg-table td,.wp-block-table.pg-table th{border:0;border-bottom:1px solid var(--wp--preset--color--neutral-200);padding:12px 16px;vertical-align:top}

/* Navigation on navy */
.pg-header .wp-block-navigation a{font-family:var(--wp--preset--font-family--poppins);font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:14px}
.pg-header .wp-block-navigation a:hover{color:var(--wp--preset--color--green-400)}
.pg-header .wp-block-navigation__responsive-container.is-menu-open{background:var(--wp--preset--color--navy-900);color:#fff}

/* Contact Form 7 inside the design */
.wpcf7 input:not([type=submit]):not([type=checkbox]):not([type=radio]),.wpcf7 select,.wpcf7 textarea{width:100%;font:inherit;font-size:16px;padding:12px 14px;border:1px solid var(--wp--preset--color--neutral-300);border-radius:6px;background:#fff;color:var(--wp--preset--color--navy-900)}
.wpcf7 input[type=submit]{background:var(--wp--preset--color--green-600);color:#fff;border:0;border-radius:6px;padding:14px 24px;font-family:var(--wp--preset--font-family--poppins);font-weight:700;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}
.wpcf7 input[type=submit]:hover{background:var(--wp--preset--color--green-700)}

/* Bold Builder (still active for the older pages) wraps post content in .bt_bb_wrapper; keep full-width sections full width */
.has-global-padding > .bt_bb_wrapper > .alignfull{margin-left:calc(var(--wp--style--root--padding-left) * -1)!important;margin-right:calc(var(--wp--style--root--padding-right) * -1)!important;max-width:none}
.has-global-padding > .bt_bb_wrapper > .alignfull:first-child{margin-top:0}

/* Header on phones: logo + menu only */
@media (max-width:781px){
 .pg-header .pg-phone,.pg-header .wp-block-buttons{display:none}
}
.pg-header .pg-phone a{text-decoration:none;white-space:nowrap}

/* Form fields: include padding in width */
.wpcf7 input,.wpcf7 select,.wpcf7 textarea{box-sizing:border-box;max-width:100%}
.wpcf7 label{font-size:14px;font-weight:600;color:var(--wp--preset--color--navy-900)}

/* Wide tables scroll sideways on small screens instead of squashing */
.wp-block-table.pg-table{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media (max-width:781px){.wp-block-table.pg-table table{min-width:560px}}

/* In-page menu: one line, swipe sideways on phones */
.pg-subnav p{white-space:nowrap;overflow-x:auto;scrollbar-width:none;margin:0}
.pg-subnav p::-webkit-scrollbar{display:none}
.pg-subnav a{display:inline-block;margin-right:20px}

/* Phones: lighter hero padding, tighter trust strip */
@media (max-width:781px){
 .entry-content > .bt_bb_wrapper > section.alignfull:first-child,.entry-content > section.alignfull:first-child{padding-top:56px!important;padding-bottom:56px!important}
 .pg-trust{padding-top:14px!important;padding-bottom:14px!important}
 .pg-trust > .wp-block-group{row-gap:6px!important;flex-direction:column;align-items:flex-start}
}
.wp-block-table.pg-table th:first-child,.wp-block-table.pg-table td:first-child{white-space:nowrap}

/* Numbered reasons on navy: translucent cards */
.pg-reason{background-color:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.14)!important}
/* Pill labels (eyebrow with a background) size to their text */
p.is-eyebrow[style*="background"]{display:inline-block;width:auto;max-width:100%}
/* Tile titles: no underline until hover */
.pg-tile h3 a{text-decoration:none;color:var(--wp--preset--color--navy-900)}
.pg-tile h3 a:hover{color:var(--wp--preset--color--green-600)}
.pg-tile p a{text-decoration:none;color:var(--wp--preset--color--green-600)}
.has-global-padding > .bt_bb_wrapper{max-width:none!important;margin-left:0!important;margin-right:0!important}

/* Phone menu overlay: solid navy, large left-aligned links, quote button */
.pg-header .wp-block-navigation__responsive-container.is-menu-open{background-color:var(--wp--preset--color--navy-900)!important;opacity:1;padding:24px}
.pg-header .is-menu-open .wp-block-navigation__responsive-container-content{align-items:flex-start!important;padding-top:56px}
.pg-header .is-menu-open .wp-block-navigation__container{align-items:flex-start!important;gap:22px!important}
.pg-header .is-menu-open .wp-block-navigation-item a{font-size:20px!important}
.pg-header .is-menu-open .wp-block-navigation__container:after{content:"";display:block}
.pg-header .pg-mobile-only{display:none!important}
.pg-header .is-menu-open .pg-mobile-only{display:flex!important}
.pg-header .is-menu-open .pg-menu-cta a{background:var(--wp--preset--color--green-600);color:#fff!important;padding:12px 22px!important;border-radius:6px;margin-top:12px}
.pg-header .is-menu-open .pg-menu-call a{color:var(--wp--preset--color--green-400)!important;text-transform:none!important}
.pg-header .wp-block-navigation__responsive-container.is-menu-open{animation:none!important;opacity:1!important}
