/* Homepage trust additions. Existing navigation and inner-page styles are preserved. */
.pdf-home { --pt-ink:#153d35; --pt-muted:#596961; --pt-cream:#f5f3eb; --pt-gold:#d3c297; }
.pt-about,.pt-roles,.pt-customers { padding:88px max(28px,calc((100% - 1240px)/2)); color:var(--pt-ink); }
.pt-about { background:#f8f7f2; }
.pt-about *,.pt-roles *,.pt-customers *,.pt-certificates * { box-sizing:border-box; }
.pt-kicker { display:block; margin:0 0 18px; color:#647369; font-size:11px; line-height:1.5; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.pt-about h2,.pt-roles h2,.pt-customers h2 { font-family:Georgia,'Times New Roman',serif; font-size:clamp(36px,3.9vw,53px); font-weight:400; line-height:1.1; letter-spacing:-.035em; margin:0 0 24px; color:var(--pt-ink); }
.pt-about-grid { display:grid; grid-template-columns:.94fr 1.06fr; gap:64px; align-items:start; }
.pt-company-copy > p:not(.pt-kicker) { max-width:520px; font-size:15px; line-height:1.8; color:var(--pt-muted); margin:0 0 20px; }
.pt-company-copy > .pt-lead { font-size:18px!important; line-height:1.65!important; color:var(--pt-ink)!important; }
.pt-stat-grid { display:grid; grid-template-columns:1fr 1fr; margin:32px 0 26px; border-top:1px solid #ced6cd; }
.pt-stat-grid > div { padding:21px 10px 20px 0; border-bottom:1px solid #ced6cd; }
.pt-stat-grid dt { margin:0 0 6px; font-size:clamp(30px,3.1vw,42px); font-weight:500; letter-spacing:-.04em; line-height:1.2; font-variant-numeric:tabular-nums; }
.pt-stat-grid dt span { font-size:.61em; font-weight:400; }
.pt-stat-grid dd { margin:0; font-size:12px; line-height:1.5; color:var(--pt-muted); }
.pt-text-link { display:inline-flex; align-items:center; gap:28px; font-size:13px; font-weight:650; color:var(--pt-ink); border-bottom:1px solid #899a88; padding:7px 0; text-decoration:none; }
.pt-text-link:hover { color:#957334; border-color:#957334; }
.pt-film { position:relative; background:#122f2b; overflow:hidden; }
.pt-film-launch { display:block; position:relative; aspect-ratio:4/3; isolation:isolate; color:white; }
.pt-film-launch > img { display:block; width:100%; height:100%; object-fit:cover; object-position:50% 55%; }
.pt-film-launch::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(8,28,24,.40),transparent 35%,rgba(8,28,24,.86)); z-index:1; }
.pt-film-tag { position:absolute; top:25px; left:26px; right:22px; z-index:2; font-size:10px; font-weight:650; letter-spacing:.14em; color:#fff; }
.pt-play { position:absolute; top:45%; left:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:67px; height:67px; padding-left:4px; background:#e4d5b4; color:#13362f; border-radius:50%; z-index:2; font-size:21px; box-shadow:0 0 0 11px #ffffff18; transition:transform .2s; }
.pt-film-launch:hover .pt-play { transform:translate(-50%,-50%) scale(1.07); }
.pt-film-caption { position:absolute; bottom:27px; left:28px; right:25px; z-index:2; display:flex; flex-direction:column; gap:15px; }
.pt-film-caption strong { font:400 clamp(28px,2.6vw,38px)/1.1 Georgia,serif; letter-spacing:-.025em; color:#fff; }
.pt-film-caption > span { font-size:12px; color:#f5e8cd; }
.pt-film-caption b { margin-left:15px; }
.pt-intro-brands { padding:22px 24px 14px; background:white; border:1px solid #e5e8df; border-top:0; }
.pt-intro-brands .pt-kicker { font-size:9px; margin-bottom:14px; }
.pt-intro-brands img { display:block; width:100%; max-width:480px; height:auto; margin:auto; }
.pt-value-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:55px 0 24px; padding-top:30px; border-top:1px solid #d8ddcf; }
.pt-value-heading .pt-kicker { margin:0; }
.pt-value-heading h3 { margin:0; font-size:20px; font-weight:500; letter-spacing:-.02em; }
.pt-values { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; }
.pt-value { display:flex; flex-direction:column; padding:0 23px; border-left:1px solid #d8ddcf; color:var(--pt-ink); text-decoration:none; }
.pt-value:first-child { padding-left:0; border-left:0; }
.pt-value:last-child { padding-right:0; }
.pt-value-number { font:400 25px/1 Georgia,serif; color:#8d805d; margin-bottom:20px; }
.pt-value h4 { font-size:16px; font-weight:600; line-height:1.3; letter-spacing:-.015em; margin:0 0 12px; }
.pt-value p { font-size:12px; line-height:1.75; color:var(--pt-muted); margin:0 0 18px; }
.pt-value-arrow { margin-top:auto; color:#827347; font-size:19px; }
.pt-value:hover h4 { text-decoration:underline; text-underline-offset:4px; }
.pdf-home .hero-actions .pt-hero-film-link { display:inline-flex; gap:12px; align-items:center; padding:14px 8px; border:0; background:transparent; color:#eee2c7; font-size:13px; text-decoration:underline; text-underline-offset:6px; }
.pdf-home .home-hero .hero-actions > .text-button:first-child { background:#e0cfab; color:#173b31; border-color:#e0cfab; }
.pt-roles { background:#fff; }
.pt-section-heading { display:flex; justify-content:space-between; align-items:end; gap:48px; margin-bottom:36px; }
.pt-section-heading h2 { margin-bottom:0; }
.pt-section-heading > p { max-width:365px; font-size:14px; line-height:1.8; margin:0 0 3px; color:var(--pt-muted); }
.pt-role-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.pt-role { display:grid; grid-template-columns:40% 60%; min-width:0; color:var(--pt-ink); background:var(--pt-cream); text-decoration:none; overflow:hidden; }
.pt-role > img { display:block; width:100%; height:100%; min-height:300px; object-fit:cover; object-position:center; }
.pt-role-copy { display:flex; flex-direction:column; padding:28px; min-width:0; }
.pt-role .pt-kicker { font-size:9px; line-height:1.65; margin-bottom:18px; }
.pt-role h3 { font:400 clamp(23px,2.1vw,29px)/1.18 Georgia,serif; margin:0 0 15px; letter-spacing:-.025em; }
.pt-role p { font-size:12px; line-height:1.75; color:var(--pt-muted); margin:0 0 24px; }
.pt-role-cta { display:flex; justify-content:space-between; gap:12px; align-items:center; padding-top:12px; border-top:1px solid #d0d6c9; margin-top:auto; font-size:11px; font-weight:700; }
.pt-role:hover .pt-role-cta { color:#917235; border-color:#917235; }
.pt-caption { font-size:10px; line-height:1.5; color:#66756b; margin:14px 0 0; }
.pt-customers { background:#103930; color:#f5f1e6; }
.pt-customers .pt-kicker { color:#d0bd8c; }
.pt-customers h2,.pt-customers h3 { color:#f6f0e3; }
.pt-customers .pt-section-heading > p { color:#bacdc2; }
.pt-quotes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.pt-quote { min-width:0; display:flex; flex-direction:column; padding:28px; background:#f8f6ef; color:#183d33; }
.pt-quote-mark { font:52px/.8 Georgia,serif; color:#9a8a58; height:32px; }
.pt-quote blockquote { margin:15px 0 28px; font-size:14px; line-height:1.85; color:#2f4b41; }
.pt-quote-by { display:flex; justify-content:space-between; align-items:center; gap:14px; margin-top:auto; padding-top:22px; border-top:1px solid #d9ddce; }
.pt-quote-by img { object-fit:contain; width:110px; height:42px; background:white; padding:5px; }
.pt-quote-by span { color:#5e6d60; font-size:10px; line-height:1.6; }
.pt-more-feedback { margin-top:24px; }
.pt-more-feedback > summary { display:flex; align-items:center; gap:28px; width:fit-content; padding:12px 0; cursor:pointer; list-style:none; border-bottom:1px solid #809a88; font-size:12px; color:#f4ead3; }
.pt-more-feedback > summary::-webkit-details-marker { display:none; }
.pt-more-feedback[open] > summary { margin-bottom:25px; }
.pt-more-feedback[open] > summary span { transform:rotate(45deg); }
.pt-partners { display:grid; grid-template-columns:.7fr 2fr; gap:50px; align-items:center; border-top:1px solid #416457; padding-top:44px; margin-top:42px; }
.pt-partners h3 { font:400 29px/1.2 Georgia,serif; margin:0; }
.pt-partner-logos { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:#d9ded6; border:1px solid #d9ded6; }
.pt-partner-logos > div { display:grid; place-items:center; background:#fff; min-width:0; padding:22px 18px; }
.pt-partner-logos img { display:block; width:auto; height:auto; max-width:135px; max-height:40px; object-fit:contain; }
.pt-certificates { padding-top:58px; margin-top:52px; border-top:1px solid #d4dacb; color:var(--pt-ink); }
.pt-certificates h3 { font:400 clamp(28px,3vw,38px)/1.15 Georgia,serif; margin:0; letter-spacing:-.025em; }
.pt-certificates .pt-section-heading { gap:30px; }
.pt-certificates .pt-section-heading > p { font-size:13px; max-width:350px; }
.pt-cert-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.pt-cert-card { text-decoration:none; color:var(--pt-ink); background:#fff; border:1px solid #dce1d5; }
.pt-cert-image { padding:25px 32px; background:#ebece3; }
.pt-cert-image svg { display:block; width:auto; max-width:100%; height:220px; aspect-ratio:169 / 241; overflow:hidden; margin:auto; filter:drop-shadow(0 5px 6px #183d331b); }
.pt-cert-card > div:last-child { padding:20px; }
.pt-cert-card .pt-kicker { font-size:9px; margin-bottom:8px; letter-spacing:.09em; }
.pt-cert-card h4 { font-size:15px; font-weight:600; line-height:1.4; margin:0; }
.pt-cert-card h4 span { float:right; margin-left:8px; }
.pt-cert-card:hover { border-color:#9eaa8e; }
.pt-cert-footer { display:flex; justify-content:space-between; align-items:center; gap:30px; margin-top:24px; }
.pt-cert-footer p { font-size:11px; line-height:1.8; color:var(--pt-muted); max-width:650px; margin:0; }
.pt-cert-footer a { flex-shrink:0; }
.pt-dialog { box-sizing:border-box; width:min(1000px,94vw); max-height:92vh; padding:0; border:1px solid #78927e; background:#f7f6ef; color:#183d33; box-shadow:0 25px 100px #0007; }
.pt-dialog::backdrop { background:rgba(3,20,16,.84); }
.pt-dialog-bar { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:18px 24px; }
.pt-dialog-bar h2 { font-size:18px; font-family:Georgia,serif; font-weight:400; margin:0; }
.pt-dialog-bar button { width:42px; height:42px; background:#e3e7dc; color:#14362d; border:0; cursor:pointer; font-size:21px; }
.pt-video-mount { aspect-ratio:16/9; background:#092c23; }
.pt-video-mount iframe { display:block; width:100%; height:100%; border:0; }
.pt-dialog-foot { display:flex; justify-content:space-between; gap:20px; padding:14px 24px; font-size:12px; }
.pt-dialog-foot p { margin:0; }
.pt-dialog-foot a,.pt-document-dialog a { color:#214d3d; }
.pt-document-dialog { width:min(1400px,96vw); }
.pt-document-dialog > img { display:block; width:100%; height:auto; background:white; }
.pt-document-dialog > p { padding:16px 24px; font-size:12px; line-height:1.7; }
body[data-pt-modal-open] { overflow:hidden; }
.pt-about a:focus-visible,.pt-roles a:focus-visible,.pt-customers a:focus-visible,.pt-customers summary:focus-visible,.pt-certificates a:focus-visible,.pt-dialog button:focus-visible { outline:3px solid #b99858; outline-offset:5px; }
@media(min-width:1500px) { .pt-about-grid { gap:80px; } }
@media(max-width:1100px) {
 .pt-about-grid { gap:35px; }
 .pt-about,.pt-roles,.pt-customers { padding:68px 32px; }
 .pt-values { grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 0; }
 .pt-value:nth-child(4) { border:0; padding-left:0; }
 .pt-role-copy { padding:24px; }
 .pt-role-grid { gap:16px; }
 .pt-role { grid-template-columns:35% 65%; }
 .pt-quote { padding:23px; }
 .pt-partners { grid-template-columns:.65fr 1.6fr; gap:30px; }
 .pt-cert-image { padding:20px; }
 .pt-cert-image svg { height:190px; }
 .pt-cert-footer { align-items:start; }
}
@media(max-width:760px) {
 .pt-about,.pt-roles,.pt-customers { padding:56px 24px; }
 .pt-about-grid { grid-template-columns:1fr; gap:32px; }
 .pt-company-copy > p:not(.pt-kicker) { max-width:none; }
 .pt-film-launch { aspect-ratio:4/3; }
 .pt-value-heading { display:block; margin-top:35px; }
 .pt-value-heading .pt-kicker { margin-bottom:12px; }
 .pt-values { grid-template-columns:1fr; gap:0; }
 .pt-value,.pt-value:first-child,.pt-value:last-child,.pt-value:nth-child(4) { display:grid; grid-template-columns:32px 1fr 18px; gap:0 15px; padding:22px 0; border:0; border-bottom:1px solid #d8ddcf; }
 .pt-value-number { grid-column:1; grid-row:1/3; margin:0; font-size:22px; }
 .pt-value h4 { grid-column:2; margin-bottom:7px; font-size:17px; }
 .pt-value p { grid-column:2; margin:0; font-size:13px; }
 .pt-value-arrow { grid-column:3; grid-row:1/3; align-self:start; margin:0; }
 .pt-section-heading { display:block; margin-bottom:26px; }
 .pt-section-heading > p { margin-top:20px; max-width:none; }
 .pt-role-grid { grid-template-columns:1fr; gap:18px; }
 .pt-role { grid-template-columns:35% 65%; }
 .pt-role > img { min-height:270px; }
 .pt-role-copy { padding:24px 20px; }
 .pt-role h3 { font-size:26px; }
 .pt-role p { font-size:12px; }
 .pt-quotes { grid-template-columns:1fr; gap:16px; }
 .pt-quote { padding:28px; }
 .pt-quote blockquote { font-size:15px; line-height:1.8; }
 .pt-partners { grid-template-columns:1fr; gap:25px; }
 .pt-partner-logos > div { padding:22px 12px; }
 .pt-partner-logos img { max-width:90px; max-height:34px; width:100%; }
 .pt-cert-grid { grid-template-columns:1fr 1fr; gap:12px; }
 .pt-cert-image { padding:16px; }
 .pt-cert-image svg { height:160px; }
 .pt-cert-card > div:last-child { padding:14px; }
 .pt-cert-card h4 { font-size:13px; }
 .pt-cert-footer { flex-direction:column; gap:13px; }
 .pt-dialog-bar { padding:12px; }
 .pt-dialog-foot { flex-direction:column; gap:12px; padding:16px; }
}
@media(prefers-reduced-motion:reduce) { .pt-play { transition:none; } }
