/* The selected HTML design, adapted to the real Flatsome/plugin document. */
.tp-brand-shell .tp-brand-service-line {border-bottom: 1px solid var(--tp-brand-line); font-size: 12px; color: var(--tp-brand-muted);}
.tp-brand-shell .tp-brand-service-line > div {display: flex; justify-content: space-between; gap: 24px; padding: 8px 40px; max-width: 1320px; margin-inline: auto;}
.tp-brand-shell .tp-brand-service-line a {color: inherit;}
.tp-brand-shell:has(.tp-new-page) #main > .page-wrapper {padding: 0;}
.tp-brand-shell:has(.tp-new-page) #main > .page-wrapper > .row-main {max-width: none;}
.tp-brand-shell:has(.tp-new-page) #main > .page-wrapper > .row-main > .col {padding: 0;}
.tp-brand-shell #main .tp-new-page {font-size: 16px; line-height: 1.7;}
.tp-brand-shell #main .tp-new-page :is(h1,h2,h3) {margin: 0 0 20px; line-height: 1.13; font-weight: 800; text-wrap: balance;}
.tp-brand-shell #main .tp-new-page h1 {font-size: 64px;}
.tp-brand-shell #main .tp-new-page h2 {font-size: 40px;}
.tp-brand-shell #main .tp-new-page h3 {font-size: 22px;}
.tp-brand-shell #main .tp-new-page p {margin: 0 0 20px; color: var(--tp-brand-muted); line-height: 1.7;}
.tp-brand-shell #main .tp-new-page a {color: var(--tp-brand-ink);}
.tp-brand-shell #main .tp-new-wrap {width: 100%; max-width: 1320px; padding-inline: 40px; margin-inline: auto;}
.tp-brand-shell #main .tp-new-band {padding-block: 80px;}
.tp-brand-shell #main .tp-new-band header {max-width: 850px; margin-bottom: 40px;}
.tp-brand-shell #main .tp-new-band header h2 {margin-bottom: 20px;}
.tp-brand-shell #main .tp-new-soft {background: var(--tp-brand-soft);}
.tp-brand-shell #main .tp-new-eyebrow {font-size: 12px; font-weight: 800; color: var(--tp-brand-ink); margin-bottom: 20px;}
.tp-brand-shell #main .tp-new-actions {display: flex; gap: 16px; flex-wrap: wrap; align-items: center;}
.tp-brand-shell #main .tp-new-button {display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 56px; padding: 14px 24px; border: 1px solid transparent; border-radius: 7px; background: var(--tp-brand-yellow); color: var(--tp-brand-ink); font-size: 15px; font-weight: 800; line-height: 1.4; text-decoration: none;}
.tp-brand-shell #main .tp-new-button i {font-size: 20px; flex: 0 0 18px; text-align: right;}
.tp-brand-shell #main .tp-new-button:hover {background: var(--tp-brand-ink); color: var(--tp-brand-yellow);}
.tp-brand-shell #main .tp-new-button--secondary {background: transparent; border-color: var(--tp-brand-ink);}
.tp-brand-shell #main .tp-new-text-link {display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: 6px; font-weight: 800; font-size: 15px;}
.tp-brand-shell #main .tp-new-fine {font-size: 13px; margin-top: 20px;}

.tp-brand-shell #main .tp-new-hero {position: relative; min-height: 590px; isolation: isolate; overflow: hidden;}
.tp-brand-shell #main .tp-new-hero-photo {position: absolute; inset: 0 0 0 auto; height: 100%; width: 50%; object-fit: cover; object-position: 76% 50%; z-index: -1;}
.tp-brand-shell #main .tp-new-hero-inner {padding-block: 50px; min-height: 590px; display: flex; align-items: center;}
.tp-brand-shell #main .tp-new-hero-copy {max-width: 575px; width: 48%;}
.tp-brand-shell #main .tp-new-hero-copy > p {max-width: 500px; color: var(--tp-brand-ink); font-size: 17px;}
.tp-brand-shell #main .tp-new-hero-copy .tp-new-eyebrow {font-size: 12px; margin-bottom: 28px;}
.tp-brand-shell #main .tp-new-hero mark {background: var(--tp-brand-yellow); color: inherit; padding: 0 6px; box-decoration-break: clone;}
.tp-brand-shell #main .tp-new-hero-price {display: flex; align-items: center; gap: 18px; margin: 32px 0;}
.tp-brand-shell #main .tp-new-hero-price strong {font-size: 40px; line-height: 1.1; white-space: nowrap;}
.tp-brand-shell #main .tp-new-hero-price span {font-size: 13px; line-height: 1.6; max-width: 200px;}
.tp-brand-shell #main .tp-new-hero-copy .tp-new-hero-location {margin: 20px 0 0; font-size: 13px;}
.tp-brand-shell #main .tp-new-facts {padding-block: 0;}
.tp-brand-shell #main .tp-new-facts-grid {display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); padding-block: 32px; border-bottom: 1px solid var(--tp-brand-line); gap: 32px;}
.tp-brand-shell #main .tp-new-facts-grid > div {border-right: 1px solid var(--tp-brand-line); padding-right: 20px;}
.tp-brand-shell #main .tp-new-facts-grid > div:last-child {border: 0;}
.tp-brand-shell #main .tp-new-facts-grid strong {display: block; font-size: 18px; margin-bottom: 8px;}
.tp-brand-shell #main .tp-new-facts-grid span {display: block; font-size: 13px; color: var(--tp-brand-muted);}
.tp-brand-shell #main .tp-new-equipment {display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 72px; align-items: center;}
.tp-brand-shell #main .tp-new-equipment-photo {background: var(--tp-brand-paper); aspect-ratio: 1.1; overflow: hidden;}
.tp-brand-shell #main .tp-new-equipment-photo img {display: block; width: 100%; height: 100%; object-fit: contain;}
.tp-brand-shell #main .tp-new-checklist {list-style: none; padding: 0; margin: 24px 0 28px;}
.tp-brand-shell #main .tp-new-checklist li {display: flex; align-items: flex-start; gap: 12px; margin: 0 0 12px;}
.tp-brand-shell #main .tp-new-checklist i {color: var(--tp-brand-ink); font-size: 18px; padding-top: 3px;}
.tp-brand-shell #main .tp-new-process-grid {display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 32px;}
.tp-brand-shell #main .tp-new-process-grid article {border-top: 1px solid var(--tp-brand-line); padding-top: 24px; min-width: 0;}
.tp-brand-shell #main .tp-new-process-grid article > i {display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 7px; background: var(--tp-brand-yellow); font-size: 23px; margin-bottom: 24px;}
.tp-brand-shell #main .tp-new-process-grid h3 {font-size: 20px;}
.tp-brand-shell #main .tp-new-process-grid p {font-size: 15px; margin: 0;}
.tp-brand-shell #main .tp-new-prices {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px;}
.tp-brand-shell #main .tp-new-prices article {padding: 28px; border: 1px solid var(--tp-brand-line); border-top: 4px solid var(--tp-brand-yellow); border-radius: 8px;}
.tp-brand-shell #main .tp-new-prices p {font-size: 16px;}
.tp-brand-shell #main .tp-new-prices strong {font-size: 44px; line-height: 1.2; display: block;}
.tp-brand-shell #main .tp-new-prices small {font-size: 15px; font-weight: 500; color: var(--tp-brand-muted);}
.tp-brand-shell #main .tp-new-price-note {display: flex; justify-content: space-between; gap: 24px; flex-wrap: wrap; align-items: center; margin-top: 20px;}
.tp-brand-shell #main .tp-new-price-note p {margin: 0;}
.tp-brand-shell #main .tp-new-info-grid {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px;}
.tp-brand-shell #main .tp-new-info-grid--four {grid-template-columns: repeat(4,minmax(0,1fr));}
.tp-brand-shell #main .tp-new-info-grid > article {border-top: 1px solid var(--tp-brand-line); padding-top: 24px; min-width: 0;}
.tp-brand-shell #main .tp-new-info-grid > article > i {display: block; font-size: 25px; color: var(--tp-brand-ink); margin-bottom: 20px;}
.tp-brand-shell #main .tp-new-info-grid p {font-size: 15px; margin-bottom: 0;}
.tp-brand-shell #main .tp-new-review-invite {display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; align-items: center; padding-top: 24px; margin-top: 24px; border-top: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tp-new-review-invite p {font-size: 14px; margin: 0;}
.tp-brand-shell #main .tp-new-page .tpct-reviews {font-family: inherit;}
.tp-brand-shell #main .tp-new-page .tpct-review {background: var(--tp-brand-paper);}
.tp-brand-shell #main .tp-new-blog .row {max-width: none; margin-inline: -12px !important;}
.tp-brand-shell #main .tp-new-blog .col {padding-inline: 12px;}
.tp-brand-shell #main .tp-new-blog .box {background: transparent; box-shadow: none;}
.tp-brand-shell #main .tp-new-blog .box-image .image-cover {padding-top: 62.5% !important; background: var(--tp-brand-soft);}
.tp-brand-shell #main .tp-new-blog .box-image img {object-fit: contain;}
.tp-brand-shell #main .tp-new-blog .box-text {padding: 20px 0; text-align: left;}
.tp-brand-shell #main .tp-new-blog .post-title {font-size: 21px; line-height: 1.3; font-weight: 700; margin: 0 0 8px; color: var(--tp-brand-ink);}
.tp-brand-shell #main .tp-new-blog .from_the_blog_excerpt {font-size: 15px; line-height: 1.6;}
.tp-brand-shell #main .tp-new-blog :is(.is-divider,.badge) {display: none;}
.tp-brand-shell #main .tp-new-dark {background: var(--tp-brand-dark); color: var(--tp-brand-on-dark);}
.tp-brand-shell #main .tp-new-dark :is(p,a,.tp-new-eyebrow) {color: var(--tp-brand-muted-on-dark);}
.tp-brand-shell #main .tp-new-dark h2 {font-family: var(--tp-brand-accent-font) !important; font-size: 52px; color: var(--tp-brand-on-dark);}
.tp-brand-shell #main .tp-new-help-grid {display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 100px;}
.tp-brand-shell #main .tp-new-help-grid nav {display: grid; grid-template-columns: 1fr; align-content: start;}
.tp-brand-shell #main .tp-new-help-grid nav a {display: flex; justify-content: space-between; gap: 20px; align-items: center; min-height: 56px; padding-block: 12px; border-bottom: 1px solid var(--tp-brand-muted); font-size: 16px;}
.tp-brand-shell #main .tp-new-help-grid nav a:hover {color: var(--tp-brand-yellow);}
.tp-brand-shell #main .tp-new-dark .tp-new-help-phone {display: inline-flex; min-height: 44px; align-items: center; font-size: 28px; font-weight: 800; color: var(--tp-brand-yellow);}
.tp-brand-shell #main .tp-new-dark a:focus-visible {outline-color: var(--tp-brand-yellow);}
.tp-brand-shell #main .tp-new-message {background: var(--tp-brand-yellow); padding-block: 48px;}
.tp-brand-shell #main .tp-new-message-inner {display: flex; align-items: center; justify-content: space-between; gap: 48px;}
.tp-brand-shell #main .tp-new-message-inner > div:first-child {max-width: 640px;}
.tp-brand-shell #main .tp-new-message h2 {font-family: var(--tp-brand-accent-font) !important; font-size: 52px; font-weight: 700; margin: 0 0 12px;}
.tp-brand-shell #main .tp-new-message p {color: var(--tp-brand-ink); margin: 0;}
.tp-brand-shell #main .tp-new-message .tp-new-button {background: var(--tp-brand-ink); color: var(--tp-brand-yellow); border-radius: 0; white-space: nowrap;}
.tp-brand-shell #main .tp-new-message .tp-new-button--secondary {background: transparent; color: var(--tp-brand-ink); border-color: var(--tp-brand-ink);}

.tp-brand-shell #main .tp-new-intro {padding-block: 52px 36px;}
.tp-brand-shell #main .tp-new-page-intro {max-width: 900px; margin-bottom: 0;}
.tp-brand-shell #main .tp-new-page-intro > p:first-child {font-size: 12px; font-weight: 800; color: var(--tp-brand-ink);}
.tp-brand-shell #main .tp-new-page-intro > p:last-child {font-size: 18px; max-width: 760px; margin-bottom: 0;}
.tp-brand-shell #main .tp-new-contact {padding-block: 8px 64px;}
.tp-brand-shell #main .tp-new-contact-grid {display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.15fr); gap: 24px; align-items: stretch;}
.tp-brand-shell #main .tp-new-contact-panel {background: var(--tp-brand-yellow); padding: 36px; border-radius: 8px;}
.tp-brand-shell #main .tp-new-contact-panel p {color: var(--tp-brand-ink);}
.tp-brand-shell #main .tp-new-contact-panel h2 {font-size: 32px;}
.tp-brand-shell #main .tp-new-contact-direct {padding-top: 28px; margin-top: 28px; border-top: 1px solid var(--tp-brand-ink);}
.tp-brand-shell #main .tp-new-contact-direct a {display: flex; align-items: center; min-height: 44px; font-weight: 800; overflow-wrap: anywhere;}
.tp-brand-shell #main .tp-new-contact-direct a[href^="tel:"] {font-size: 28px;}
.tp-brand-shell #main .tp-new-contact-direct p:last-child {font-size: 14px; margin: 0;}
.tp-brand-shell #main .tp-new-location-panel {position: relative; min-width: 0; min-height: 480px; margin: 0; border: 1px solid var(--tp-brand-line); border-radius: 8px; overflow: hidden; background: var(--tp-brand-soft);}
.tp-brand-shell #main .tp-new-location-panel > img {position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center;}
.tp-brand-shell #main .tp-new-map-pin {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -100%); color: var(--tp-brand-ink); font-size: 44px; line-height: 1; filter: drop-shadow(0 2px 2px white);}
.tp-brand-shell #main .tp-new-location-panel figcaption {position: absolute; inset: auto 0 0; display: grid; gap: 4px; padding: 16px 20px; background: var(--tp-brand-paper); border-top: 1px solid var(--tp-brand-line); font-size: 14px; line-height: 1.5;}
.tp-brand-shell #main .tp-new-location-panel figcaption strong {font-size: 18px;}
.tp-brand-shell #main .tp-new-location-panel figcaption > span {color: var(--tp-brand-muted);}
.tp-brand-shell #main .tp-new-location-panel figcaption a {font-size: 12px; text-decoration: underline; text-underline-offset: 3px; justify-self: start;}
.tp-brand-shell #main .tp-new-contact-company {display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 80px;}
.tp-brand-shell #main .tp-new-detail {border-block: 1px solid var(--tp-brand-line); margin-top: 24px;}
.tp-brand-shell #main .tp-new-detail summary {min-height: 56px; padding-block: 16px; font-weight: 800; cursor: pointer;}
.tp-brand-shell #main .tp-new-detail > div {padding-bottom: 24px; color: var(--tp-brand-muted); font-size: 15px;}
.tp-brand-shell #main .tp-new-story-grid {display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 72px; align-items: center;}
.tp-brand-shell #main .tp-new-story-grid img {display: block; width: 100%; aspect-ratio: 1.2; object-fit: cover; border-radius: 14px;}
.tp-brand-shell #main .tp-new-story-photo img {height: auto; aspect-ratio: 4 / 3; object-fit: contain; object-position: center;}
.tp-brand-shell #main .tp-new-story-grid article {border-top: 1px solid var(--tp-brand-line); padding: 24px 0;}
.tp-brand-shell #main .tp-new-link-grid {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px;}
.tp-brand-shell #main .tp-new-link-card {display: grid; grid-template-columns: minmax(0,1fr) 24px; padding: 28px; border: 1px solid var(--tp-brand-line); border-radius: 8px; align-items: start;}
.tp-brand-shell #main .tp-new-link-card > i:first-child {grid-column: 1 / -1; font-size: 25px; margin-bottom: 24px;}
.tp-brand-shell #main .tp-new-link-card h2 {font-size: 22px; margin-bottom: 12px;}
.tp-brand-shell #main .tp-new-link-card p {grid-column: 1 / -1; margin-bottom: 0; font-size: 15px;}
.tp-brand-shell #main .tp-new-link-card > i:last-child {grid-column: 2; grid-row: 2; font-size: 22px; align-self: center;}
.tp-brand-shell #main .tp-new-link-card:hover {border-color: var(--tp-brand-ink); background: var(--tp-brand-soft);}
.tp-brand-shell #main .tp-new-service {padding-top: 16px;}
.tp-brand-shell #main .tp-new-service-grid {display: grid; grid-template-columns: minmax(0,0.8fr) minmax(0,1.2fr); gap: 48px; align-items: center;}
.tp-brand-shell #main .tp-new-service-photo {min-width: 0;}
.tp-brand-shell #main .tp-new-service-photo img {display: block; width: 100%; height: auto; object-fit: contain;}
.tp-brand-shell #main .tp-new-service-prices {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px;}
.tp-brand-shell #main .tp-new-service-prices article {display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--tp-brand-line); border-top: 4px solid var(--tp-brand-yellow); border-radius: 8px; padding: 24px; background: var(--tp-brand-paper);}
.tp-brand-shell #main .tp-new-service-prices article > div {font-weight: 800; font-size: 28px; margin-bottom: 12px;}
.tp-brand-shell #main .tp-new-service-prices h3 {font-size: 20px; margin-bottom: 12px;}
.tp-brand-shell #main .tp-new-service-prices p {font-size: 15px; margin-bottom: 8px;}
.tp-brand-shell #main .tp-new-service-prices a {display: inline-flex; align-items: center; min-height: 44px; margin-top: auto; font-size: 14px; text-decoration: underline; text-underline-offset: 4px;}
.tp-brand-shell #main .tp-new-catalog .row {max-width: none;}
.tp-brand-shell #main .tp-new-context-band {padding-block: 40px 56px; border-top: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tp-new-context-band .tpia-summary-box {margin: 0; padding: 0; border: 0;}

/* Reuse the existing side-arrow/swipe behavior without a second carousel script. */
.tp-brand-shell #main .tp-new-page #klientide-arvustused.tp-reviews-section {padding: 0; max-width: none; margin: 0; background: transparent;}
.tp-brand-shell #main .tp-new-page #klientide-arvustused h2 {font-size: 40px;}
.tp-brand-shell #main .tp-new-page .tpct-review__author > .tpct-review__initial {display: inline-flex; align-items: center; justify-content: center; flex: 0 0 42px; width: 42px; height: 42px; padding: 0; font-size: 16px; line-height: 1; text-align: center;}

/* Guide copy stays intact while the shared reading layout replaces builder chrome. */
.tp-brand-shell #main .tp-new-guide-intro {padding-block: 64px 40px; border-bottom: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tp-new-guide-intro > h1 {max-width: 1000px; margin-block: 20px 24px; font-size: 52px; line-height: 1.12;}
.tp-brand-shell #main .tp-new-guide-intro > p {max-width: 860px; margin: 0; font-size: 18px; line-height: 1.7;}
.tp-brand-shell #main .tp-new-guide-layout {display: grid; grid-template-columns: minmax(0,1fr) 272px; gap: 64px; align-items: start; padding-block: 40px 64px;}
.tp-brand-shell #main .tp-new-guide-copy {min-width: 0;}
.tp-brand-shell #main .tp-new-guide .tp-new-guide-copy :is(p,li) {font-size: 16px; line-height: 1.8;}
.tp-brand-shell #main .tp-new-guide-preparation {margin-bottom: 32px;}
.tp-brand-shell #main .tp-new-guide-illustration {margin: 24px 0 32px;}
.tp-brand-shell #main .tp-new-guide-illustration > img {position: static; display: block; max-width: 100%; width: auto; height: auto; max-height: 360px; margin-inline: auto; object-fit: contain;}
.tp-brand-shell #main .tp-new-guide-icon > img {width: 48px; height: 48px; margin-inline: 0;}
.tp-brand-shell #main .tp-new-guide-copy > h4 {font-size: 18px; line-height: 1.5; margin-block: 24px 16px;}
.tp-brand-shell #main .tp-new-guide-copy > h2 {font-size: 28px; margin-block: 32px 16px;}
.tp-brand-shell #main .tp-new-guide-copy .ux-menu {margin-block: 24px;}
.tp-brand-shell #main .tp-new-guide-copy .ux-menu-link {padding-block: 12px; border-bottom: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tp-new-guide-prices {margin: 0 0 32px;}
.tp-brand-shell #main .tp-new-guide-prices > div {display: flex; justify-content: space-between; align-items: center; gap: 24px; padding-block: 20px; border-bottom: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tp-new-guide-prices dt {font-size: 18px; font-weight: 700;}
.tp-brand-shell #main .tp-new-guide-prices dd {margin: 0; font-size: 24px; font-weight: 800; white-space: nowrap;}
.tp-brand-shell #main .tp-new-guide-warning {display: grid; grid-template-columns: 64px minmax(0,1fr); align-items: start; gap: 24px; padding-block: 24px; border-bottom: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tp-new-guide-warning:first-child {padding-top: 0;}
.tp-brand-shell #main .tp-new-guide-warning > img {width: 64px; height: 64px; object-fit: contain;}
.tp-brand-shell #main .tp-new-guide-warning h2 {font-size: 22px; line-height: 1.4; margin-bottom: 12px;}
.tp-brand-shell #main .tp-new-guide-warning p:last-child {margin-bottom: 0;}
.tp-brand-shell #main .tp-new-guide-detail {margin: 0; border-block: 0; border-bottom: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tp-new-guide-detail:first-child {border-top: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tp-new-guide-detail > summary {display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 64px; padding-block: 18px; cursor: pointer; list-style: none;}
.tp-brand-shell #main .tp-new-guide-detail > summary::-webkit-details-marker {display: none;}
.tp-brand-shell #main .tp-new-guide-detail > summary h2 {font-size: 20px; line-height: 1.45; margin: 0;}
.tp-brand-shell #main .tp-new-guide-detail > summary i {font-size: 20px; flex: 0 0 24px; text-align: center; color: var(--tp-brand-ink);}
.tp-brand-shell #main .tp-new-guide-detail[open] > summary i {transform: rotate(180deg);}
.tp-brand-shell #main .tp-new-guide-detail > summary:hover {color: var(--tp-brand-ink); background: var(--tp-brand-soft);}
.tp-brand-shell #main .tp-new-guide-detail > summary:focus-visible {outline: 3px solid var(--tp-brand-ink); outline-offset: 4px;}
.tp-brand-shell #main .tp-new-guide-answer {padding-bottom: 24px;}
.tp-brand-shell #main .tp-new-guide-answer .icon-box {display: flex; align-items: flex-start; gap: 24px; margin: 0; text-align: left;}
.tp-brand-shell #main .tp-new-guide-answer .icon-box-img {flex: 0 0 180px; width: 180px; max-width: 100%; margin: 0;}
.tp-brand-shell #main .tp-new-guide-answer .icon-box-text {padding: 0; min-width: 0; flex: 1;}
.tp-brand-shell #main .tp-new-guide-answer img {display: block; width: 100%; height: auto; object-fit: contain;}
.tp-brand-shell #main .tp-new-guide-aside {position: sticky; top: 112px; padding: 24px; border-top: 4px solid var(--tp-brand-yellow); background: var(--tp-brand-soft);}
.tp-brand-shell #main .tp-new-guide-aside h2 {font-size: 22px; line-height: 1.4; margin: 0 0 16px;}
.tp-brand-shell #main .tp-new-guide-aside a {display: flex; align-items: center; min-height: 48px; border-bottom: 1px solid var(--tp-brand-line); font-size: 14px; color: var(--tp-brand-ink); text-decoration: underline; text-underline-offset: 4px;}
.tp-brand-shell #main .tp-new-guide-aside a:hover {text-decoration-thickness: 2px;}
.tp-brand-shell #main .tp-new-payment-guide {list-style: none; margin: 0; padding: 0;}
.tp-brand-shell #main .tp-new-payment-guide > li {position: relative; margin: 0; padding: 20px 0 20px 24px; border-bottom: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tp-new-payment-guide > li::before {content: ""; position: absolute; width: 6px; height: 6px; top: 31px; left: 0; background: var(--tp-brand-ink);}
.tp-brand-shell #main .tp-new-payment-guide p {margin: 0;}
.tp-brand-shell #main .tp-new-guide-provider {margin-top: 40px; padding-top: 32px; border-top: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tp-new-guide-provider h2 {font-size: 28px; margin-bottom: 20px;}
.tp-brand-shell #main .tp-new-guide-provider img {max-width: 220px; height: auto;}
.tp-brand-shell #main .tp-new-guide-context {margin-top: 40px;}
.tp-brand-shell #main .tp-new-guide-context .tpia-summary-box {padding: 0; margin: 0; border: 0;}
.tp-brand-shell #main .tp-new-guide-related {border-top: 1px solid var(--tp-brand-line); padding-block: 40px; background: var(--tp-brand-soft);}
.tp-brand-shell #main .tp-new-guide-related .box-image {aspect-ratio: 1.5;}
.tp-brand-shell #main .tp-new-guide-related .box-image img {width: 100%; height: 100%; object-fit: contain;}
.tp-brand-shell #main .tp-new-guide-related .post-title {font-size: 20px;}
.tp-brand-shell #main .tp-new-guide-related .row {margin-bottom: 0;}
.tp-brand-shell #main .tp-new-guide-related .col-inner {box-shadow: none;}
.tp-brand-shell #main .tp-new-guide-related .box {box-shadow: none; border: 1px solid var(--tp-brand-line); border-radius: 8px; overflow: hidden;}
.tp-brand-shell #main .tp-new-guide-related .box-text {text-align: left; padding: 20px;}
.tp-brand-shell #main .tp-new-guide-related .badge.post-date {display: none;}
.tp-brand-shell #main .tp-new-guide-related .box-image > .image-cover {padding-top: 0 !important; height: 100%;}
.tp-brand-shell #main .tp-new-guide-related .is-divider {display: none;}

/* The existing English content owner supplies different copy, not a second theme. */
.tp-brand-shell #main .tsr-en-page {max-width: 1000px; margin-inline: auto; padding: 64px 40px; color: var(--tp-brand-ink);}
.tp-brand-shell #main .tsr-en-page h1 {font-family: var(--tp-brand-body-font); font-size: 52px; line-height: 1.12; margin-bottom: 24px;}
.tp-brand-shell #main .tsr-en-page h2 {font-family: var(--tp-brand-body-font); font-size: 26px; line-height: 1.4; margin-block: 32px 16px;}
.tp-brand-shell #main .tsr-en-page :is(p,li) {font-size: 16px; line-height: 1.8;}
.tp-brand-shell #main .tsr-en-page .lead {font-size: 18px; color: var(--tp-brand-muted);}
.tp-brand-shell #main .tsr-en-cta {padding-top: 24px; border-top: 1px solid var(--tp-brand-line);}
.tp-brand-shell #main .tsr-en-cta a {min-height: 48px; border-radius: var(--tp-brand-button-radius);}
.tp-brand-shell #main .tsr-en-cta .primary {background: var(--tp-brand-yellow); color: var(--tp-brand-ink);}
.tp-brand-shell #main .tsr-en-cta .secondary {border-color: var(--tp-brand-line); color: var(--tp-brand-ink);}

/* Real form layout/state remains owned by the rental and Support plugins. */
.tp-brand-shell #main .tprb-booking-widget__summary {background: var(--tp-brand-yellow); border: 0; border-radius: 8px; box-shadow: none;}
.tp-brand-shell #main .tprb-booking-page__hero h1 {font-size: 44px; margin-bottom: 20px;}
.tp-brand-shell #main .tprb-booking-page__hero {max-width: 950px;}
.tp-brand-shell #main .tprb-booking-widget__summary .tprb-booking-widget__summary-lines {border-color: var(--tp-brand-ink);}
.tp-brand-shell #main .tprb-booking-widget__tab {border-radius: 6px; box-shadow: none;}
.tp-brand-shell #main .tprb-booking-widget__period-pill {box-shadow: none;}
.tp-brand-shell.tp-support-page #main .tp-support-page__row {max-width: 1240px !important;}
.tp-brand-shell.tp-support-page #main .tp-support-page__row > .col {max-width: 100%; flex-basis: 100%;}
.tp-brand-shell.tp-support-page #main .tp-support-page__row > .col > .col-inner {display: grid; grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); gap: 24px; align-items: start;}
.tp-brand-shell.tp-support-page #main .tp-support-page__row > .col > .col-inner > p {grid-column: 1 / -1;}
.tp-brand-shell.tp-support-page #main .tp-support-safety {grid-column: 1 / -1; margin: 0;}
.tp-brand-shell.tp-support-page #main .tpsupport-form {grid-column: 1; grid-row: 3 / span 2; margin: 0; max-width: none; width: 100%;}
.tp-brand-shell.tp-support-page #main .tp-support-contact {grid-column: 2; grid-row: 3; display: block; margin: 0; padding: 28px;}
.tp-brand-shell.tp-support-page #main .tp-support-contact__actions {margin-top: 20px; flex-wrap: wrap;}
.tp-brand-shell.tp-support-page #main .tp-support-faq {grid-column: 2; grid-row: 4; margin: 0; padding: 24px 0;}
.tp-brand-shell.tp-support-page #main .tp-support-faq h2 {font-size: 24px;}
.tp-brand-shell.tp-support-page #main .tp-support-contact h2 {font-size: 36px;}
.tp-brand-shell.tp-support-page #main .tpsupport-card {margin: 0;}

/* Article copy is untouched; the theme supplies a bounded reading layout. */
.tp-brand-shell:is(.page-id-3,.page-id-9) #main .col-inner {max-width: 820px; margin-inline: auto; padding-block: 32px;}
.tp-brand-shell:is(.page-id-3,.page-id-9) #main h1 {font-size: 44px; margin-bottom: 32px;}
.tp-brand-shell:is(.page-id-3,.page-id-9) #main h2 {font-size: 24px; line-height: 1.4; margin-top: 32px;}
.tp-brand-shell:is(.page-id-3,.page-id-9) #main :is(p,li) {font-size: 16px; line-height: 1.8;}
.tp-brand-shell:is(.page-id-3,.page-id-9) #main :is(code,a) {overflow-wrap: anywhere;}
.tp-brand-shell.tp-brand-editorial #main .post-sidebar {display: none;}
.tp-brand-shell.tp-brand-editorial #main .large-9.col {flex-basis: 100%; max-width: 100%;}
.tp-brand-shell.tp-brand-editorial #main .entry-content {max-width: none;}
.tp-brand-shell.tp-brand-editorial #main .entry-header {text-align: left; max-width: 900px; margin-bottom: 40px;}
.tp-brand-shell.tp-brand-editorial #main .entry-title {font-size: 48px; line-height: 1.15;}
.tp-brand-shell.tp-brand-editorial #main .entry-image img {max-height: 480px; object-fit: contain; width: 100%;}
.tp-brand-shell #main .tp-new-reading-layout {display: grid; grid-template-columns: minmax(0,1fr) 280px; gap: 64px; align-items: start;}
.tp-brand-shell #main .tp-new-reading-copy {min-width: 0;}
.tp-brand-shell #main .tp-new-reading-copy :is(p,li) {font-size: 17px; line-height: 1.8;}
.tp-brand-shell #main .tp-new-reading-aside {position: sticky; top: 112px; background: var(--tp-brand-soft); padding: 24px; border-left: 4px solid var(--tp-brand-yellow); font-size: 14px;}
.tp-brand-shell #main .tp-new-reading-aside h2 {font-size: 24px; margin-top: 0;}
.tp-brand-shell #main .tp-new-reading-aside p {font-size: 14px;}
.tp-brand-shell #main .tp-new-reading-aside .tp-new-button {padding-inline: 16px; font-size: 14px; width: 100%;}
.tp-brand-shell #main .tp-new-reading-aside nav {margin: 24px 0 16px;}
.tp-brand-shell #main .tp-new-reading-aside nav a {display: flex; align-items: center; min-height: 44px; border-bottom: 1px solid var(--tp-brand-line); color: var(--tp-brand-ink);}
.tp-brand-shell #main .tp-new-reading-aside > a:last-child {display: inline-flex; align-items: center; min-height: 44px; color: var(--tp-brand-ink); font-weight: 800;}

@media (max-width: 1099px) {
    .tp-brand-shell .tp-brand-service-line {display: none;}
    .tp-brand-shell #main .tp-new-wrap {padding-inline: 24px;}
    .tp-brand-shell #main .tp-new-hero-copy {width: 55%;}
    .tp-brand-shell #main .tp-new-page h1 {font-size: 52px;}
    .tp-brand-shell #main .tp-new-equipment {gap: 40px;}
    .tp-brand-shell #main .tp-new-info-grid--four {grid-template-columns: repeat(2,minmax(0,1fr));}
    .tp-brand-shell #main .tp-new-process-grid {grid-template-columns: repeat(2,minmax(0,1fr));}
    .tp-brand-shell #main .tp-new-message-inner {align-items: flex-start; flex-direction: column; gap: 28px;}
    .tp-brand-shell #main :is(.tp-new-story-grid,.tp-new-help-grid,.tp-new-service-grid) {gap: 40px;}
}
@media (max-width: 749px) {
    .tp-brand-shell #main .tp-new-guide-intro {padding-block: 32px 28px;}
    .tp-brand-shell #main .tp-new-guide-intro > h1 {font-size: 36px; margin-block: 16px 20px;}
    .tp-brand-shell #main .tp-new-guide-intro > p {font-size: 16px;}
    .tp-brand-shell #main .tp-new-guide-layout {grid-template-columns: minmax(0,1fr); gap: 32px; padding-block: 28px 40px;}
    .tp-brand-shell #main .tp-new-guide-detail > summary h2 {font-size: 18px;}
    .tp-brand-shell #main .tp-new-guide .tp-new-guide-copy > h2 {font-size: 24px;}
    .tp-brand-shell #main .tp-new-guide-prices > div {gap: 16px;}
    .tp-brand-shell #main .tp-new-guide-prices dt {font-size: 16px;}
    .tp-brand-shell #main .tp-new-guide-prices dd {font-size: 20px;}
    .tp-brand-shell #main .tp-new-guide-warning {grid-template-columns: 48px minmax(0,1fr); gap: 16px; padding-block: 20px;}
    .tp-brand-shell #main .tp-new-guide-warning > img {width: 48px; height: 48px;}
    .tp-brand-shell #main .tp-new-guide .tp-new-guide-warning h2 {font-size: 20px;}
    .tp-brand-shell #main .tp-new-guide-answer .icon-box {flex-direction: column; gap: 16px;}
    .tp-brand-shell #main .tp-new-guide-answer .icon-box-img {flex-basis: auto; width: 180px; margin-inline: auto;}
    .tp-brand-shell #main .tp-new-guide-aside {position: static;}
    .tp-brand-shell #main .tp-new-guide-provider h2 {font-size: 24px;}
    .tp-brand-shell #main .tsr-en-page {padding: 32px 18px 40px;}
    .tp-brand-shell #main .tsr-en-page h1 {font-size: 36px;}
    .tp-brand-shell #main .tsr-en-page h2 {font-size: 24px;}
    .tp-brand-shell #main .tsr-en-page .lead {font-size: 16px;}
    .tp-brand-shell #main .tp-new-page #klientide-arvustused.tp-reviews-section {padding-inline: 4px;}
    .tp-brand-shell #main .tp-new-page #klientide-arvustused h2 {font-size: 28px;}
    .tp-brand-shell #main .tprb-booking-page__hero h1 {font-size: 28px; margin-bottom: 16px;}
    .tp-brand-shell.tp-support-page #main .tp-support-page__row > .col > .col-inner {display: block;}
    .tp-brand-shell.tp-support-page #main :is(.tpsupport-form,.tp-support-contact,.tp-support-faq) {margin-top: 24px;}
    .tp-brand-shell.tp-brand-editorial #main .entry-title {font-size: 30px;}
    .tp-brand-shell:is(.page-id-3,.page-id-9) #main .col-inner {padding-block: 16px;}
    .tp-brand-shell:is(.page-id-3,.page-id-9) #main h1 {font-size: 32px;}
    .tp-brand-shell:is(.page-id-3,.page-id-9) #main h2 {font-size: 22px;}
    .tp-brand-shell #main .tp-new-reading-layout {grid-template-columns: minmax(0,1fr); gap: 40px;}
    .tp-brand-shell #main .tp-new-reading-aside {position: static;}
    .tp-brand-shell #main .tp-new-reading-copy :is(p,li) {font-size: 16px;}
    .tp-brand-shell #main .tp-new-wrap {padding-inline: 18px;}
    .tp-brand-shell #main .tp-new-band {padding-block: 48px;}
    .tp-brand-shell #main .tp-new-band header {margin-bottom: 28px;}
    .tp-brand-shell #main .tp-new-page h1 {font-size: 36px;}
    .tp-brand-shell #main .tp-new-page h2 {font-size: 28px;}
    .tp-brand-shell #main .tp-new-page h3 {font-size: 20px;}
    .tp-brand-shell #main .tp-new-page p {font-size: 15px;}
    .tp-brand-shell #main .tp-new-hero {min-height: 0; padding-bottom: 200px; background: var(--tp-brand-paper);}
    .tp-brand-shell #main .tp-new-hero-photo {inset: auto 0 0; height: 200px; object-position: 75% 50%;}
    .tp-brand-shell #main .tp-new-hero-photo {width: 100%;}
    .tp-brand-shell #main .tp-new-hero-inner {min-height: 0; padding-block: 28px 24px;}
    .tp-brand-shell #main .tp-new-hero-copy {max-width: 600px; width: 100%;}
    .tp-brand-shell #main .tp-new-hero-copy > p {max-width: 570px; margin-bottom: 16px;}
    .tp-brand-shell #main .tp-new-hero-copy .tp-new-eyebrow {font-size: 12px; margin-bottom: 16px;}
    .tp-brand-shell #main .tp-new-hero-price {margin: 24px 0; gap: 16px;}
    .tp-brand-shell #main .tp-new-hero-price strong {font-size: 34px;}
    .tp-brand-shell #main .tp-new-hero-price span {font-size: 12px; max-width: 160px;}
    .tp-brand-shell #main .tp-new-hero-copy .tp-new-hero-location {font-size: 12px; margin-top: 16px;}
    .tp-brand-shell #main .tp-new-facts {padding-block: 0;}
    .tp-brand-shell #main .tp-new-facts-grid {grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; padding-block: 24px;}
    .tp-brand-shell #main .tp-new-facts-grid > div {border: 0; padding: 0;}
    .tp-brand-shell #main .tp-new-facts-grid strong {font-size: 16px;}
    .tp-brand-shell #main .tp-new-facts-grid span {font-size: 12px;}
    .tp-brand-shell #main :is(.tp-new-equipment,.tp-new-story-grid,.tp-new-contact-grid,.tp-new-contact-company,.tp-new-help-grid,.tp-new-service-grid) {grid-template-columns: minmax(0,1fr); gap: 32px;}
    .tp-brand-shell #main .tp-new-equipment-photo {aspect-ratio: 1.3;}
    .tp-brand-shell #main .tp-new-process-grid {gap: 24px;}
    .tp-brand-shell #main .tp-new-process-grid h3 {font-size: 18px;}
    .tp-brand-shell #main .tp-new-process-grid p {font-size: 14px;}
    .tp-brand-shell #main .tp-new-prices {grid-template-columns: minmax(0,1fr); gap: 12px;}
    .tp-brand-shell #main .tp-new-prices article {padding: 20px; display: flex; align-items: center; justify-content: space-between; gap: 12px;}
    .tp-brand-shell #main .tp-new-prices p {margin: 0; font-size: 14px;}
    .tp-brand-shell #main .tp-new-prices strong {font-size: 30px; white-space: nowrap;}
    .tp-brand-shell #main .tp-new-prices small {font-size: 12px;}
    .tp-brand-shell #main :is(.tp-new-info-grid,.tp-new-info-grid--four) {grid-template-columns: minmax(0,1fr); gap: 28px;}
    .tp-brand-shell #main .tp-new-blog .col {flex-basis: 100%; max-width: 100%;}
    .tp-brand-shell #main :is(.tp-new-dark,.tp-new-message) h2 {font-size: 40px;}
    .tp-brand-shell #main .tp-new-message-inner {gap: 24px;}
    .tp-brand-shell #main .tp-new-message .tp-new-actions {width: 100%;}
    .tp-brand-shell #main .tp-new-message .tp-new-button {flex: 1 1 170px;}
    .tp-brand-shell #main .tp-new-intro {padding-block: 32px 20px;}
    .tp-brand-shell #main .tp-new-intro header {margin: 0;}
    .tp-brand-shell #main .tp-new-page-intro > p:last-child {font-size: 16px;}
    .tp-brand-shell #main .tp-new-contact {padding-top: 12px;}
    .tp-brand-shell #main .tp-new-contact-panel {padding: 24px;}
    .tp-brand-shell #main .tp-new-contact-panel h2 {font-size: 28px;}
    .tp-brand-shell #main .tp-new-contact-panel .tp-new-button {padding-inline: 16px; gap: 16px;}
    .tp-brand-shell #main .tp-new-contact-direct a[href^="tel:"] {font-size: 26px;}
    .tp-brand-shell #main .tp-new-location-panel {min-height: 360px;}
    .tp-brand-shell #main .tp-new-service-prices {grid-template-columns: minmax(0,1fr);}
    .tp-brand-shell #main .tp-new-service-prices article {padding: 20px;}
    .tp-brand-shell #main .tp-new-service-photo {max-width: 540px; margin-inline: auto;}
    .tp-brand-shell #main .tp-new-link-grid {grid-template-columns: minmax(0,1fr); gap: 12px;}
    .tp-brand-shell #main .tp-new-link-card {padding: 24px;}
    .tp-brand-shell #main .tp-new-link-card > i:first-child {margin-bottom: 16px;}
    .tp-brand-shell #main .tp-new-link-card h2 {font-size: 22px;}
}
@media (max-width: 359px) {
    .tp-brand-shell #main .tp-new-hero {padding-bottom: 160px;}
    .tp-brand-shell #main .tp-new-hero-photo {height: 160px;}
    .tp-brand-shell #main .tp-new-process-grid {grid-template-columns: minmax(0,1fr);}
    .tp-brand-shell #main .tp-new-hero-price {gap: 12px;}
    .tp-brand-shell #main .tp-new-hero-price strong {font-size: 30px;}
    .tp-brand-shell #main .tp-new-contact-panel {padding: 20px;}
    .tp-brand-shell #main .tp-new-contact-direct a[href^="tel:"] {font-size: 23px;}
}
@media (min-width: 360px) and (max-width: 389px) {
    .tp-brand-shell #main .tp-new-hero {padding-bottom: 180px;}
    .tp-brand-shell #main .tp-new-hero-photo {height: 180px;}
}
