/* Shared visual treatment based on the supplied Figma PDFs. */
body{background:#111}
.tt-header{
    background:#111;border-color:#272727;border-radius:0;
    margin-top:0;margin-bottom:0;box-shadow:none
}
.tt-header .tt-contact,
.tt-nav>.tt-mobile-contact{
    background:linear-gradient(180deg,#58bd6e,#008b39 55%,#034812);
    color:#fff!important;border-radius:999px
}
.tt-mega{background:#171b18;border-color:#344b39}
.tt-category li a{color:#eef3ee}

.hp,.tr-page{
    --hp-bg:#111;
    --hp-panel:#1b201d;
    --hp-text:#fff;
    --hp-muted:#dce3de;
    background:#111;color:#fff
}
.hp section,.tr-page section{padding-top:64px;padding-bottom:64px}
.hp h1,.tr-page h1{
    font-size:clamp(34px,4vw,58px);line-height:1.15;
    font-weight:700;letter-spacing:-.025em
}
.hp h2,.tr-page h2{
    font-size:clamp(27px,2.7vw,38px);line-height:1.25;
    font-weight:700
}
.hp h3,.tr-page h3{font-size:22px;line-height:1.35}
.hp p,.tr-page p{font-size:17px;line-height:1.75}
.hp-eyebrow,.tr-tag{
    display:inline-block;padding:4px 12px;
    background:linear-gradient(180deg,#58bd6e,#008b39 55%,#034812);
    color:#fff;border-radius:999px;
    font-size:12px;line-height:1.5;letter-spacing:.02em;
    margin-bottom:16px
}
.hp .hp-hero,.tr-page .tr-hero{
    background:radial-gradient(ellipse at 90% 65%,#03481299,transparent 65%),#111
}
.hp-visual{
    background:linear-gradient(145deg,#1b241e,#111);
    border-color:#36553e;border-radius:28px
}
.hp-visual-grid div{background:#151c17;border-color:#36553e}
.hp-visual h2{color:#fff}
.hp .hp-button.primary,.tr-page .tr-button{
    background:linear-gradient(180deg,#58bd6e,#008b39 55%,#034812);
    color:#fff!important;border:1px solid #008e3b;
    border-radius:999px;min-height:48px
}
.hp .hp-button.secondary{border-radius:999px;color:#fff;border-color:#58bd6e}
.hp-card,.tr-card,.tr-steps li{
    border-radius:24px;border-color:#344b39;
    background:#1b201d;box-shadow:none
}
.hp-service-icon{color:#58bd6e}
.hp-card a,.tr-page a:not(.tr-button){color:#94e5a5}
.hp-availability strong{color:#fff}
.hp-process,.tr-alt{background:#111}
.hp-number,.tr-number{color:#008d3d;font-weight:700}

/* Homepage: light process, deliverables, engagement and FAQ sections. */
.hp>section:nth-of-type(3),
.hp>section:nth-of-type(5),
.hp>section:nth-of-type(6),
.hp>section:nth-of-type(7){
    --hp-text:#202622;
    --hp-muted:#414b44;
    background:#f4f5f4;color:#202622
}
.hp>section:nth-of-type(5){background:#fff}
.hp>section:nth-of-type(3) h2,
.hp>section:nth-of-type(5) h2,
.hp>section:nth-of-type(6) h2,
.hp>section:nth-of-type(7) h2,
.hp>section:nth-of-type(3) h3,
.hp>section:nth-of-type(5) h3,
.hp>section:nth-of-type(6) h3{color:#202622}
.hp>section:nth-of-type(5) .hp-card,
.hp>section:nth-of-type(6) .hp-card{
    background:#fff;border:1px solid #e0e5e1
}
.hp>section:nth-of-type(6) .hp-card a{color:#05622a}
.hp-faq details{
    background:#fff;border:1px solid #e0e5e1;
    border-radius:18px;margin:12px 0;padding:18px 22px
}
.hp-faq summary{color:#202622}
.hp-logo-grid{margin-top:24px}
.hp-logo-tile{border-radius:18px}
.hp .hp-cta{background:#e5f5e9}
.hp .hp-cta h2{color:#202622}
.hp .hp-cta p{color:#414b44}

/* Service: white introduction, light capabilities, white scope and form. */
.tr-page>section:nth-of-type(2),
.tr-page>section:nth-of-type(4),
.tr-page>section:nth-of-type(6),
.tr-page>section:nth-of-type(7),
.tr-page>section:nth-of-type(8){
    background:#f4f5f4;color:#202622
}
.tr-page>section:nth-of-type(2),
.tr-page>section:nth-of-type(6),
.tr-page>section:nth-of-type(8){background:#fff}
.tr-page>section:nth-of-type(2) h2,
.tr-page>section:nth-of-type(4) h2,
.tr-page>section:nth-of-type(6) h2,
.tr-page>section:nth-of-type(7) h2,
.tr-page>section:nth-of-type(8) h2,
.tr-page>section:nth-of-type(4) h3{color:#202622}
.tr-page>section:nth-of-type(2) p,
.tr-page>section:nth-of-type(4) p,
.tr-page>section:nth-of-type(6) p,
.tr-page>section:nth-of-type(7) p,
.tr-page>section:nth-of-type(8) p{color:#414b44}
.tr-page>section:nth-of-type(4) .tr-card{
    background:#fff;border-color:#e0e5e1
}
.tr-page .tr-faq details{
    background:#fff;border:1px solid #e0e5e1;
    border-radius:18px;padding:18px 22px;margin:12px 0
}
.tr-page .tr-faq summary{color:#202622}
.tr-page>section:nth-of-type(8) a:not(.tr-button){color:#05622a}

/* Custom form: visible labels, white inputs, PDF-style light panel. */
.tr-contact>.tt-form{
    background:#f4f5f4;border-color:#e0e5e1;
    color:#202622;border-radius:24px
}
.tr-contact .tt-form label{color:#202622}
.tr-contact .tt-form input,
.tr-contact .tt-form textarea{
    background:#fff!important;color:#202622!important;
    border:1px solid #708d78!important;border-radius:10px
}
.tr-contact .tt-form p{color:#414b44}
.tr-contact .tt-form a{color:#05622a}
.tr-contact .tt-form button{
    background:linear-gradient(180deg,#58bd6e,#008b39 55%,#034812);
    color:#fff;border-radius:999px
}
.tt-footer{
    background:radial-gradient(ellipse at 90% 90%,#03481280,transparent 70%),#101512;
    border-top-color:#344b39
}
@media(max-width:767px){
    .hp section,.tr-page section{padding-top:36px;padding-bottom:36px}
    .hp h1,.tr-page h1{font-size:34px}
    .hp h2,.tr-page h2{font-size:27px}
    .hp p,.tr-page p{font-size:16px}
    .hp-card,.tr-card,.tr-steps li{border-radius:20px}
}


/* Figma Poppins typography */
@font-face{
  font-family:'TTech Poppins';
  src:url('/wp-content/themes/ttech-custom/assets/fonts/Poppins-Regular.ttf') format('truetype');
  font-style:normal;font-weight:400;font-display:swap;
}
@font-face{
  font-family:'TTech Poppins';
  src:url('/wp-content/themes/ttech-custom/assets/fonts/Poppins-SemiBold.ttf') format('truetype');
  font-style:normal;font-weight:600;font-display:swap;
}
body,button,input,select,textarea{
  font-family:'TTech Poppins',sans-serif;
}
.hp,.tr-page,.tt-header,.tt-footer{
  font-family:'TTech Poppins',sans-serif;
}
.hp h1,.tr-page h1{
  font-family:'TTech Poppins',sans-serif;
  font-size:clamp(40px,5.2vw,80px);
  font-weight:600;
  line-height:1;
  letter-spacing:0;
}
.hp h2,.hp h3,.tr-page h2,.tr-page h3{
  font-family:'TTech Poppins',sans-serif;
  font-weight:600;
  letter-spacing:0;
}
@media(max-width:600px){
  .hp h1,.tr-page h1{font-size:34px;line-height:1.15}
}


/* Figma typography override */
body .hp,body .tr-page,
body .hp *,body .tr-page *,
body .tt-header *,body .tt-footer *{
  font-family:'TTech Poppins',sans-serif !important;
}
body .hp .hp-hero h1,body .tr-page h1{
  font-family:'TTech Poppins',sans-serif !important;
  font-size:clamp(40px,5.2vw,80px) !important;
  font-weight:600 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
}
body .hp h2,body .hp h3,
body .tr-page h2,body .tr-page h3{
  font-weight:600 !important;
}
@media(max-width:600px){
  body .hp .hp-hero h1,body .tr-page h1{
    font-size:34px !important;
    line-height:1.15 !important;
  }
}


/* Responsive review hero sizing */
body .hp .hp-hero h1{
    font-size:clamp(40px,4vw,64px) !important;
    line-height:1.08 !important;
}
@media(max-width:600px){
    body .hp .hp-hero h1{
        font-size:34px !important;
        line-height:1.15 !important;
    }
}
