

body:has(.tp-site) .page-header,body:has(.tp-site) .breadcrumb,body:has(.tp-site) #site-header,body:has(.tp-site) #block-site-footer,body:has(.tp-site) #site-footer,body:has(.tp-site) .sub-section,body:has(.tp-site) .entry-footer,body:has(.tp-site) .entry-header,body:has(.tp-site) .vk-mobile-nav-menu-btn{display:none!important}
body:has(.tp-site) .site-body,body:has(.tp-site) .site-body-container,body:has(.tp-site) .main-section,body:has(.tp-site) .entry-body{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;flex:0 0 100%!important}
.tp-site{--ink:#20332e;--paper:#f5f3ed;--gold:#8a6b42;--line:#d9d8cc;--muted:#626a61;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;line-height:1.9;text-align:left;overflow-wrap:anywhere;color-scheme:light}
.tp-site *{box-sizing:border-box}.tp-site h1,.tp-site h2,.tp-site h3,.tp-site p,.tp-site figure,.tp-site ul{margin:0;padding:0;border:0;background:none;box-shadow:none;color:inherit}.tp-site h1:before,.tp-site h1:after,.tp-site h2:before,.tp-site h2:after,.tp-site h3:before,.tp-site h3:after{content:none}.tp-site a{color:inherit;text-decoration:none}.tp-site img{display:block;max-width:100%;height:auto}.tp-site a:focus-visible,.tp-site summary:focus-visible{outline:3px solid #b38b46;outline-offset:5px}.tp-site section[id],.tp-site details[id]{scroll-margin-top:30px}.tp-site .tp-serif{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-weight:500}.tp-site .tp-wrap{max-width:1280px;margin:auto;padding:0 48px}.tp-site .tp-section{padding-top:100px;padding-bottom:100px}.tp-site .tp-eyebrow{display:block;font-size:11px;letter-spacing:.21em;font-weight:600;color:var(--gold);margin-bottom:18px}.tp-site .tp-heading{font-size:clamp(28px,3.2vw,43px);line-height:1.65;letter-spacing:.065em}.tp-site .tp-copy{color:var(--muted);font-size:15px;line-height:2.1}.tp-site .tp-rule{border-top:1px solid var(--line)}.tp-site .tp-btn{display:inline-flex;justify-content:center;align-items:center;gap:24px;min-height:54px;padding:13px 24px;font-size:14px;letter-spacing:.04em;font-weight:600;border:1px solid var(--ink);background:var(--ink);color:#fff;transition:background .2s,color .2s}.tp-site .tp-btn:hover{background:#405447;color:#fff}.tp-site .tp-btn--light{background:var(--paper);border-color:var(--paper);color:var(--ink)}.tp-site .tp-btn--light:hover{background:#e8dfce;color:var(--ink)}.tp-site .tp-btn--outline{background:transparent;color:var(--ink)}.tp-site .tp-btn--outline:hover{background:var(--ink);color:#fff}.tp-site .tp-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.tp-site .tp-textlink{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #a8ac9f;padding:10px 0;font-size:14px}.tp-site .tp-textlink:hover{color:var(--gold)}
.tp-site .tp-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 3.8%;border-bottom:1px solid var(--line)}.tp-site .tp-brand{display:flex;flex-direction:column;line-height:1.4;flex-shrink:0}.tp-site .tp-brand strong{font-family:Georgia,serif;font-size:27px;font-weight:400;letter-spacing:.19em}.tp-site .tp-brand small{font-size:10px;letter-spacing:.14em;margin-top:6px}.tp-site .tp-nav{display:flex;align-items:center;gap:25px;font-size:13px}.tp-site .tp-nav>a:hover{color:var(--gold)}.tp-site .tp-header-contact{display:flex;align-items:center;gap:21px}.tp-site .tp-headphone{font-family:Georgia,serif;font-size:23px;line-height:1.25;white-space:nowrap}.tp-site .tp-headphone small{display:block;font-family:sans-serif;font-size:9px;letter-spacing:.04em;margin-top:4px}.tp-site .tp-mobilemenu{display:none;position:relative}.tp-site .tp-mobilemenu summary{cursor:pointer;padding:10px;border:1px solid var(--line);list-style:none;font-size:12px}.tp-site summary::-webkit-details-marker{display:none}.tp-site .tp-mobilelinks{position:absolute;right:0;top:50px;width:220px;background:var(--paper);border:1px solid var(--line);z-index:10;padding:12px}.tp-site .tp-mobilelinks a{display:block;padding:10px}
.tp-site .tp-hero{position:relative;min-height:670px;display:flex;align-items:center;isolation:isolate;background:#26362f;color:white}.tp-site .tp-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.tp-site .tp-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,31,25,.91) 0%,rgba(16,31,26,.72) 34%,rgba(16,31,26,.18) 70%,rgba(16,31,26,.06));z-index:-1}.tp-site .tp-herocopy{width:100%;padding-top:85px;padding-bottom:95px}.tp-site .tp-hero .tp-eyebrow{color:#e3cfac}.tp-site .tp-hero h1{font-size:clamp(37px,4.4vw,66px);line-height:1.55;letter-spacing:.045em;max-width:790px;margin-bottom:24px}.tp-site .tp-hero .tp-intro{font-size:14px;line-height:2.2;max-width:490px;color:#f0f1e9}.tp-site .tp-hero .tp-btn--outline{border-color:#c4cdc2;color:white}.tp-site .tp-hero .tp-btn--outline:hover{background:rgba(255,255,255,.1)}.tp-site .tp-hero .tp-location{display:block;font-size:12px;letter-spacing:.08em;margin-bottom:23px;color:#fff}.tp-site .tp-image-label{position:absolute;right:24px;bottom:17px;background:rgba(20,32,28,.78);color:white;font-size:10px;padding:3px 9px;letter-spacing:.04em}.tp-site .tp-benefits{display:grid;grid-template-columns:repeat(3,1fr);padding-top:22px;padding-bottom:22px;border-bottom:1px solid var(--line);font-size:13px;text-align:center;letter-spacing:.04em}.tp-site .tp-benefits span+span{border-left:1px solid var(--line)}.tp-site .tp-benefits b{font-weight:500;color:var(--gold);margin-right:9px}
.tp-site .tp-sectionintro{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:38px}.tp-site .tp-sectionintro .tp-copy{max-width:370px}.tp-site .tp-servicegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 25px;align-items:start}.tp-site .tp-service{border-bottom:1px solid var(--line);background:transparent}.tp-site .tp-service>summary{list-style:none;cursor:pointer}.tp-site .tp-service-photo{height:205px;position:relative;overflow:hidden;background:#e3e4db}.tp-site .tp-service-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.tp-site .tp-service summary:hover img{transform:scale(1.035)}.tp-site .tp-service-photo .tp-image-label{bottom:8px;right:8px;font-size:9px}.tp-site .tp-service-title{padding:20px 0 18px;display:grid;grid-template-columns:1fr 32px;gap:4px}.tp-site .tp-service-title small{font-size:10px;letter-spacing:.14em;color:var(--gold);grid-column:1}.tp-site .tp-service-title strong{font-size:24px;line-height:1.6;grid-column:1;font-weight:500;font-family:"Yu Mincho",serif}.tp-site .tp-service-title span{grid-column:2;grid-row:1/4;align-self:center;font-size:24px;font-weight:300;transition:transform .2s}.tp-site .tp-service[open] .tp-service-title span{transform:rotate(45deg)}.tp-site .tp-service-title p{font-size:12px;color:var(--muted);margin-top:5px;grid-column:1}.tp-site .tp-servicedetail{padding:0 0 25px;font-size:14px;color:var(--muted)}.tp-site .tp-servicedetail dl{margin:17px 0}.tp-site .tp-servicedetail dt{color:var(--ink);font-weight:600;font-size:12px;margin-top:16px}.tp-site .tp-servicedetail dd{margin:4px 0 0;font-size:13px;line-height:1.9}.tp-site .tp-servicedetail .tp-btn{width:100%;font-size:13px}.tp-site .tp-servicedetail .tp-textlink{width:100%;margin-bottom:16px}.tp-site .tp-repair-art{height:100%;background:#daddcf;padding:30px;display:flex;flex-direction:column;justify-content:center;position:relative;border:12px solid #e2e5dc}.tp-site .tp-repair-art small{font-size:10px;letter-spacing:.18em}.tp-site .tp-repair-art strong{font-size:30px;line-height:1.5;font-family:"Yu Mincho",serif;font-weight:400;margin-top:12px}.tp-site .tp-repair-art:after{content:"";position:absolute;right:25px;top:28px;height:140px;width:45px;border:1px solid #a4ac96;border-right:4px solid #a4ac96}.tp-site .tp-service-note{font-size:12px;color:var(--muted);margin-top:24px}
.tp-site .tp-works{background:#eaece4}.tp-site .tp-feature{display:grid;grid-template-columns:1.4fr 1fr;gap:56px;align-items:center}.tp-site .tp-comparison{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tp-site .tp-comparison figure{min-width:0}.tp-site .tp-comparison img{width:100%;height:315px;object-fit:contain;background:#daddd3}.tp-site .tp-comparison figcaption{display:flex;align-items:center;gap:10px;font-size:11px;margin-top:10px;color:var(--muted)}.tp-site .tp-comparison figcaption b{font-size:10px;letter-spacing:.1em;color:var(--ink)}.tp-site .tp-feature h3{font-size:28px;line-height:1.8;margin:10px 0 20px}.tp-site .tp-tag{font-size:10px;letter-spacing:.08em;border:1px solid #aeb7a5;padding:5px 10px;display:inline-block}.tp-site .tp-facts{display:flex;gap:22px;margin:25px 0;font-size:12px}.tp-site .tp-facts b{display:block;font-size:17px;font-weight:500}.tp-site .tp-casegrid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:60px}.tp-site .tp-case{display:grid;grid-template-columns:150px 1fr;gap:23px;align-items:center;border-top:1px solid #c8cdbf;padding-top:25px}.tp-site .tp-case img{width:150px;height:138px;object-fit:cover}.tp-site .tp-case small{font-size:10px;color:var(--muted)}.tp-site .tp-case h3{font-size:20px;line-height:1.7;margin:5px 0 12px}.tp-site .tp-case a{font-size:12px;border-bottom:1px solid #aeb7a5}
.tp-site .tp-philosophy{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.tp-site .tp-reasons{list-style:none;margin:0;padding:0}.tp-site .tp-reasons li{display:grid;grid-template-columns:42px 1fr;gap:20px;border-top:1px solid var(--line);padding:24px 0}.tp-site .tp-reasons li>span{font-family:Georgia,serif;color:var(--gold);font-size:22px}.tp-site .tp-reasons h3{font-size:21px;margin-bottom:9px}.tp-site .tp-reasons p{font-size:14px;color:var(--muted)}.tp-site .tp-process{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:40px}.tp-site .tp-step{border-top:1px solid var(--line);padding-top:23px}.tp-site .tp-step small{font-size:11px;color:var(--gold);letter-spacing:.15em}.tp-site .tp-step h3{font-size:20px;margin:14px 0 12px}.tp-site .tp-step p{font-size:13px;color:var(--muted)}.tp-site .tp-faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}.tp-site .tp-faq{border-bottom:1px solid var(--line)}.tp-site .tp-faq:first-child{border-top:1px solid var(--line)}.tp-site .tp-faq summary{cursor:pointer;padding:23px 35px 23px 0;position:relative;list-style:none;font-size:15px}.tp-site .tp-faq summary:after{content:"＋";position:absolute;right:0;top:23px;color:var(--gold)}.tp-site .tp-faq[open] summary:after{content:"−"}.tp-site .tp-faq p{padding:0 22px 25px 0;font-size:14px;color:var(--muted)}
.tp-site .tp-contact{background:var(--ink);color:var(--paper)}.tp-site .tp-contact .tp-eyebrow{color:#dbc39d}.tp-site .tp-contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.tp-site .tp-contact p{font-size:14px;color:#d9dfd3;margin-top:20px}.tp-site .tp-phone{display:block;font-family:Georgia,serif;font-size:clamp(31px,3.6vw,48px);line-height:1.3;letter-spacing:.035em;margin:15px 0 8px}.tp-site .tp-contact-methods>small{display:block;font-size:11px;color:#d0d7c9}.tp-site .tp-contact-methods .tp-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.tp-site .tp-btn--line{background:#dce5d7;border-color:#dce5d7;color:var(--ink)}.tp-site .tp-btn--line:hover{background:#c1d0b7;color:var(--ink)}.tp-site .tp-contact .tp-note{font-size:11px;line-height:1.8;margin-top:16px;color:#c9d1c2}.tp-site .tp-footer{padding-top:45px;padding-bottom:35px;display:grid;grid-template-columns:1fr 1fr;gap:25px}.tp-site .tp-footer p{font-size:12px;color:var(--muted);margin-top:18px}.tp-site .tp-footerlinks{display:flex;justify-content:end;align-items:start;gap:23px;font-size:12px;flex-wrap:wrap}.tp-site .tp-copyright{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;font-size:10px;letter-spacing:.07em;color:var(--muted)}.tp-site .tp-mobilecontact{display:none}
@media(min-width:1600px){.tp-site .tp-hero{min-height:740px}.tp-site .tp-herocopy{max-width:1420px}}
@media(max-width:1180px){.tp-site .tp-nav{gap:17px}.tp-site .tp-headphone{display:none}.tp-site .tp-wrap{padding-left:35px;padding-right:35px}.tp-site .tp-hero{min-height:590px}.tp-site .tp-feature{gap:30px}.tp-site .tp-philosophy{gap:40px}.tp-site .tp-faq-layout{gap:40px}.tp-site .tp-contactgrid{gap:40px}}
@media(max-width:900px){.tp-site .tp-nav{display:none}.tp-site .tp-mobilemenu{display:block}.tp-site .tp-header-contact .tp-btn{display:none}.tp-site .tp-header{padding:20px 28px}.tp-site .tp-section{padding-top:70px;padding-bottom:70px}.tp-site .tp-servicegrid{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-site .tp-sectionintro{align-items:start;flex-direction:column;gap:18px}.tp-site .tp-feature{grid-template-columns:1fr}.tp-site .tp-comparison img{height:350px}.tp-site .tp-feature>div:last-child{max-width:600px}.tp-site .tp-case{grid-template-columns:100px 1fr;gap:15px}.tp-site .tp-case img{width:100px;height:125px}.tp-site .tp-case h3{font-size:17px}.tp-site .tp-philosophy,.tp-site .tp-faq-layout{grid-template-columns:1fr;gap:35px}.tp-site .tp-process{grid-template-columns:repeat(2,1fr);gap:30px}.tp-site .tp-contactgrid{grid-template-columns:1fr;gap:35px}.tp-site .tp-contact-methods{max-width:600px;width:100%}.tp-site .tp-footer{grid-template-columns:1fr}.tp-site .tp-footerlinks{justify-content:start}.tp-site .tp-mobilecontact{position:fixed;bottom:0;left:0;right:0;z-index:9999;display:grid;grid-template-columns:repeat(3,1fr);padding-bottom:env(safe-area-inset-bottom);background:var(--ink);border-top:1px solid #7b8c7a;box-shadow:0 -3px 18px #18251f22}.tp-site .tp-mobilecontact a{color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:64px;font-size:13px;line-height:1.7;font-weight:600}.tp-site .tp-mobilecontact a+a{border-left:1px solid #6f8170}.tp-site .tp-mobilecontact small{font-size:9px;letter-spacing:.04em;font-weight:400;color:#d7dece}.tp-site .tp-mobilecontact a:last-child{background:#e7d8bd;color:var(--ink)}.tp-site .tp-mobilecontact a:last-child small{color:var(--ink)}.tp-site{padding-bottom:calc(64px + env(safe-area-inset-bottom))}}
@media(max-width:600px){.tp-site .tp-wrap{padding-left:23px;padding-right:23px}.tp-site .tp-header{padding:18px 22px}.tp-site .tp-brand strong{font-size:22px;letter-spacing:.13em}.tp-site .tp-brand small{font-size:9px}.tp-site .tp-hero{min-height:650px;align-items:end}.tp-site .tp-hero>img{object-position:62% center}.tp-site .tp-hero:before{background:linear-gradient(0deg,rgba(17,33,27,.98),rgba(17,33,27,.72) 58%,rgba(17,33,27,.12) 100%)}.tp-site .tp-herocopy{padding-top:160px;padding-bottom:55px}.tp-site .tp-hero h1{font-size:36px;letter-spacing:.035em;line-height:1.6;margin-bottom:18px}.tp-site .tp-hero .tp-location{font-size:11px;margin-bottom:17px}.tp-site .tp-hero .tp-eyebrow{font-size:10px;margin-bottom:13px}.tp-site .tp-hero .tp-intro{font-size:12px;max-width:310px}.tp-site .tp-hero .tp-actions{gap:9px;margin-top:22px}.tp-site .tp-hero .tp-btn{padding:12px 14px;font-size:12px;gap:15px;min-height:50px}.tp-site .tp-image-label{font-size:8px;right:12px;bottom:10px}.tp-site .tp-benefits{padding-top:17px;padding-bottom:17px;font-size:10px;line-height:1.7}.tp-site .tp-benefits b{display:block;font-size:12px;margin:0}.tp-site .tp-section{padding-top:58px;padding-bottom:58px}.tp-site .tp-heading{font-size:28px}.tp-site .tp-copy{font-size:13px}.tp-site .tp-servicegrid{gap:24px 15px}.tp-site .tp-service-photo{height:145px}.tp-site .tp-service-title{padding-top:13px;grid-template-columns:1fr 18px}.tp-site .tp-service-title small{font-size:8px;letter-spacing:.07em}.tp-site .tp-service-title strong{font-size:20px}.tp-site .tp-service-title p{font-size:10px;line-height:1.8}.tp-site .tp-service-title span{font-size:19px}.tp-site .tp-servicedetail{font-size:12px}.tp-site .tp-servicedetail dd{font-size:12px}.tp-site .tp-servicedetail .tp-btn{font-size:11px;gap:7px;padding:10px 6px}.tp-site .tp-servicedetail .tp-textlink{font-size:11px;gap:5px}.tp-site .tp-repair-art{padding:13px;border-width:7px}.tp-site .tp-repair-art small{font-size:7px}.tp-site .tp-repair-art strong{font-size:22px}.tp-site .tp-repair-art:after{height:80px;width:20px;right:11px;top:20px}.tp-site .tp-service-photo .tp-image-label{font-size:7px;right:4px;bottom:4px;padding:2px 4px}.tp-site .tp-comparison{gap:8px}.tp-site .tp-comparison img{height:220px}.tp-site .tp-comparison figcaption{font-size:9px;gap:6px}.tp-site .tp-feature h3{font-size:25px}.tp-site .tp-facts{gap:22px}.tp-site .tp-casegrid{grid-template-columns:1fr;gap:25px;margin-top:35px}.tp-site .tp-case{grid-template-columns:115px 1fr}.tp-site .tp-case img{width:115px;height:110px}.tp-site .tp-case h3{font-size:18px}.tp-site .tp-reasons h3{font-size:19px}.tp-site .tp-reasons p{font-size:13px}.tp-site .tp-reasons li{gap:8px;grid-template-columns:35px 1fr}.tp-site .tp-process{gap:25px 20px}.tp-site .tp-step h3{font-size:18px}.tp-site .tp-step p{font-size:12px}.tp-site .tp-faq summary{font-size:14px}.tp-site .tp-faq p{font-size:13px}.tp-site .tp-contact .tp-heading{font-size:29px}.tp-site .tp-contact-methods .tp-btn{font-size:12px;padding:12px 9px;gap:10px}.tp-site .tp-footerlinks{gap:16px}.tp-site .tp-footer{padding-top:35px;padding-bottom:25px}}
@media(prefers-reduced-motion:reduce){.tp-site *{transition:none!important;scroll-behavior:auto!important}}


/* Shared design: all pages, all screen sizes. */
body.taiyo-premium-body{margin:0;background:#f5f3ed}.tp-site{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.tp-site .tp-nav a[aria-current="page"]{border-bottom:1px solid #8a6b42;padding-bottom:6px}.tp-site .tp-mobilecontact{position:fixed;bottom:0;left:0;right:0;z-index:9999;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:env(safe-area-inset-bottom);background:#20332e;border-top:1px solid #71816f;box-shadow:0 -3px 18px #18251f22}.tp-site .tp-mobilecontact a{color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:80px;padding:9px 12px;font-size:16px;line-height:1.7;font-weight:600;text-align:center}.tp-site .tp-mobilecontact a+a{border-left:1px solid #6f8170}.tp-site .tp-mobilecontact small{font-size:12px;font-weight:400;letter-spacing:.04em;color:#d7dece}.tp-site .tp-mobilecontact b{font:inherit;margin-left:8px}.tp-site .tp-mobilecontact a:last-child{background:#e7d8bd;color:#20332e}.tp-site .tp-mobilecontact a:last-child small{color:#20332e}.tp-site .tp-mobilecontact a:hover{filter:brightness(1.13)}.tp-site .tp-subhero{background:#eaece4;border-bottom:1px solid #d9d8cc;padding:80px 0 65px}.tp-site .tp-subhero h1{font-size:clamp(32px,4vw,54px);max-width:1000px;line-height:1.6}.tp-site .tp-subhero .tp-copy{margin-top:24px}.tp-site .tp-skip{position:absolute;left:15px;top:-200px;z-index:10000;padding:12px;background:white;color:#20332e}.tp-site .tp-skip:focus{top:15px}.tp-site .tp-company-intro{display:grid;grid-template-columns:1fr 1fr;gap:65px}.tp-site .tp-company-intro p+p{margin-top:23px}.tp-site .tp-company-table{margin-top:36px}.tp-site .tp-company-table>div{display:grid;grid-template-columns:220px 1fr;gap:30px;padding:25px 0;border-top:1px solid #d9d8cc;font-size:16px}.tp-site .tp-company-table dt{font-weight:500}.tp-site .tp-company-table dd{margin:0;color:#626a61}.tp-site .tp-worksearch{display:grid;grid-template-columns:1fr 1.4fr auto;gap:20px;align-items:end;padding-bottom:32px;border-bottom:1px solid #d9d8cc}.tp-site .tp-worksearch label{display:block;font-size:14px;margin-bottom:8px}.tp-site .tp-worksearch input,.tp-site .tp-worksearch select{width:100%;height:54px;border:1px solid #abb6a3;background:white;border-radius:0;font:inherit;font-size:16px;color:#20332e;padding:10px 12px}.tp-site .tp-worksearch button{cursor:pointer;font:inherit;min-height:54px}.tp-site .tp-results{display:flex;justify-content:space-between;gap:20px;margin:25px 0;font-size:14px}.tp-site .tp-results a{text-decoration:underline}.tp-site .tp-workgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 26px}.tp-site .tp-workcard{min-width:0;border-bottom:1px solid #d9d8cc}.tp-site .tp-workcard figure{aspect-ratio:4/3;overflow:hidden;background:#eaece4}.tp-site .tp-workcard figure img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.tp-site .tp-workcard>a:hover img{transform:scale(1.025)}.tp-site .tp-workcard-body{padding:22px 0 25px}.tp-site .tp-workcard-body small{font-size:12px;color:#8a6b42}.tp-site .tp-workcard-body h2{font-size:23px;line-height:1.75;margin:10px 0 16px}.tp-site .tp-workcard .tp-textlink{width:100%;font-size:14px}.tp-site .tp-no-photo{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#626a61;font-family:Georgia,serif;font-size:24px;letter-spacing:.08em}.tp-site .tp-no-photo small{font-size:14px}.tp-site .tp-empty{grid-column:1/-1;padding:50px 0}.tp-site .tp-empty h2{font-size:24px;margin-bottom:18px}.tp-site .tp-pagination{display:flex;justify-content:center;gap:12px;margin-top:45px;flex-wrap:wrap}.tp-site .tp-pagination a,.tp-site .tp-pagination span{padding:8px 16px;border:1px solid #abb6a3;font-size:16px}.tp-site .tp-pagination .current{background:#20332e;color:white}.tp-site .tp-case-content{max-width:1120px}.tp-site .tp-case-content h2{font-family:"Yu Mincho",serif;font-size:28px;margin:45px 0 22px;line-height:1.6}.tp-site .tp-case-content h3{font-size:22px;margin:30px 0 18px}.tp-site .tp-case-content p{margin-bottom:22px}.tp-site .tp-case-content figure{margin:20px 0}.tp-site .tp-case-content .tr-case__photos figure{margin:0}.tp-site .tp-case-content a{text-decoration:underline}.tp-site .tp-case-content .tr-case__cta{background:#20332e}.tp-site .tp-case-content .tr-case__cta a{background:#e7d8bd;color:#20332e!important}.tp-site .tp-case-content .tr-case{--tr-navy:#20332e;--tr-orange:#8a6b42}.tp-site .tp-contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.tp-site .tp-contact-aside .tp-heading{font-size:29px}.tp-site .tp-contact-option{padding:30px 0;border-bottom:1px solid #d9d8cc}.tp-site .tp-contact-option small{font-size:14px;color:#626a61}.tp-site .tp-contact-option h3{font-size:23px;margin-top:8px}.tp-site .tp-contact-option p{font-size:14px;color:#626a61;margin:12px 0 20px}.tp-site .tp-contact-option .tp-phone{font-size:32px}.tp-site .tp-contact-help{padding-top:35px}.tp-site .tp-contact-help h3{font-size:18px;margin-bottom:14px}.tp-site .tp-contact-help p{font-size:15px;color:#626a61}.tp-site .tp-form-panel{background:#fff;padding:38px;border:1px solid #d9d8cc;scroll-margin-top:25px}.tp-site .tp-form-panel .tp-heading{font-size:30px}.tp-site .tp-form-panel>.tp-copy{margin:15px 0 32px;font-size:15px}.tp-site .tp-existing-form{color:#20332e;font-size:16px}.tp-site .tp-existing-form table{border:0;width:100%;border-collapse:collapse}.tp-site .tp-existing-form th,.tp-site .tp-existing-form td{border:0;background:none;padding:0;text-align:left}.tp-site .tp-existing-form tr{display:block;margin-bottom:24px}.tp-site .tp-existing-form th,.tp-site .tp-existing-form td{display:block;width:100%!important}.tp-site .tp-existing-form th{font-weight:500;font-size:15px;margin-bottom:9px}.tp-site .tp-existing-form input[type="text"],.tp-site .tp-existing-form input[type="email"],.tp-site .tp-existing-form input[type="tel"],.tp-site .tp-existing-form select,.tp-site .tp-existing-form textarea{display:block;width:100%;max-width:100%;border:1px solid #a5b39f;background:#fbfcf8;border-radius:0;box-shadow:none;font:inherit;font-size:16px;line-height:1.7;color:#20332e;padding:12px;min-height:52px}.tp-site .tp-existing-form textarea{min-height:160px;resize:vertical}.tp-site .tp-existing-form input:focus,.tp-site .tp-existing-form select:focus,.tp-site .tp-existing-form textarea:focus{outline:2px solid #8a6b42;outline-offset:2px}.tp-site .tp-existing-form input[type="submit"],.tp-site .tp-existing-form button[type="submit"]{background:#20332e;color:#fff;border:1px solid #20332e;border-radius:0;width:100%;min-height:56px;font:inherit;font-weight:600;cursor:pointer;margin-top:20px;padding:12px}.tp-site .tp-existing-form input[type="submit"]:disabled{opacity:.55;cursor:not-allowed}.tp-site .tp-existing-form input[type="checkbox"]{width:20px;height:20px;vertical-align:middle;accent-color:#20332e}.tp-site .tp-existing-form .wpcf7-not-valid-tip{color:#a9322a;font-size:14px;margin-top:5px}.tp-site .tp-existing-form .wpcf7-response-output{font-size:15px;line-height:1.8;margin:24px 0 0;padding:16px}.tp-site .tp-form-note{font-size:13px;color:#626a61;margin-top:24px}.tp-site .tp-demo-note{padding:14px 16px;background:#f1eadf;font-size:14px;margin-bottom:20px;border:1px solid #d8c6a8}.tp-site .tp-demo-fields{border:0;padding:0;margin:0}.tp-site .tp-demo-fields label{display:block;margin:20px 0;font-size:15px}.tp-site .tp-demo-fields input,.tp-site .tp-demo-fields select,.tp-site .tp-demo-fields textarea{margin-top:8px}.tp-site .tp-copy,.tp-site .tp-reasons p,.tp-site .tp-contact p,.tp-site .tp-step p{font-size:16px}.tp-site .tp-eyebrow{font-size:12px}.tp-site .tp-service-title p,.tp-site .tp-servicedetail dd,.tp-site .tp-servicedetail{font-size:14px}.tp-site .tp-image-label,.tp-site .tp-service-photo .tp-image-label{font-size:12px}.tp-site .tp-hero .tp-intro{font-size:16px}.tp-site .tp-hero .tp-location{font-size:14px}.tp-site .tp-footer p,.tp-site .tp-footerlinks,.tp-site .tp-contact-methods>small{font-size:14px}
@media(max-width:1000px){.tp-site .tp-workgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-site .tp-contact-layout{grid-template-columns:1fr 1.2fr;gap:30px}.tp-site .tp-form-panel{padding:25px}.tp-site .tp-contact-option .tp-phone{font-size:27px}}
@media(max-width:760px){.tp-site .tp-company-intro,.tp-site .tp-contact-layout{grid-template-columns:1fr;gap:35px}.tp-site .tp-company-table>div{grid-template-columns:1fr;gap:10px}.tp-site .tp-worksearch{grid-template-columns:1fr 1fr;gap:16px}.tp-site .tp-worksearch button{grid-column:1/-1}.tp-site .tp-subhero{padding:52px 0 45px}.tp-site .tp-form-panel{padding:24px 19px}.tp-site .tp-mobilecontact b{display:none}.tp-site .tp-mobilecontact a{font-size:14px;min-height:74px;padding:9px 3px}.tp-site .tp-mobilecontact small{font-size:12px;letter-spacing:0}.tp-site{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.tp-site .tp-contact-layout{padding-top:38px}.tp-site .tp-service-photo{height:175px}.tp-site .tp-service-title strong{font-size:21px}.tp-site .tp-service-title small{font-size:12px}.tp-site .tp-service-title p{font-size:14px}.tp-site .tp-service-title{grid-template-columns:1fr 22px}.tp-site .tp-servicedetail .tp-btn{font-size:14px;padding:12px}.tp-site .tp-servicedetail .tp-textlink{font-size:14px}.tp-site .tp-service-title span{font-size:22px}.tp-site .tp-service-note{font-size:14px}.tp-site .tp-hero .tp-eyebrow{font-size:12px}.tp-site .tp-hero .tp-location{font-size:14px}.tp-site .tp-hero .tp-btn{font-size:14px}.tp-site .tp-hero{min-height:710px}.tp-site .tp-herocopy{padding-bottom:65px}}
@media(max-width:520px){.tp-site .tp-workgrid{grid-template-columns:1fr}.tp-site .tp-worksearch{grid-template-columns:1fr}.tp-site .tp-servicegrid{grid-template-columns:1fr}.tp-site .tp-service-photo{height:220px}.tp-site .tp-mobilecontact small{font-size:11px}.tp-site .tp-contact-option .tp-phone{font-size:34px}}
