.elementor-106 .elementor-element.elementor-element-5c43337d{--display:flex;--margin-top:-10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-106 .elementor-element.elementor-element-51016fa5{--display:flex;}.elementor-106 .elementor-element.elementor-element-12f26d44{--display:flex;}/* Start custom CSS for container, class: .elementor-element-5c43337d *//* custom-designed-detail */
.container {    max-width: 1280px;    margin: 0 auto;    padding: 0 5%;}
.legal-hero-section {    position: relative;    padding: 48px 0 100px;    background:        radial-gradient(circle at top left, rgba(214, 198, 176, 0.18), transparent 34%),        linear-gradient(180deg, #f8f5f0 0%, #f5f1ea 100%);    overflow: hidden;}
.legal-hero-shell {    background: rgba(255, 255, 255, 0.72);    border: 1px solid rgba(60, 44, 28, 0.08);    box-shadow: 0 24px 60px rgba(41, 31, 21, 0.06);    padding: 42px 42px 46px;}
.breadcrumbs {    margin: 0 0 22px;    font-size: 0.9rem;    letter-spacing: 0.08em;    text-transform: uppercase;    color: #7a7268;}
.breadcrumb-home {    color: #7a7268;    text-decoration: none;    transition: color 0.25s ease;}
.breadcrumb-home:hover {    color: #2a241d;}
.breadcrumb-separator {    margin: 0 10px;    color: #aca396;}
.breadcrumb-current {    color: #2a241d;    font-weight: 600;}
.hero-heading-block {    max-width: 860px;    margin: 0 auto 36px;    text-align: center;}
.section-kicker {    display: inline-block;    margin-bottom: 16px;    padding: 8px 14px;    border-radius: 999px;    background: rgba(138, 105, 70, 0.10);    color: #7a5a3b;    font-size: 0.78rem;    font-weight: 600;    letter-spacing: 0.12em;    text-transform: uppercase;}
.page-title {    font-family: "Libre Baskerville", Georgia, serif;    font-size: clamp(2rem, 3.5vw, 2.8rem);    font-weight: 700;    line-height: 1.12;    letter-spacing: -0.03em;    color: #1e1813;    margin: 0 0 16px;}
.hero-lead {    max-width: 780px;    margin: 0 auto;    font-size: 1.08rem;    line-height: 1.85;    color: #534b42;}
.legal-wrapper {    max-width: 900px;    margin: 0 auto;}
.legal-intro-panel {    margin-bottom: 34px;    padding: 24px 28px;    background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(248,244,238,0.98) 100%);    border: 1px solid rgba(60, 44, 28, 0.08);    box-shadow: 0 14px 34px rgba(49, 36, 24, 0.05);}
.legal-intro {    margin: 0;    font-size: 1.06rem;    line-height: 1.85;    color: #4f473e;    text-align: center;}
.legal-section {    padding: 28px 0;    border-bottom: 1px solid rgba(60, 44, 28, 0.08);}
.legal-section:last-of-type {    border-bottom: none;}
.legal-heading {    font-family: "Libre Baskerville", Georgia, serif;    font-size: 1.38rem;    font-weight: 700;    line-height: 1.3;    margin: 0 0 16px;    color: #241d17;}
.legal-text {    margin: 0 0 16px;    font-size: 1.03rem;    line-height: 1.9;    color: #4f473e;}
.legal-text:last-child {    margin-bottom: 0;}
.legal-footer {    margin-top: 42px;    text-align: center;}
.legal-footer p {    margin: 0;    font-size: 0.98rem;    line-height: 1.75;    color: #6a6258;}
@media (max-width: 820px) {    .legal-hero-section {        padding: 38px 0 80px;    }    .legal-hero-shell {        padding: 28px 22px 30px;    }    .legal-intro-panel {        padding: 20px 18px;    }    .hero-lead,    .legal-intro,    .legal-text {        font-size: 1rem;    }    .legal-heading {        font-size: 1.25rem;    }}
@media (max-width: 560px) {    .breadcrumbs {        margin-bottom: 18px;        font-size: 0.82rem;    }    .legal-hero-shell {        padding: 22px 16px 24px;    }    .page-title {        font-size: 2rem;    }    .hero-lead,    .legal-intro,    .legal-text,    .legal-footer p {        line-height: 1.75;    }    .legal-section {        padding: 22px 0;    }}
/* Consultation */.consultation-intro {    max-width: 1280px;    margin: 104px auto 84px;    padding: 0 24px;    text-align: center;    /* base text colour */    color: #171411;}
.consultation-eyebrow {    display: inline-block;    margin: 0 0 16px;    padding-left: 16px;    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.18em;    text-transform: uppercase;    color: #6f563d;    position: relative;}
.consultation-eyebrow::before {    content: "";    position: absolute;    left: 0;    top: 0.1em;    bottom: 0.1em;    width: 2px;    background: linear-gradient(180deg, #bc9468 0%, #8a6946 100%);}
/* FORCE TITLE BLACK */.consultation-intro h2 {    font-family: "Libre Baskerville", serif;    font-size: clamp(2.1rem, 4.8vw, 3rem);    font-weight: 700;    line-height: 1.08;    letter-spacing: -0.036em;    margin: 0;    color: #171411 !important;    text-wrap: balance;}
.consultation-rule {    width: 64px;    height: 1px;    margin: 20px auto 22px;    background: rgba(63,49,35,0.24);}
/* BODY TEXT – DARK, NOT GREY */.consultation-intro p {    margin: 0 auto;    max-width: 720px;    font-family: "Libre Baskerville", serif;    font-size: clamp(1.02rem, 1.8vw, 1.1rem);    line-height: 1.82;    letter-spacing: 0.002em;    color: #2f251d !important;    opacity: 1 !important;}
.consultation-intro p strong {    color: #171411 !important;    font-weight: 700;}
/* spacing harmony with form below */.consultation-intro + * {    margin-top: 0;}
/* Responsive */@media (max-width: 768px) {    .consultation-intro {        margin: 84px auto 64px;        padding: 0 18px;    }    .consultation-intro h2 {        font-size: clamp(1.85rem, 7vw, 2.4rem);    }    .consultation-rule {        width: 52px;        margin: 18px auto 20px;    }    .consultation-intro p {        font-size: 0.98rem;        line-height: 1.74;    }}
@media (max-width: 480px) {    .consultation-intro {        margin: 72px auto 56px;        padding: 0 14px;    }    .consultation-eyebrow {        font-size: 0.68rem;        margin-bottom: 12px;    }}
/* Contact Card */.contact-grid-wrapper {    position: relative;    max-width: 920px;    margin: 0 auto 82px auto;    padding: 38px 36px;    background:        linear-gradient(180deg, rgba(255,255,255,0.16) 0%, rgba(255,255,255,0.06) 100%),        rgba(247,242,234,0.72);    border: 1px solid rgba(91,68,45,0.10);    box-shadow:        0 18px 42px rgba(0,0,0,0.08),        inset 0 1px 0 rgba(255,255,255,0.34);    overflow: hidden;}
.contact-grid-wrapper::before {    content: "";    position: absolute;    inset: 0 auto 0 0;    width: 5px;    background: linear-gradient(180deg, #bc9468 0%, var(--wood) 100%);}
.contact-items {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 30px 42px;    align-items: start;}
.contact-item {    display: flex;    align-items: flex-start;    gap: 16px;    text-align: left;}
.contact-icon {    width: 42px;    height: 42px;    background: linear-gradient(180deg, #9a7650 0%, #7d5d3e 100%);    flex-shrink: 0;    display: flex;    align-items: center;    justify-content: center;    box-shadow: 0 10px 22px rgba(123,91,61,0.18);    transition: transform 0.3s ease, box-shadow 0.3s ease;}
.contact-item:hover .contact-icon {    transform: translateY(-2px);    box-shadow: 0 14px 28px rgba(123,91,61,0.24);}
.contact-icon svg {    width: 20px;    height: 20px;    fill: #fffaf3;}
.contact-content h3 {    font-family: "Libre Baskerville", serif;    font-size: 1.08rem;    margin: 0 0 6px;    color: var(--ink);    font-weight: 700;    letter-spacing: -0.015em;    line-height: 1.25;}
.contact-content p,.contact-content a {    font-size: 0.96rem;    margin: 0;    color: #3f342b;    line-height: 1.72;}
.contact-content a {    color: var(--wood);    text-decoration: none;    font-weight: 700;    transition: color 0.28s ease, opacity 0.28s ease;}
.contact-content a:hover {    color: var(--wood-deep);    opacity: 1;}
/* Responsive */@media (max-width: 960px) {    .contact-grid-wrapper {        padding: 34px 30px;        margin: 0 auto 72px auto;    }    .contact-items {        gap: 28px 34px;    }}
@media (max-width: 640px) {    .contact-grid-wrapper {        padding: 28px 20px;        margin: 0 auto 54px auto;    }    .contact-items {        grid-template-columns: 1fr;        gap: 24px;    }    .contact-item {        gap: 14px;    }    .contact-icon {        width: 40px;        height: 40px;    }    .contact-icon svg {        width: 18px;        height: 18px;    }    .contact-content h3 {        font-size: 1rem;        margin-bottom: 5px;    }    .contact-content p,    .contact-content a {        font-size: 0.93rem;        line-height: 1.68;    }}
@media (max-width: 380px) {    .contact-grid-wrapper {        padding: 24px 16px;    }    .contact-icon {        width: 38px;        height: 38px;    }    .contact-icon svg {        width: 17px;        height: 17px;    }}/* End custom CSS */