img, iframe {max-width: 100%; height: auto} html,body{-webkit-text-size-adjust:100%;text-size-adjust:100%} :root { --light: #f7f7f7; --light-comp: #4d4d4d; --dark: #000; --primary: #0F1F43; --secondary: #C2032E; --primary-comp: #fff; --accent: #047EAF; --accent-alt: #f02c41 }.bg-dark { background-color: var(--dark, #000); }.bg-primary { background-color: var(--primary, #0F1F43); }.bg-secondary { background-color: var(--secondary, #C2032E); }.bg-light { background-color: var(--light, #f7f7f7); color: var(--light-comp, #4d4d4d); } html { scroll-padding-top: 100px; scroll-padding-bottom: 100px }body { font-family: "Google Sans", sans-serif; font-size: 1.125rem; line-height: 1.5; text-align: center; }body { color: var(--light-comp, #4d4d4d); }body, header ul, .hero h1, .hero p { padding: 0; margin: 0; }h1, h2, h3, h4, h5, h6, p, th, td, dd, dt, li, blockquote { text-align: left; }h1, h2, h3, h4, h5, h6 { text-wrap: balance; }h1, h2 { color: var(--primary, #0F1F43); }main h1 { font-size: min(3rem, 48px) }main h2 { font-size: min(2.5rem, 40px); }main h3 { font-size: min(1.75rem, 28px); }main h4 { font-size: min(1.25rem, 20px); }main h5 { font-size: 1rem; }img, iframe { max-width: 100%; height: auto; border-radius: 20px; display: block; margin: 0 auto }iframe { display: block; aspect-ratio: auto 16 / 9; width: 100%; margin: 1em auto; }a img, iframe { border: none; }a { transition: ease-in-out .3s; text-underline-offset: 3px }header a, header a:hover, form input[type=submit]:hover, .btn:hover, .contact a:hover { text-decoration: none; }a { color: var(--accent); }a:hover { text-decoration-color: var(--secondary) }hr { border-width: 1px; border-color: var(--light, #f7f7f7); border-style: none none solid; margin: 40px 0; }.imgLeft, .imgRight { max-width: 45%; }.imgLeft { float: left; margin: 10px 4% 2% 0; }.imgRight { float: right; margin: 10px 0 2% 4%; }.clear { clear: both; }.nowrap, a[href^=tel] { white-space: nowrap; }sup { line-height: 0; }.hide { display: none !important; }.center, .ccpaNotice, .hero h1, .hero p, .contact li, .testimonials h2, .testimonials p { text-align: center; }.wrap { display: block; max-width: 1080px; margin: 0 auto; position: relative; }.bg-dark, .bg-primary, .bg-primary a, .bg-secondary, .bg-secondary a, .hero h1, .hero p { color: var(--primary-comp, #fff); }.mid { align-items: center; align-self: center; }.grid { display: grid; grid-gap: 10px clamp(20px, 3vw, 40px); }.grid.half { grid-template-columns: repeat(2,1fr); }.grid.third { grid-template-columns: repeat(3,1fr); }.grid.fourth { grid-template-columns: repeat(4,1fr); }.btnStyle1 { display: inline-block; min-width: 110px; text-align: center; line-height: 1.6; background-color: unset; color: var(--primary-comp, #fff); border: 1px solid #fff; padding: 10px 40px; margin: 10px; border-radius: 3px; transition: ease-in-out .3s; text-decoration: none }.btnStyle1:hover { cursor: pointer; background-color: var(--light-comp, #4d4d4d); text-decoration: none; }.bgimg { position: relative }.bgimg > img:first-of-type { position: absolute; width: 100%; height: 100%; inset: 0; object-fit: cover; z-index: 0; border-radius: 0 }.bgimg:before, .bgimg:after { z-index: 1 }.bgimg > *:not(img) { z-index: 2 }.pad { padding-left: 10px; padding-right: 10px }main li { margin: 4px 0 }img[src*='hero-main'] { object-position: 65% 37.5% }img[src*='team\.jpg'] { object-position: 50% 45% }img[src*='hero-main'] { object-position: 50% 55% } header, footer { font-size: 16px; }.header a { font-size: 16px; }header .wrap { padding: 10px; }header .grid { grid-template-columns: 200px 1fr; grid-gap: 10px }header .grid > div { text-align: right; }nav li { display: inline-block; }nav a { color: var(--primary-comp, #fff); display: block; margin: 4px; padding: 4px; }nav a:hover { color: var(--accent-alt); } .hero, .cta { background-size: cover; background-position: center; position: relative; }.hero:before { content: ""; width: 100%; height: 100%; background-color: rgba(0,0,0,.45); position: absolute; top: 0; left: 0; }.hero { width: 100%; height: 400px; background-color: #000; position: relative; box-sizing: border-box }.hero { min-height: 400px; display: flex; flex-direction: column; justify-content: center; text-align: left; padding: 0 10px; }.hero :has(#homeh1) a { width: 150px; margin: 10px }.hero h1, .hero p { text-shadow: 1px 1px 0 rgba(0,0,0,.9), 2px 2px 4px rgba(0,0,0,.8), 0 0 12px rgba(0,0,0,.7); text-align: left; text-wrap: balance; padding: 0 10px }.hero h1 { line-height: 1.3; }.hero p { font-size: 20px; margin-top: 20px }.hero .btn { margin-top: 20px; } .services .wrap, .team .wrap, .testimonials .wrap, .commonquestions { padding: 40px 0; }.services .grid { margin-top: 8%; }.services .grid.third div { border: 1px solid #f7f7f7; border-radius: 10px; padding: 40px clamp(10px, 2vw, 30px); box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px; }.initial { padding: 3% 5%; background-color: var(--primary-comp, #fff); font-size: 24px; color: var(--primary, #0F1F43); font-weight: bold; }.team ul li { list-style: none; }.team ul li { display: flex; align-items: center; gap: 10px; }.team ul li:last-child { padding-top: 20px; }.tranelogo { max-width: 50%; }.testimonials ul { margin-top: 40px; }.testimonials .icon-tabler-star { color: #FFD700; }.quotes figure { background-color: var(--light, #f7f7f7); position: relative; padding: 10px 20px 30px; border-radius: 20px; margin: 20px 10px; display: grid; }.quotes figure::after { content: ""; position: absolute; bottom: -24px; left: 80%; transform: translateX(-50%); border-width: 25px 15px 0; border-style: solid; border-color: #f7f7f7 transparent transparent transparent; }.quotes figcaption { align-self: end; }.quotes blockquote { margin: 1em clamp(10px, 3vw, 40px) }.maincontact { margin-top: 50px; }.maincontact .wrap { padding: 50px 10px 100px; } .commonquestions > div { background-color: var(--light, #f7f7f7); padding: 20px clamp(15px, 4vw, 50px); margin: 20px 0; border-radius: 20px; }.commonquestions h2, .commonquestions > p { text-align: center; }.anatomy > div { background-color: var(--light, #f7f7f7); padding: 40px 20px; border-radius: 20px; }.expertise { border-radius: 20px; margin: 50px 0; }.expertise h3, .commonquestions h3 { font-size: 20px }.expertise div { padding: 50px 20px 100px; }.expertise img { width: 100%; height: 100%; object-fit: cover; object-position: 25% 50%; border-radius: 20px 0 0 20px; }.expertise h2 { color: var(--primary-comp, #fff); }p.center:has(strong) { max-width: 900px; margin: 0 auto; padding-top: 20px; text-wrap: balance } form { margin: 20px 0; }form .grid { grid-gap: 0 10px; }form label { display: block; text-align: left; font-size: 16px }form :is(label,input,textarea,select) { font-family: "Google Sans", sans-serif; font-size: 16px; }form :is(input,textarea,select) { background-color: var(--primary-comp, #fff); margin-bottom: 10px; padding: 10px; border: 1px solid var(--primary-comp); box-sizing: border-box; width: 100% }form textarea { height: 150px; }form input[type=submit], .btn { width: auto; display: inline-block; min-width: 110px; text-align: center; line-height: 1.6; background-color: var(--secondary, #C2032E); color: var(--primary-comp, #fff); padding: 10px 40px; margin: 10px; border: 1px solid var(--secondary); border-radius: 3px; transition: ease-in-out .3s; text-decoration: none }form input[type=submit] { min-width: 250px; margin: 0; }form input[type=submit]:hover, .btn:hover { cursor: pointer; background-color: var(--light-comp, #4d4d4d); }form input, form textarea, form select, ::placeholder { color: var(--light-comp, #4d4d4d); }form input[type=submit]:hover, .btn:hover { color: var(--primary-comp, #fff); } details { margin: 15px auto; background-color: var(--light, #f7f7f7);; border-radius: 10px; border: 1px solid #e0e0e0 }details[open] summary::after { transform: rotate(180deg); }details[open] summary { background-color: var(--primary, #0F1F43); color: var(--primary-comp, #fff); }summary { cursor: pointer; padding: 20px; background-color: var(--primary, #0F1F43); color: var(--primary-comp, #fff); border-radius: 8px; font-weight: bold; font-size: 1.1rem; transition: background-color 0.3s ease; user-select: none; text-align: center; }summary:hover { background-color: var(--secondary, #C2032E); }details[open] summary { background-color: var(--secondary, #C2032E); border-radius: 8px 8px 0 0; } .faq { max-width: 900px; margin: 40px auto; }.faq summary { display: flex; justify-content: space-between; align-items: center; user-select: none; transition: background-color 0.3s ease; text-align: left }.faq summary:is(:hover,:focus) { background-color: #e8e8e8; color: #000; }.faq summary::after { content: "\25BC"; font-size: 0.8rem; transition: transform 0.3s ease; margin-left: 15px }.faq details div { padding: 20px; border-top: 1px solid #e0e0e0; color: var(--light-comp, #4d4d4d); }.faq details p { margin: 10px 0; text-align: left; }.faq deatils p:last-child { margin-bottom: 0; } footer { margin-top: 100px; }footer h2 { color: var(--light, #fff); font-size: 16px; text-align: left; }footer ul { margin-left: 0; padding: 0; }footer li { list-style: none; }footer a { display: block; }footer li a { margin: 4px 0; padding: 4px 0 }footer .grid.fourth p { text-wrap: balance }footer .bg-primary .wrap { padding: 40px 10px }.social { display: flex; gap: 8px; }.social li { list-style: none; }.ccpaNotice { text-align: right !important; }.subfoot { padding: 0 10px }.subfoot .grid { grid-template-columns: 1fr 150px }.subfoot img { border-radius: 0; }.check { padding: 30px 40px; list-style: none; }.check li { padding-left: 30px; position: relative; }.check li:before { content: "✓"; position: absolute; left: 0; color: #0F1F43; font-weight: bold; font-size: 18px; }.grid-item { border: 2px solid #ddd; border-radius: 8px; padding: 2rem; background-color: #f9f9f9; transition: all 0.3s ease; }.grid-item:hover { border-color: #0F1F43; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); }.grid-item h4 { color: #333; margin-top: 0; margin-bottom: 1rem; font-size: 1.3rem; }.grid-item p { color: #555; line-height: 1.6; margin: 0.5rem 0; }.grid-item ul { margin: 1rem 0; padding-left: 1.5rem; }.grid-item li { color: #555; margin: 0.5rem 0; line-height: 1.6; } .reviews-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; margin: 40px 0; padding: 20px 0; }.review-card { background-color: var(--light, #f7f7f7); border-radius: 10px; padding: 25px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); transition: all 0.3s ease; border-left: 4px solid var(--secondary, #C2032E); display: flex; flex-direction: column; }.review-card:hover { box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15); transform: translateY(-2px); }.review-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 12px; }.review-header h4 { margin: 0; color: var(--primary, #0F1F43); font-size: 1.1rem; }.review-date { color: var(--light-comp, #4d4d4d); font-size: 0.85rem; white-space: nowrap; margin-left: 10px; }.review-rating { display: flex; gap: 3px; margin-bottom: 12px; }.review-rating::before { content: ""; display: flex; gap: 3px; }.review-rating.rating-5::before { content: "★ ★ ★ ★ ★"; color: #FFD700; font-size: 0.9rem; letter-spacing: 1px; }.review-rating.rating-4::before { content: "★ ★ ★ ★ ☆"; color: #FFD700; font-size: 0.9rem; letter-spacing: 1px; }.review-text { color: var(--light-comp, #4d4d4d); line-height: 1.6; margin: 0; text-align: left; flex-grow: 1; font-size: 0.95rem; } @media(max-width:999px) {} @media(max-width:767px) { header .grid, .team .grid, .subfoot .grid { grid-template-columns: 1fr; } header .grid > div, footer :is(h2,li,p) { text-align: center; } nav ul { text-align: center; } .grid.half, .grid.third, .grid.fourth { grid-template-columns: 1fr; } footer .grid.fourth { grid-template-columns: 1fr 1fr } footer .grid.fourth :is(div:first-of-type,div:last-of-type) { grid-column: 1 / -1 } footer .bg-primary .wrap { padding: 40px 10px 20px } .team ul li:nth-of-type(3) { display: flex; justify-content: center; align-items: center; } .expertise img { border-radius: 20px 20px 0 0 } .subfoot .grid { padding-bottom: 10px }} @media(max-width:700px) {} @media(max-width:600px) {} @media(max-width:500px) { main h1 { font-size: min(2.5rem, 40px) } main h2 { font-size: min(2.125rem, 34px); } main h3 { font-size: min(1.5rem, 24px); } main h4 { font-size: min(1rem, 18px); } body .hero { min-height: 300px; height: unset; padding: 40px 5px } .hero:has(#homeh1) { height: unset; padding: 80px 5px } body .post.post .postThumbnail { margin-top: 0; height: 250px }} @media(max-width:400px) { footer .grid.fourth { grid-template-columns: 1fr } header a[href^=tel] { white-space: normal; text-wrap: balance; width: 200px } .quotes figure { margin: 10px 0; padding: 10px 10px 30px }}