:root{
--ptt-red:#d71920;
--ptt-ink:#171717;
--ptt-cream:#f5eee6;
--ptt-soft:#fbfaf8;
--ptt-line:rgba(0,0,0,.09);
--ptt-hero-height-desktop:680px;
--ptt-hero-height-mobile:620px;
--ptt-logo-height-desktop:64px;
--ptt-logo-height-mobile:56px;
--ptt-container:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ptt-ink);font-family:Inter,Arial,sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea{font:inherit}
.ptt-serif{font-family:"DM Serif Display",Georgia,serif}
.ptt-container{width:min(var(--ptt-container),calc(100% - 40px));margin-inline:auto}
.ptt-section-title{font-size:clamp(42px,4vw,64px);line-height:1.04;margin:0}
.ptt-eyebrow{display:flex;align-items:center;gap:12px;color:var(--ptt-red);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.ptt-rule{width:56px;height:2px;background:var(--ptt-red);margin:22px 0 28px}
.ptt-richtext{color:rgba(0,0,0,.62);font-size:16px;line-height:1.85}
.ptt-richtext p{margin:0 0 18px}
.ptt-center{text-align:center} .ptt-site-header{position:sticky;top:0;z-index:999;background:#fff;border-bottom:1px solid var(--ptt-line);box-shadow:0 2px 14px rgba(0,0,0,.035)}
.ptt-header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.ptt-logo img{width:auto;height:var(--ptt-logo-height-desktop);max-height:80px;object-fit:contain;transition:height .2s ease}
.ptt-primary-nav{display:block;font-size:14px}
.ptt-primary-nav .menu{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}
.ptt-primary-nav a{display:block;padding:34px 0 31px;border-bottom:2px solid transparent;transition:.2s}
.ptt-primary-nav a:hover,.ptt-primary-nav .current-menu-item>a{color:var(--ptt-red);border-color:var(--ptt-red)}
.ptt-header-actions{display:flex;align-items:center;gap:18px}
.ptt-lang{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}
.ptt-lang .current{color:var(--ptt-red)}
.ptt-lang .muted{color:rgba(0,0,0,.42)}
.ptt-header-cta{background:var(--ptt-red);color:#fff;padding:14px 20px;font-size:12px;font-weight:700;white-space:nowrap}
.ptt-mobile-toggle{display:none;border:0;background:transparent;font-size:22px;padding:12px;cursor:pointer}
.ptt-mobile-menu{display:none;background:#fff;border-top:1px solid var(--ptt-line);padding:16px 20px 22px}
.ptt-mobile-menu.is-open{display:block}
.ptt-mobile-menu .menu{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.ptt-mobile-menu .ptt-lang{margin-top:18px;padding-top:16px;border-top:1px solid var(--ptt-line)} .ptt-hero{width:100%;overflow:hidden;background:#111}
.ptt-hero-grid{width:100%;display:block;min-height:0}
.ptt-slider{position:relative;width:100%;height:var(--ptt-hero-height-desktop);overflow:hidden;background:#111}
.ptt-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1s ease}
.ptt-slide.is-active{opacity:1}
.ptt-slider-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:46px;height:46px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:#111;box-shadow:0 8px 26px rgba(0,0,0,.16);cursor:pointer}
.ptt-slider-prev{left:22px}.ptt-slider-next{right:22px}
.ptt-slider-dots{position:absolute;z-index:4;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:8px;background:rgba(0,0,0,.18);padding:9px 12px;border-radius:20px;backdrop-filter:blur(6px)}
.ptt-slider-dot{width:8px;height:8px;border:0;border-radius:999px;background:rgba(255,255,255,.58);padding:0;cursor:pointer;transition:.25s}
.ptt-slider-dot.is-active{width:28px;background:#fff} .ptt-about{display:grid;grid-template-columns:1fr 1fr;width:100%;background:#fff}
.ptt-about-image{min-height:650px;overflow:hidden}
.ptt-about-image img{width:100%;height:100%;object-fit:cover}
.ptt-about-content{display:flex;align-items:center;padding:70px clamp(34px,6vw,100px)}
.ptt-about-content-inner{max-width:700px}
.ptt-eyebrow-icon{width:40px;height:40px;border:1px solid rgba(215,25,32,.25);border-radius:50%;display:grid;place-items:center}
.ptt-about .ptt-section-title{margin-top:12px} .ptt-services{display:grid;grid-template-columns:30% 28% 42%;width:100%;background:#fff}
.ptt-services-image{min-height:760px;overflow:hidden;background:var(--ptt-cream)}
.ptt-services-image img{width:100%;height:100%;object-fit:cover}
.ptt-services-intro{display:flex;align-items:center;background:#faf8f5;padding:58px clamp(28px,3.8vw,60px)}
.ptt-circle-red{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--ptt-red);color:#fff}
.ptt-services-list{padding:28px clamp(28px,4vw,68px);background:#fff}
.ptt-service-item{display:grid;grid-template-columns:56px 1fr;gap:18px;padding:28px 0;border-bottom:1px solid var(--ptt-line)}
.ptt-service-icon{width:48px;height:48px;border:1px solid rgba(215,25,32,.26);border-radius:50%;display:grid;place-items:center;color:var(--ptt-red)}
.ptt-service-number{font-size:11px;letter-spacing:.15em;font-weight:700;color:rgba(0,0,0,.28)}
.ptt-service-item p,.ptt-services-note{color:rgba(0,0,0,.62);font-size:16px;line-height:1.75;margin:8px 0 0}
.ptt-services-note{padding:28px 0 8px} .ptt-team{padding:88px 0;background:var(--ptt-cream)}
.ptt-team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:44px 28px;margin-top:48px}
.ptt-team-card{text-align:center}
.ptt-team-open{display:block;width:100%;padding:0;cursor:pointer}
.ptt-team-photo{width:220px;height:220px;border-radius:50%;object-fit:cover;object-position:top;margin:auto;box-shadow:0 20px 55px rgba(0,0,0,.12);transition:.35s}
.ptt-team-open:hover .ptt-team-photo{transform:scale(1.025)}
.ptt-team-card h3{font-size:22px;margin:18px 0 0}
.ptt-round-action{width:38px;height:38px;border-radius:50%;border:1px solid rgba(0,0,0,.18);background:transparent;color:var(--ptt-red);margin-top:12px;cursor:pointer;transition:.2s}
.ptt-round-action:hover{background:var(--ptt-red);border-color:var(--ptt-red);color:#fff}
.ptt-team-bio-source{display:none} .ptt-news{padding:88px 0;background:var(--ptt-soft)}
.ptt-news-head{max-width:820px}
.ptt-news-head .ptt-section-title{margin-top:10px}
.ptt-news-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:38px}
.ptt-news-card{background:#fff;border:1px solid var(--ptt-line)}
.ptt-video-wrap{aspect-ratio:16/9;background:#000}
.ptt-video-wrap iframe{width:100%;height:100%;border:0}
.ptt-news-card-body{padding:24px}
.ptt-news-card h3{font-size:26px;line-height:1.2;margin:0}
.ptt-news-feature{display:grid;grid-template-columns:42% 58%;margin-top:28px;background:#fff;border:1px solid var(--ptt-line)}
.ptt-news-feature-image{min-height:310px;overflow:hidden}
.ptt-news-feature-image img{width:100%;height:100%;object-fit:cover}
.ptt-news-feature-copy{display:flex;align-items:center;padding:38px 46px}
.ptt-news-feature-copy h3{font-size:34px;line-height:1.12;margin:0}
.ptt-news-feature-copy p{color:rgba(0,0,0,.62);line-height:1.8;margin:18px 0 0} .ptt-partners{background:#fff;border-top:1px solid var(--ptt-line);border-bottom:1px solid var(--ptt-line)}
.ptt-partners-grid{width:min(1100px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:40px;align-items:center;padding:30px 0}
.ptt-partner{height:92px;display:flex;align-items:center;justify-content:center}
.ptt-partner img{max-height:74px;max-width:100%;object-fit:contain} .ptt-contact{display:grid;grid-template-columns:1.05fr .85fr 1fr;width:100%;background:#fff}
.ptt-contact-form{background:#232931;color:#fff;padding:64px clamp(30px,5vw,72px)}
.ptt-contact-form-inner{max-width:520px}
.ptt-contact-form h2{font-size:60px;line-height:1;margin:0}
.ptt-contact-accent{width:64px;height:6px;background:var(--ptt-red);margin-top:22px}
.ptt-form{display:grid;gap:14px;margin-top:38px}
.ptt-field{display:flex;align-items:center;background:#fff;border:1px solid rgba(255,255,255,.14);padding:0 16px}
.ptt-field i{width:18px;color:rgba(0,0,0,.36);text-align:center}
.ptt-field input,.ptt-field textarea{width:100%;border:0;background:transparent;outline:0;color:#111;padding:14px 12px;box-shadow:none}
.ptt-field textarea{min-height:150px;resize:vertical}
.ptt-field.textarea{align-items:flex-start}.ptt-field.textarea i{margin-top:17px}
.ptt-consent{display:flex;align-items:flex-start;gap:10px;color:rgba(255,255,255,.66);font-size:12px;line-height:1.6}
.ptt-consent input{margin-top:3px;accent-color:var(--ptt-red)}
.ptt-submit{width:max-content;border:0;background:var(--ptt-red);color:#fff;padding:14px 30px;font-weight:700;cursor:pointer}
.ptt-form-message{padding:12px 14px;background:rgba(255,255,255,.09);font-size:13px;margin-top:18px}
.ptt-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important}
.ptt-contact-info{background:#fff;padding:0 clamp(28px,4vw,52px) 48px}
.ptt-office-image{height:180px;margin:0 calc(clamp(28px,4vw,52px) * -1);overflow:hidden}
.ptt-office-image img{width:100%;height:100%;object-fit:cover}
.ptt-contact-info-inner{max-width:380px;margin:34px auto 0}
.ptt-contact-group{margin-bottom:30px}
.ptt-contact-group h3{font-size:17px;text-transform:uppercase;letter-spacing:.04em;margin:0 0 12px}
.ptt-contact-group a,.ptt-contact-group p{font-size:14px;color:rgba(0,0,0,.62);line-height:1.7;margin:0}
.ptt-contact-group i{color:var(--ptt-red);margin-right:8px}
.ptt-contact-links{display:grid;gap:8px}
.ptt-contact-links .menu{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ptt-contact-links .menu a{font-size:14px;color:rgba(0,0,0,.62)}
.ptt-contact-map{position:relative;min-height:600px;background:#ddd}
.ptt-contact-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0} .ptt-footer{width:100%;background:#f7f3ed;border-top:1px solid var(--ptt-line);padding:22px 0;font-size:12px;color:rgba(0,0,0,.5)}
.ptt-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.ptt-footer-right{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ptt-footer-menu .menu{display:flex;align-items:center;gap:14px;list-style:none;margin:0;padding:0}
.ptt-footer a:hover{color:var(--ptt-red)}
.ptt-footer-divider{color:rgba(0,0,0,.2)} .ptt-modal{position:fixed;inset:0;z-index:1000;background:rgba(17,17,17,.68);display:none;align-items:center;justify-content:center;padding:22px}
.ptt-modal.is-open{display:flex}
.ptt-modal-card{position:relative;width:min(980px,100%);max-height:88vh;background:#fff;overflow:auto;box-shadow:0 28px 80px rgba(0,0,0,.28)}
.ptt-modal-close{position:absolute;z-index:3;right:16px;top:16px;width:42px;height:42px;border:0;border-radius:50%;background:#fff;box-shadow:0 4px 18px rgba(0,0,0,.12);cursor:pointer}
.ptt-modal-grid{display:grid;grid-template-columns:40% 60%;min-height:560px}
.ptt-modal-photo{width:100%;height:100%;min-height:560px;object-fit:cover;object-position:top;background:#eee}
.ptt-modal-copy{padding:58px 52px;overflow:auto}
.ptt-modal-copy h3{font-size:42px;line-height:1.08;margin:12px 0 0}
.ptt-modal-bio{color:rgba(0,0,0,.64);font-size:16px;line-height:1.85}
.ptt-modal-bio p{margin:0 0 16px}.ptt-modal-bio p:last-child{margin-bottom:0}
.ptt-modal-bio ul,.ptt-modal-bio ol{padding-left:22px;margin:0 0 18px}
.ptt-modal-bio a{color:var(--ptt-red);text-decoration:underline} .ptt-page-hero{background:var(--ptt-cream);padding:72px 0 58px;border-bottom:1px solid var(--ptt-line)}
.ptt-page-hero h1{font-size:58px;line-height:1;margin:0}
.ptt-page-content{padding:70px 0 90px}
.ptt-page-content .entry-content{max-width:900px;color:rgba(0,0,0,.68);font-size:16px;line-height:1.85}
.ptt-page-full-content{padding:0;width:100%}
@media(max-width:1100px){
.ptt-primary-nav,.ptt-header-cta{display:none}.ptt-mobile-toggle{display:block}
.ptt-services{grid-template-columns:1fr 1fr}.ptt-services-list{grid-column:1/-1}.ptt-services-image{min-height:560px}
.ptt-team-grid{grid-template-columns:repeat(3,1fr)}
.ptt-contact{grid-template-columns:1fr 1fr}.ptt-contact-map{grid-column:1/-1;min-height:430px}
}
@media(max-width:767px){
.ptt-container{width:min(100% - 28px,var(--ptt-container))}
.ptt-header-inner{min-height:76px}.ptt-logo img{height:var(--ptt-logo-height-mobile);max-height:68px}
.ptt-slider{height:var(--ptt-hero-height-mobile)}
.ptt-about{grid-template-columns:1fr}.ptt-about-image{min-height:420px}.ptt-about-content{padding:52px 24px}
.ptt-services{display:block}.ptt-services-image{min-height:440px;height:440px}.ptt-services-intro,.ptt-services-list{padding:48px 24px}.ptt-service-item{grid-template-columns:52px 1fr}
.ptt-team{padding:62px 0}.ptt-team-grid{grid-template-columns:repeat(2,1fr);gap:36px 18px}.ptt-team-photo{width:150px;height:150px}.ptt-team-card h3{font-size:19px}
.ptt-news{padding:62px 0}.ptt-news-grid,.ptt-news-feature{grid-template-columns:1fr}.ptt-news-feature-copy{padding:28px}.ptt-news-feature-copy h3{font-size:28px}
.ptt-partners-grid{grid-template-columns:repeat(2,1fr);gap:20px}.ptt-partner{height:72px}.ptt-partner img{max-height:60px}
.ptt-contact{display:block}.ptt-contact-form{padding:52px 24px}.ptt-contact-form h2{font-size:48px}.ptt-contact-info{padding:0 24px 40px}.ptt-office-image{margin:0 -24px}.ptt-contact-map{min-height:390px}
.ptt-footer-inner{align-items:flex-start;flex-direction:column}.ptt-footer-menu .menu{flex-wrap:wrap}
.ptt-modal-grid{grid-template-columns:1fr}.ptt-modal-photo{min-height:330px;height:330px}.ptt-modal-copy{padding:34px 26px}.ptt-modal-copy h3{font-size:34px}
}
@media(max-width:460px){.ptt-team-grid{grid-template-columns:1fr}.ptt-team-photo{width:210px;height:210px}} .ptt-page-full-content > p:empty,
.ptt-page-full-content > p:has(> br:only-child){display:none!important;margin:0!important;padding:0!important}
.ptt-page-full-content{margin:0!important}