/* DigiTera — client-facing project stories and direct WhatsApp enquiry.
   Additive styles: leave the original brand, portfolio and animations intact. */
html { scroll-padding-top: 28px; }
.desktop-nav { gap: clamp(13px, 1.65vw, 27px); }
.proof-section { position: relative; isolation: isolate; }
.proof-section .section-heading { align-items: end; }
.proof-section .section-heading h2 { color: #103762; }
.proof-section .section-heading > p { color: #54718f; }
.proof-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; align-items: stretch; }
.proof-card { min-width: 0; overflow: hidden; background: #fff; border: 1px solid #dce8f6; border-radius: 25px; display: flex; flex-direction: column; box-shadow: 0 15px 48px rgba(12, 43, 83, .07); transition: transform .28s ease, box-shadow .28s ease; }
.proof-card:hover { transform: translateY(-5px); box-shadow: 0 24px 55px rgba(12, 43, 83, .13); }
.proof-cover { min-height: 205px; padding: 24px 25px; position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; color: #fff; background: radial-gradient(circle at 95% 20%, #6bbdb0 0, transparent 34%), linear-gradient(135deg, #153d45, #32737b 66%, #1b5a70); }
.proof-card--apex .proof-cover { background: radial-gradient(circle at 92% 12%, #468cd8 0, transparent 30%), linear-gradient(135deg, #0b244a, #164a92 68%, #2b8dbb); }
.proof-cover::after { content: ""; position: absolute; width: 210px; height: 210px; border: 1px solid #ffffff44; border-radius: 50%; right: -70px; top: 20px; box-shadow: 0 0 0 33px #ffffff0b, 0 0 0 70px #ffffff0b; pointer-events: none; }
.proof-overline, .proof-cover-foot { position: relative; z-index: 1; font-size: 10px; letter-spacing: 1.6px; font-weight: 800; }
.proof-cover > strong { position: relative; z-index: 1; font-size: clamp(37px, 3.25vw, 49px); line-height: 1.02; letter-spacing: -2px; font-family: Manrope, 'DM Sans', sans-serif; font-weight: 850; }
.proof-cover > strong span { font-size: 24px; margin-left: 9px; opacity: .8; }
.proof-cover--video { padding: 0; background: #07264c; }
.proof-cover--video::after { display: none; }
.proof-cover--video img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 38%; }
.proof-cover--video::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0, 20, 45, .62), transparent 70%); z-index: 1; }
.proof-video-tag { position: relative; z-index: 2; display: inline-flex; align-self: flex-start; margin: 19px; padding: 9px 13px; color: #fff; font-size: 10px; font-weight: 800; letter-spacing: 1.1px; border: 1px solid #ffffff75; border-radius: 99px; background: #082348c2; }
.proof-content { flex: 1; padding: 26px 25px 25px; display: flex; flex-direction: column; }
.proof-type { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; color: #2868ae; font-size: 9px; letter-spacing: .9px; font-weight: 800; text-transform: uppercase; margin: 0 0 13px; }
.proof-type span { color: #587088; text-transform: none; letter-spacing: 0; font-weight: 650; }
.proof-card h3 { color: #0f2e55; font-family: Manrope, 'DM Sans', sans-serif; font-size: clamp(20px, 1.75vw, 24px); letter-spacing: -.8px; line-height: 1.25; margin: 0 0 23px; }
.proof-card dl { display: grid; gap: 14px; margin: 0 0 25px; }
.proof-card dl > div { padding-top: 12px; border-top: 1px solid #e7edf5; }
.proof-card dt { color: #1e5eac; font-size: 11px; font-weight: 800; margin: 0 0 5px; }
.proof-card dd { margin: 0; color: #4e647c; font-size: 12.5px; line-height: 1.63; }
.proof-actions { margin-top: auto; display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.proof-button { appearance: none; cursor: pointer; display: inline-flex; gap: 15px; align-items: center; justify-content: space-between; border: 0; background: #0b55ab; color: #fff; padding: 12px 17px; border-radius: 12px; font-size: 12px; font-weight: 750; line-height: 1.3; transition: background .2s, transform .2s; }
.proof-button:hover { background: #083c82; transform: translateY(-2px); }
.proof-button:focus-visible, .proof-preview:focus-visible, .proof-contact:focus-visible, .digitera-whatsapp:focus-visible { outline: 3px solid #ffa735; outline-offset: 4px; }
.proof-preview { font-size: 12px; line-height: 1.4; color: #155ead; font-weight: 800; text-decoration: underline; text-decoration-color: #a4c3ec; text-underline-offset: 4px; }
.proof-preview:hover { color: #072b60; }
.proof-disclaimer { color: #5e7287; font-size: 10px; line-height: 1.35; }
.proof-bottom { margin-top: 23px; background: #eaf2fd; border: 1px solid #d4e4fb; border-radius: 18px; padding: 19px 22px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.proof-bottom p { margin: 0; color: #3f607e; font-size: 12px; line-height: 1.6; max-width: 740px; }
.proof-bottom p strong { color: #133d6f; }
.proof-contact { white-space: nowrap; color: #0a5caf; font-size: 12px; font-weight: 800; }
.proof-contact span { margin-left: 4px; }

/* Compact one-click WhatsApp link — deliberately no chat overlay or status claim. */
.digitera-whatsapp { position: fixed; z-index: 90; right: max(20px, env(safe-area-inset-right)); bottom: max(22px, env(safe-area-inset-bottom)); display: inline-flex; align-items: center; gap: 10px; width: max-content; max-width: calc(100vw - 38px); padding: 12px 18px 12px 13px; border: 1px solid rgba(255, 255, 255, .55); border-radius: 999px; background: #18aa57; box-shadow: 0 8px 25px #07582b40, 0 2px 8px #063d1f24; color: white; font: 750 13px/1.2 'DM Sans', Arial, sans-serif; text-decoration: none; letter-spacing: .1px; -webkit-tap-highlight-color: transparent; transition: transform .22s ease, background .22s ease, box-shadow .22s ease; animation: digitera-chat-appear .55s both; }
.digitera-whatsapp:visited { color: white; }
.digitera-whatsapp:hover { color: #fff; background: #087e3e; transform: translateY(-3px); box-shadow: 0 12px 28px #07582b50; }
.digitera-whatsapp__icon { display: block; width: 27px; height: 27px; flex: none; }
.digitera-whatsapp span { white-space: nowrap; }
@keyframes digitera-chat-appear { from { opacity: 0; transform: translateY(12px) scale(.95); } to { opacity: 1; transform: translateY(0) scale(1); } }
@media (max-width: 1100px) { .proof-grid { gap: 15px; } .proof-content { padding: 22px 19px; } .proof-cover { padding: 20px; } }
@media (max-width: 850px) { .proof-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .proof-card--ugc { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1.4fr; } .proof-card--ugc .proof-cover { min-height: 100%; } .proof-card--ugc .proof-content { padding: 24px; } }
@media (max-width: 650px) { .proof-section { padding-block: 65px; } .proof-grid { grid-template-columns: 1fr; gap: 18px; } .proof-card--ugc { grid-column: auto; display: flex; } .proof-cover, .proof-card--ugc .proof-cover { min-height: 195px; } .proof-content, .proof-card--ugc .proof-content { padding: 24px 21px; } .proof-card h3 { font-size: 22px; } .proof-bottom { flex-direction: column; align-items: flex-start; } .proof-contact { white-space: normal; } .digitera-whatsapp { right: max(13px, env(safe-area-inset-right)); bottom: max(15px, env(safe-area-inset-bottom)); padding: 11px 15px 11px 11px; gap: 8px; font-size: 12px; } .digitera-whatsapp__icon { width: 25px; height: 25px; } }
@media (prefers-reduced-motion: reduce) { .proof-card, .proof-button, .digitera-whatsapp { animation: none !important; transition: none !important; } .proof-card:hover, .proof-button:hover, .digitera-whatsapp:hover { transform: none !important; } }

/* Showcase tangible portfolio artwork rather than testimonials awaiting verification. */
.campaign-proof .section-heading h2{color:#103762}
.campaign-proof .section-heading>p{color:#526f8f}
.campaign-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.campaign-proof-item{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fff;border:1px solid #dce8f6;border-radius:21px;color:#123d6c;box-shadow:0 13px 38px rgba(10,42,89,.08);transition:transform .22s ease,box-shadow .22s ease}
.campaign-proof-item:hover{transform:translateY(-4px);box-shadow:0 20px 45px rgba(10,42,89,.15)}
.campaign-proof-item:focus-visible{outline:3px solid #e6a337;outline-offset:4px}
.campaign-proof-item img{display:block;width:100%;height:auto;aspect-ratio:4/4.15;object-fit:cover;background:#e9f2fa}
.campaign-proof-item>span{display:flex;flex-direction:column;gap:5px;padding:19px 20px 21px}
.campaign-proof-item strong{font:800 17px/1.3 Manrope,'DM Sans',sans-serif;color:#123c6d}
.campaign-proof-item small{color:#607994;font-size:11px;line-height:1.5}
.campaign-proof-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;background:#e8f1fd;border:1px solid #d4e4fa;border-radius:18px;padding:20px 23px;margin-top:27px}
.campaign-proof-footer p{max-width:670px;font-size:12px;line-height:1.7;color:#50718d;margin:0}
.campaign-proof-footer strong{color:#133f6e}
.campaign-proof-footer .button{flex:none;font-size:12px;white-space:nowrap;min-height:42px;padding:13px 19px}
/* Prevent floating chat from covering important footer content on phones. */
@media(max-width:1000px){.campaign-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.campaign-proof-grid{gap:13px}.campaign-proof-item{border-radius:15px}.campaign-proof-item>span{padding:13px 12px 15px}.campaign-proof-item strong{font-size:13px}.campaign-proof-item small{font-size:10px}.campaign-proof-footer{flex-direction:column;align-items:flex-start;padding:20px}.campaign-proof-footer .button{white-space:normal;width:100%;justify-content:center;text-align:center}.site-footer{padding-bottom:max(95px,calc(75px + env(safe-area-inset-bottom)))}#work .filters{scrollbar-width:thin}#work .filter{min-height:40px}.campaign-proof .section-heading{gap:12px}}
@media(prefers-reduced-motion:reduce){.campaign-proof-item{transition:none}.campaign-proof-item:hover{transform:none}}

/* Client-requested clarity: service deliverables, not inflated outcome claims. */
.deliverables-section { padding-top: 45px; padding-bottom: 76px; }
.deliverables-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.deliverables-grid article { display: flex; flex-direction: column; min-width: 0; background: #f5f9ff; border: 1px solid #d9e6f7; border-radius: 21px; padding: clamp(21px,2.6vw,34px); }
.deliverables-number { display: block; font-size: 10px; letter-spacing: 1.3px; color: #126db2; font-weight: 800; margin-bottom: 29px; }
.deliverables-grid h3 { color: #112f59; font: 800 clamp(20px,2.1vw,27px)/1.2 Manrope,'DM Sans',sans-serif; letter-spacing: -.6px; margin: 0 0 13px; }
.deliverables-grid p { color: #526e8a; font-size: 13px; line-height: 1.75; margin: 0 0 29px; }
.deliverables-output { display: block; margin-top: auto; padding-top: 13px; border-top: 1px solid #d6e4f3; font-size: 11px; font-weight: 800; color: #295e91; }
.deliverables-footer { margin-top: 21px; display: flex; align-items: center; justify-content: space-between; gap: 20px; background: #eaf2fb; border-radius: 15px; padding: 17px 20px; }
.deliverables-footer p { margin: 0; color: #526e8a; font-size: 12px; }
.deliverables-footer .button { flex: none; font-size: 12px; }
@media(max-width:850px) { .deliverables-grid { grid-template-columns: 1fr 1fr; } .deliverables-grid article:last-child { grid-column: 1 / -1; } }
@media(max-width:600px) { .deliverables-section { padding-top: 25px; padding-bottom: 54px; } .deliverables-grid { grid-template-columns: 1fr; gap: 13px; } .deliverables-grid article:last-child { grid-column: auto; } .deliverables-grid article { padding: 24px 22px; } .deliverables-number { margin-bottom: 15px; } .deliverables-grid p { margin-bottom: 18px; } .deliverables-footer { align-items: stretch; flex-direction: column; } .deliverables-footer .button { justify-content: center; text-align: center; } }
@media(prefers-reduced-motion:reduce) { .deliverables-grid article { animation: none !important; } }


/* Answers and trust: conversion-friendly without unsupported results claims. */
.decision-faq { padding-top: 65px; padding-bottom: 80px; }
.decision-faq-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 15px; }
.decision-faq details { border: 1px solid #d8e6f6; border-radius: 18px; background: #f7faff; padding: 22px 24px; }
.decision-faq summary { display: flex; align-items: start; justify-content: space-between; gap: 17px; cursor: pointer; color: #163b65; font: 800 17px/1.4 Manrope,'DM Sans',sans-serif; letter-spacing: -.35px; list-style: none; }
.decision-faq summary::-webkit-details-marker { display: none; }
.decision-faq summary span { flex: none; color: #1e6baf; font-size: 27px; font-weight: 500; line-height: 1; }
.decision-faq details[open] summary span { transform: rotate(45deg); }
.decision-faq details p { color: #506d89; font-size: 13px; line-height: 1.8; margin-top: 15px; }
.decision-faq details a { display: inline-block; margin-top: 13px; color: #0e60ab; font-size: 12px; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.about-capabilities strong { font-size: clamp(20px, 2.2vw, 30px); white-space: normal; letter-spacing: -.5px; }
@media (max-width: 720px) { .decision-faq { padding-top: 45px; padding-bottom: 55px; } .decision-faq-grid { grid-template-columns: 1fr; } .decision-faq details { padding: 20px; } .decision-faq summary { font-size: 15px; } .about-capabilities strong { font-size: 20px; } }
@media (prefers-reduced-motion: reduce) { .decision-faq summary span { transition: none; } }
