/* ---------- Base ---------- */
:root{
  --tp-orange:#F26C4F;
  --tp-orange-dark:#E85B3D;
  --tp-cream:#FFF7EC;
  --tp-cream-2:#F6EEDF;
  --tp-teal:#40C6D6;
  --tp-green:#0E7F4E;
  --tp-yellow:#E7F150;
  --tp-pink:#FFC1B5;
  --tp-dark:#2b2b2b;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Poppins',sans-serif;
  background:var(--tp-cream);
  color:var(--tp-dark);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
ul{list-style:none}
button{background:none;border:0;cursor:pointer;color:inherit;font:inherit}

.tp-container{max-width:1280px;margin:0 auto;padding:0 24px}
.tp-section{padding:80px 0}
.tp-eyebrow{font-family:'Caveat',cursive;color:var(--tp-teal);font-size:26px;margin-bottom:4px}
.tp-section-title{font-family:'Fredoka',sans-serif;color:var(--tp-orange);font-weight:700;font-size:clamp(30px,4.5vw,60px);line-height:1;margin-bottom:24px}
.tp-underline-link{font-family:'Fredoka',sans-serif;font-weight:600;color:var(--tp-dark);position:relative;padding-bottom:4px}
.tp-underline-link::after{content:'';position:absolute;left:0;bottom:0;height:2px;width:100%;background:currentColor;transform-origin:right;transition:transform .35s ease}
.tp-underline-link:hover::after{transform-origin:left;transform:scaleX(0)}

.tp-btn-primary{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--tp-orange);color:#fff;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  padding:14px 32px;border-radius:999px;transition:background .25s ease;box-shadow:0 6px 20px -8px rgba(242,108,79,.6)
}
.tp-btn-primary:hover{background:var(--tp-orange-dark)}
.tp-btn-outline{
  display:inline-flex;align-items:center;border:2px solid var(--tp-dark);color:var(--tp-dark);
  font-weight:600;padding:12px 26px;border-radius:999px;transition:all .25s ease;margin-top:32px;
}
.tp-btn-outline:hover{background:var(--tp-dark);color:#fff}

/* ---------- Header ---------- */
.tp-header{
  position:fixed;top:16px;left:50%;transform:translateX(-50%);
  width:calc(100% - 48px);max-width:1500px;z-index:50;
}
.tp-header-inner{
  background:#fff;border-radius:999px;
  box-shadow:0 10px 40px -20px rgba(0,0,0,.25);
  padding:10px 24px 10px 20px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
}
.tp-brand{display:inline-flex;align-items:center;flex-shrink:0}
.tp-brand img{height:52px;width:auto;object-fit:contain;display:block}
.tp-nav{display:flex;gap:34px;align-items:center;position:absolute;left:50%;transform:translateX(-50%)}
.tp-nav-link{font-weight:600;font-size:15px;color:var(--tp-dark);transition:color .25s ease;position:relative}
.tp-nav-link:hover{color:var(--tp-orange)}
.tp-nav-active::before{
  content:'';position:absolute;inset:-8px -14px;border:1.5px solid var(--tp-dark);
  border-radius:999px;transform:rotate(-2deg);
}
.tp-header-icons{display:flex;align-items:center;gap:18px;margin-left:auto}
.tp-icon-btn{color:var(--tp-dark);transition:color .25s ease;display:inline-flex;align-items:center}
.tp-icon-btn:hover{color:var(--tp-orange)}
.tp-book-btn{
  display:inline-flex;align-items:center;background:var(--tp-orange);color:#fff;
  font-weight:700;font-size:13px;letter-spacing:.05em;text-transform:uppercase;
  padding:10px 20px;border-radius:999px;transition:background .25s ease;
}
.tp-book-btn:hover{background:var(--tp-orange-dark)}

/* ---------- Hero ---------- */
.tp-hero{padding-top:130px;padding-bottom:20px;overflow:hidden;background:var(--tp-cream)}
.tp-hero-stage{position:relative;max-width:1600px;margin:0 auto;height:720px;padding:0 16px}
.tp-hero-eyebrow{position:absolute;left:0;right:0;top:4%;text-align:center;font-family:'Caveat',cursive;color:var(--tp-teal);font-size:28px}
.tp-hero-title{
  position:absolute;left:0;right:0;top:9%;text-align:center;
  font-family:'Fredoka',sans-serif;font-weight:700;color:var(--tp-orange);
  font-size:clamp(38px,7.5vw,100px);line-height:.95;padding:0 24px;
}
.tp-hero-play{position:absolute;left:50%;transform:translateX(-50%);top:36%;width:min(68%,1215px);pointer-events:none;user-select:none}
.tp-hero-left{position:absolute;left:4%;bottom:20%;width:min(320px,20vw)}
.tp-hero-star{position:absolute;left:20%;top:20%;width:min(140px,10vw)}
.tp-hero-right{position:absolute;right:4%;bottom:20%;width:min(400px,26vw)}
.tp-hero-squiggle{position:absolute;right:24%;top:44%;width:min(130px,9vw)}
.tp-hero-subtitle{position:absolute;left:0;right:0;bottom:20%;text-align:center;padding:0 24px;color:#555;font-size:16px;max-width:640px;margin:0 auto}
.tp-hero-cta{position:absolute;left:0;right:0;bottom:8%;display:flex;justify-content:center;align-items:center;gap:24px;flex-wrap:wrap;padding:0 24px}
.tp-hero-note{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:rgba(43,43,43,.8)}

@keyframes tp-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.tp-float{animation:tp-float 6s ease-in-out infinite}
.delay-1{animation-delay:.6s}
.delay-2{animation-delay:1.2s}
.delay-3{animation-delay:1.8s}

/* ---------- Categories/Reasons ---------- */
.tp-cat-head{text-align:center;margin-bottom:48px}
.tp-cat-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:24px}
.tp-cat-grid-6{grid-template-columns:repeat(6,1fr)}
.tp-cat{display:flex;flex-direction:column;align-items:center;gap:14px;transition:transform .4s ease;text-align:center}
.tp-cat:hover{transform:translateY(-6px)}
.tp-cat-circle{width:130px;height:130px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center}
.tp-cat-circle img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;mix-blend-mode:multiply}
.tp-cat:hover .tp-cat-circle img{transform:scale(1.08) rotate(-4deg)}
.tp-cat-name{font-family:'Fredoka',sans-serif;font-weight:600;color:var(--tp-orange);font-size:16px;line-height:1.2}

/* ---------- About ---------- */
.tp-about{position:relative;overflow:hidden}
.tp-about-inner{max-width:820px;margin:0 auto;text-align:center}
.tp-about-text{color:#555;font-size:17px;line-height:1.75;margin-top:8px}

/* ---------- Services / Products grid ---------- */
.tp-products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.tp-product{transition:transform .4s ease}
.tp-product:hover{transform:translateY(-6px)}
.tp-product-img{position:relative;background:var(--tp-cream-2);border-radius:16px;overflow:hidden;aspect-ratio:4/5}
.tp-product-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.tp-product:hover .tp-product-img img{transform:scale(1.06)}
.tp-badge{
  position:absolute;top:14px;left:14px;z-index:2;width:56px;height:56px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:var(--tp-orange);
  font-family:'Caveat',cursive;font-size:20px;transform:rotate(-6deg);
}
.tp-service-info{padding-top:18px}
.tp-service-info h3{font-family:'Fredoka',sans-serif;font-weight:600;color:var(--tp-orange);font-size:20px;margin-bottom:6px}
.tp-service-info p{color:#666;font-size:14px;line-height:1.6}

.tp-product-feature{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/5;min-height:420px}
.tp-product-feature img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.tp-product-feature:hover img{transform:scale(1.05)}
.tp-feature-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.75),rgba(0,0,0,.15) 55%,transparent)}
.tp-feature-content{position:absolute;left:28px;right:28px;bottom:28px;color:#fff}
.tp-feature-text{font-family:'Fredoka',sans-serif;font-weight:700;font-size:30px;line-height:1.1;margin-bottom:8px}
.tp-feature-desc{font-size:14px;color:rgba(255,255,255,.9);max-width:280px}

.tp-collections-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px;flex-wrap:wrap;gap:20px}

/* ---------- Marquee ---------- */
.tp-marquee{background:var(--tp-orange);padding:24px 0;overflow:hidden}
.tp-marquee-track{display:flex;gap:48px;align-items:center;white-space:nowrap;animation:tp-scroll 30s linear infinite}
@keyframes tp-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.tp-marquee-track span:not(.tp-dot){font-family:'Fredoka',sans-serif;font-weight:700;color:#fff;font-size:36px}
.tp-dot{width:12px;height:12px;border-radius:50%;background:var(--tp-yellow);display:inline-block;flex:none}

/* ---------- Features ---------- */
.tp-features{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}
.tp-feature h4{font-family:'Fredoka',sans-serif;font-weight:600;color:var(--tp-orange);font-size:18px;margin:12px 0 6px}
.tp-feature p{color:#666;font-size:14px;max-width:230px}
.tp-feature-icon{display:inline-flex;width:56px;height:56px;border-radius:50%;background:var(--tp-yellow);align-items:center;justify-content:center;color:#1a1a1a}

/* ---------- Footer / Contact ---------- */
.tp-footer{background:var(--tp-green);color:#fff;padding-top:64px;padding-bottom:24px;position:relative;overflow:hidden}
.tp-footer::before{content:'';position:absolute;top:-100px;right:-80px;width:360px;height:360px;border-radius:50%;background:rgba(255,255,255,.04)}
.tp-footer::after{content:'';position:absolute;bottom:-80px;left:-60px;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.04)}
.tp-footer .tp-container{position:relative}
.tp-footer-top{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.2)}
.tp-footer-brand-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.tp-footer-brand{background:#fff;padding:10px 16px;border-radius:14px;display:inline-block}
.tp-footer-brand img{height:80px;width:auto;object-fit:contain}
.tp-footer-tagline{font-family:'Caveat',cursive;color:var(--tp-yellow);font-size:28px;max-width:280px;line-height:1.15}
.tp-footer-newsletter{min-width:320px;max-width:420px;flex:1}
.tp-footer-newsletter h4{font-family:'Fredoka',sans-serif;font-weight:600;font-size:22px;margin-bottom:14px}
.tp-newsletter{display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:12px;gap:12px}
.tp-newsletter input{flex:1;background:transparent;border:0;outline:none;color:#fff;font:inherit}
.tp-newsletter input::placeholder{color:rgba(255,255,255,.7)}
.tp-newsletter button{color:#fff;transition:color .25s ease}
.tp-newsletter button:hover{color:var(--tp-yellow)}

.tp-locations{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:48px 0}
.tp-loc{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:24px}
.tp-loc h3{font-family:'Fredoka',sans-serif;font-weight:700;font-size:20px;margin-bottom:6px}
.tp-loc-lead{font-family:'Fredoka',sans-serif;color:var(--tp-yellow);font-weight:600;font-size:14px;margin-bottom:14px}
.tp-loc p{color:rgba(255,255,255,.9);font-size:14px;margin:6px 0;line-height:1.6}
.tp-loc a{transition:color .25s ease}
.tp-loc a:hover{color:var(--tp-yellow)}
.tp-loc-addr{margin:12px 0 !important}
.tp-loc-cafe{font-family:'Fredoka',sans-serif;font-weight:600;color:#fff !important;margin-top:14px !important}

.tp-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:24px;border-top:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.85);font-size:14px}
.tp-socials{display:flex;gap:12px;align-items:center}
.tp-socials a{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.4);display:inline-flex;align-items:center;justify-content:center;transition:background .25s ease}
.tp-socials a:hover{background:rgba(255,255,255,.1)}
.tp-legal-links{display:flex;gap:24px}
.tp-legal-links a:hover{color:var(--tp-yellow)}

/* ---------- Back to top ---------- */
.tp-top-btn{position:fixed;right:24px;bottom:24px;z-index:40;width:48px;height:48px;border-radius:50%;background:var(--tp-yellow);color:#1a1a1a;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 10px 25px -10px rgba(0,0,0,.3);transition:transform .25s ease}
.tp-top-btn:hover{transform:scale(1.1)}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
  .tp-cat-grid,.tp-cat-grid-6{grid-template-columns:repeat(3,1fr)}
  .tp-products-grid{grid-template-columns:repeat(2,1fr)}
  .tp-features{grid-template-columns:repeat(2,1fr)}
  .tp-locations{grid-template-columns:1fr}
}
@media (max-width:768px){
  .tp-nav{display:none}
  .tp-book-btn{padding:8px 14px;font-size:12px}
  .tp-hero-stage{height:560px}
  .tp-cat-grid,.tp-cat-grid-6{grid-template-columns:repeat(2,1fr)}
  .tp-products-grid{grid-template-columns:1fr}
  .tp-features{grid-template-columns:1fr 1fr}
  .tp-footer-top{flex-direction:column;align-items:flex-start}
  .tp-marquee-track span:not(.tp-dot){font-size:26px}
}

/* -------- Inner pages -------- */
.tp-page-hero{position:relative;overflow:hidden;background:var(--tp-cream);padding:150px 0 100px;text-align:left}
.tp-page-hero.tp-center,.tp-page-hero .tp-center{text-align:center}
.tp-page-hero-inner{position:relative;z-index:2}
.tp-page-hero h1{font-family:'Fredoka',sans-serif;font-weight:700;color:var(--tp-orange);font-size:clamp(48px,7vw,110px);line-height:.95}
.tp-breadcrumb{margin-top:24px;font-size:13px;letter-spacing:.15em;text-transform:uppercase;color:var(--tp-dark)}
.tp-breadcrumb a{color:var(--tp-dark);transition:color .25s ease}
.tp-breadcrumb a:hover{color:var(--tp-orange)}
.tp-breadcrumb span{opacity:.7}
.tp-page-hero-sub{margin-top:16px;color:#555;font-size:18px;max-width:640px}
.tp-page-hero-inner.tp-center .tp-page-hero-sub{margin-left:auto;margin-right:auto}
.tp-page-hero-decor{position:absolute;top:60px;right:32px;width:200px;height:200px;opacity:.85}
.tp-page-hero-decor svg{width:100%;height:100%;animation:tp-float 6s ease-in-out infinite}
.tp-wavy-bottom{position:absolute;bottom:-1px;left:0;width:100%;height:80px;display:block}
.tp-center{text-align:center}
.tp-page-hero-inner.tp-center{text-align:center}

/* About: full-width hero photo card + highlights */
.tp-about-hero-photo{background:#fff}
.tp-about-hero-img{border-radius:24px;overflow:hidden;aspect-ratio:16/8;margin-top:-80px;position:relative;z-index:3;box-shadow:0 20px 60px -30px rgba(0,0,0,.35)}
.tp-about-hero-img img{width:100%;height:100%;object-fit:cover}
.tp-about-highlights{background:#fff}
.tp-about-highlights .tp-feature{text-align:center}
.tp-about-highlights .tp-feature p{margin-left:auto;margin-right:auto}
.tp-about-highlights .tp-feature-icon{margin:0 auto;font-size:22px}

/* Story */
.tp-story{background:#fff}
.tp-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.tp-story-card{background:var(--tp-cream-2);border-radius:28px;padding:44px}
.tp-story-title{font-family:'Fredoka',sans-serif;font-weight:700;color:var(--tp-orange);font-size:clamp(28px,3.5vw,44px);line-height:1;margin-bottom:12px}
.tp-story-sub{color:#666;margin-bottom:32px}
.tp-timeline{display:flex;flex-direction:column;gap:28px}
.tp-tl-row{display:flex;align-items:flex-start;gap:24px}
.tp-tl-year{width:80px;height:80px;border-radius:50%;background:var(--tp-pink);color:var(--tp-orange);font-family:'Caveat',cursive;font-size:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tp-tl-row p{margin-top:26px;color:#444;max-width:360px}
.tp-story-img{border-radius:24px;overflow:hidden;aspect-ratio:4/5;min-height:400px}
.tp-story-img img{width:100%;height:100%;object-fit:cover}

/* Orange CTA */
.tp-orange-cta{background:var(--tp-orange);color:#fff;padding:80px 0;text-align:center}
.tp-orange-cta h2{font-family:'Fredoka',sans-serif;font-weight:700;font-size:clamp(28px,4vw,60px);line-height:1.1}
.tp-cta-link{display:inline-block;margin-top:20px;color:#fff;font-family:'Fredoka',sans-serif;font-weight:600;font-size:18px;border-bottom:2px solid #fff;padding-bottom:2px}

/* Testimonials */
.tp-testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:left}
.tp-testi{background:var(--tp-cream-2);border-radius:28px;padding:32px}
.tp-testi-stars{color:var(--tp-yellow);font-size:16px;margin-bottom:16px;letter-spacing:2px}
.tp-testi p{color:#555;line-height:1.75;font-size:14px}
.tp-testi-person{display:flex;align-items:center;gap:16px;margin-top:28px}
.tp-testi-person img{width:48px;height:48px;border-radius:50%;object-fit:cover}
.tp-testi-name{font-family:'Fredoka',sans-serif;font-weight:600;color:var(--tp-orange)}
.tp-testi-role{font-size:11px;letter-spacing:.15em;color:#888;text-transform:uppercase}

/* Services intro */
.tp-services-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.tp-services-intro h3{font-family:'Fredoka',sans-serif;font-weight:700;color:var(--tp-orange);font-size:clamp(24px,3vw,42px);line-height:1.15}
.tp-services-intro p{color:#555;font-size:16px;line-height:1.7}

/* Services grid page */
.tp-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.tp-svc-img{border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:var(--tp-cream-2)}
.tp-svc-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.tp-svc:hover .tp-svc-img img{transform:scale(1.05)}
.tp-svc h4{font-family:'Fredoka',sans-serif;font-weight:700;color:var(--tp-orange);font-size:22px;margin-top:20px}
.tp-svc p{color:#666;margin-top:6px}

/* Full width photo */
.tp-fullphoto{height:500px;overflow:hidden}
.tp-fullphoto img{width:100%;height:100%;object-fit:cover;display:block}

/* Contact */
.tp-contact-hero{padding-top:120px;background:var(--tp-cream)}
.tp-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;min-height:720px}
.tp-contact-left{padding:60px 40px}
.tp-contact-left h1{font-family:'Fredoka',sans-serif;font-weight:700;color:var(--tp-orange);font-size:clamp(48px,7vw,110px);line-height:.95}
.tp-contact-sub{color:#555;max-width:420px;margin-top:24px}
.tp-contact-form{display:flex;flex-direction:column;gap:24px;max-width:420px;margin-top:36px}
.tp-contact-form input,.tp-contact-form textarea{background:transparent;border:0;border-bottom:1px solid var(--tp-orange);padding:12px 0;outline:none;font:inherit;color:var(--tp-dark);resize:none;font-family:inherit}
.tp-contact-form input::placeholder,.tp-contact-form textarea::placeholder{color:#8a8a8a}
.tp-send-btn{align-self:flex-start;position:relative;display:inline-flex;align-items:center;gap:8px;background:transparent;padding:12px 28px;font-weight:600;font-family:'Fredoka',sans-serif;color:var(--tp-dark);border:2px solid var(--tp-dark);border-radius:999px;transform:rotate(-2deg);cursor:pointer;transition:all .25s ease}
.tp-send-btn:hover{background:var(--tp-orange);border-color:var(--tp-orange);color:#fff}
.tp-form-success{background:#DFF3CB;border:1px solid #A8D28C;color:#2f6b2f;padding:12px 18px;border-radius:12px;margin-bottom:20px;max-width:420px}
.tp-contact-right{position:relative;background:var(--tp-cream-2);min-height:420px}
.tp-contact-right img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* FAQ */
.tp-faq-section{background:#fff}
.tp-faq-inner{max-width:820px;margin:0 auto}
.tp-faqs{display:flex;flex-direction:column;gap:16px}
.tp-faq-item{background:var(--tp-cream-2);border-radius:20px;padding:0;overflow:hidden}
.tp-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 28px;cursor:pointer;list-style:none;font-family:'Fredoka',sans-serif;font-weight:600;color:var(--tp-orange);font-size:18px}
.tp-faq-item summary::-webkit-details-marker{display:none}
.tp-faq-toggle{width:36px;height:36px;border-radius:50%;background:var(--tp-yellow);color:#1a1a1a;display:inline-flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;transition:background .25s ease}
.tp-faq-item[open] .tp-faq-toggle{background:var(--tp-orange);color:#fff;transform:rotate(45deg)}
.tp-faq-item p{padding:0 28px 24px;color:#555;line-height:1.7}

/* Fun marquee */
.tp-fun-marquee{background:var(--tp-orange);padding:24px 0;overflow:hidden}
.tp-fun-marquee .tp-marquee-track{display:flex;gap:40px;align-items:center;white-space:nowrap;animation:tp-scroll 30s linear infinite}
.tp-fun-marquee span:not(.tp-dot){font-family:'Fredoka',sans-serif;font-weight:700;color:#fff;font-size:32px}
.tp-fun-marquee .tp-dot{width:16px;height:16px;border-radius:50%;display:inline-block;flex:none}

/* Search dropdown */
.tp-search{display:none;margin-top:12px;background:#fff;border-radius:20px;padding:14px;box-shadow:0 10px 30px -10px rgba(0,0,0,.15)}
.tp-search.open{display:flex;gap:12px;align-items:center}
.tp-search input{flex:1;border:0;outline:none;padding:6px 10px;font:inherit}
.tp-search button{background:var(--tp-orange);color:#fff;padding:8px 16px;border-radius:999px;font-weight:600}

/* Responsive tweaks for inner pages */
@media (max-width:1024px){
  .tp-story-grid,.tp-services-intro,.tp-testi-grid,.tp-services-grid,.tp-contact-grid{grid-template-columns:1fr}
  .tp-services-grid{grid-template-columns:repeat(2,1fr)}
  .tp-testi-grid{grid-template-columns:1fr}
  .tp-contact-right{min-height:360px}
  .tp-page-hero-decor{width:140px;height:140px;top:100px}
}
@media (max-width:768px){
  .tp-services-grid{grid-template-columns:1fr}
  .tp-page-hero{padding-top:130px}
  .tp-contact-left{padding:40px 24px}
  .tp-story-card{padding:28px}
  .tp-tl-year{width:64px;height:64px;font-size:18px}
}
