/* Pentana Stanton / Article (single post) template Same system as the Meet the Team, Insights and practice pages: navy hero with the faint grid and gold glow, white and cream sections, Cormorant + Inter, square 2px buttons, gold hairlines. The dynamic parts are real Elementor widgets (post title, excerpt, date, featured image, author box, post content, Posts, the global enquiry form). These rules restyle their markup, so every selector is written .pspt.pspt (0,3,x) or deeper to outrank Elementor's widget CSS and the site kit. Article prose rules only touch DIRECT children of the post-content widget, so the embedded blocks (Key takeaways, Quick answer, CTA, FAQ) keep their structure and are restyled explicitly below. Scoped under .pspt. */.pspt { --navy: #0f2a44; --navy-deep: #0a1f33; --gold: #c9a961; --gold-soft: #d4b97a; --gold-accent: #a8864a; --gold-text: #86683a; --cream: #f8f5ef; --line: #e2daca; --ink: #2a2a2a; --grey: #5f5f5f; --studio: #ecebe8; --on-navy-2: rgba(255, 255, 255, 0.78); --on-navy-3: rgba(255, 255, 255, 0.55); --hair-navy: rgba(255, 255, 255, 0.14); --serif: 'Cormorant Garamond', 'Playfair Display', Georgia, 'Times New Roman', serif; --sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; --ease: cubic-bezier(0.2, 0.7, 0.1, 1); --ease-out: cubic-bezier(0.16, 1, 0.3, 1); --max: 1200px; --gutter: clamp(20px, 5vw, 48px); --inline: max(var(--gutter), calc((100% - var(--max)) / 2)); --stick: 32px; font-family: var(--sans); color: var(--ink); line-height: 1.6; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }/* ---------- Reset ---------- */ .pspt *, .pspt *::before, .pspt *::after { box-sizing: border-box; } .pspt :where(h1, h2, h3, h4, p, ul, ol, li, figure, nav, details, summary) { margin: 0; padding: 0; } .pspt :where(ul, ol) { list-style: none; } .pspt :where(a), .pspt :where(a):hover, .pspt :where(a):focus { text-decoration: none; color: inherit; } /* Site kit styles bare `button` at (0,1,1) and its states at up to (0,3,0). */ .pspt.pspt :is(button) { font: inherit; color: inherit; background: none; border: 0; padding: 0; margin: 0; border-radius: 0; text-transform: none; letter-spacing: inherit; line-height: inherit; text-shadow: none; box-shadow: none; min-height: 0; cursor: pointer; -webkit-appearance: none; appearance: none; } .pspt.pspt :is(button):is(:hover, :focus, :focus-visible, :active) { background-color: transparent; color: inherit; border-color: transparent; box-shadow: none; } .pspt :focus { outline: none; } .pspt :focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }/* Elementor containers: drop the kit's default padding and gaps; every layout below is explicit. */ .pspt.e-con, .pspt .e-con { --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; --margin-top: 0px; --margin-bottom: 0px; --gap: 0px; --row-gap: 0px; --column-gap: 0px; --widgets-spacing: 0px; --widgets-spacing-row: 0px; --widgets-spacing-column: 0px; --content-width: 100%; --container-max-width: none; --width: 100%; --display: flex; --flex-direction: column; display: flex; flex-direction: column; padding: 0; gap: 0; min-height: 0; max-width: none; } .pspt.pspt-hero { display: block; } .pspt.pspt .elementor-widget, .pspt.pspt .elementor-widget:where(:not(:last-child)) { margin: 0; margin-block-end: 0; }/* ---------- Shared type ---------- */ .pspt-label { display: block; font: 500 12px/1.3 var(--sans); letter-spacing: 0.18em; text-transform: uppercase; color: var(--gold-text); } .pspt-rule { display: block; width: 28px; height: 1px; margin-bottom: 18px; background: var(--gold); } .pspt-head { margin-bottom: clamp(32px, 4.4vw, 52px); } .pspt-head__title { margin-top: 12px; max-width: 30ch; font: 400 clamp(28px, 3vw, 40px)/1.15 var(--serif); letter-spacing: -0.01em; color: var(--navy-deep); } .pspt-head__title em { font-style: italic; color: var(--gold-accent); }.pspt.pspt .pspt-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 14px 24px; border: 1px solid transparent; border-radius: 2px; font: 500 13px/1 var(--sans); letter-spacing: 0.08em; text-transform: uppercase; transition: background-color 220ms ease, color 220ms ease, border-color 220ms ease; } .pspt.pspt .pspt-btn--gold { background-color: var(--gold); border-color: var(--gold); color: var(--navy-deep); } .pspt.pspt .pspt-btn--gold:is(:hover, :focus-visible) { background-color: transparent; border-color: var(--gold); color: var(--gold-soft); }/* Reading progress line (sits under the WordPress admin bar when logged in) */ .pspt-progress { position: fixed; top: 0; left: 0; right: 0; z-index: 9990; height: 3px; pointer-events: none; } .pspt-progress span { display: block; height: 100%; background: var(--gold); transform: scaleX(0); transform-origin: 0 50%; } body.admin-bar .pspt-progress { top: 32px; } @media (max-width: 782px) { body.admin-bar .pspt-progress { top: 46px; } }/* ---------- Hero ---------- */ .pspt.pspt-hero { position: relative; overflow: hidden; color: #fff; background: radial-gradient(120% 80% at 80% 20%, rgba(201, 169, 97, 0.08), transparent 60%), linear-gradient(180deg, var(--navy) 0%, var(--navy-deep) 100%); } .pspt.pspt-hero::before { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: 0.6; mix-blend-mode: normal; background-image: linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px); background-size: 80px 80px; -webkit-mask-image: radial-gradient(ellipse at center, #000 30%, transparent 80%); mask-image: radial-gradient(ellipse at center, #000 30%, transparent 80%); } .pspt.pspt .pspt-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(40px, 6vw, 96px); align-items: center; padding: clamp(56px, 7vw, 96px) var(--inline) clamp(64px, 8vw, 104px); } .pspt.pspt .pspt-hero__text { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; } .pspt.pspt .pspt-hero__text > .elementor-widget { width: 100%; } .pspt-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 26px; font: 500 11px/1.4 var(--sans); letter-spacing: 0.14em; text-transform: uppercase; color: var(--on-navy-3); } .pspt.pspt .pspt-crumbs a { color: var(--on-navy-3); transition: color 0.3s var(--ease); } .pspt.pspt .pspt-crumbs a:hover { color: #fff; } .pspt-crumbs__sep { opacity: 0.6; } .pspt-kicker { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; min-height: 16px; font: 500 12px/1.3 var(--sans); letter-spacing: 0.18em; text-transform: uppercase; color: var(--on-navy-3); } .pspt-kicker__label { color: var(--gold-soft); } .pspt-kicker__label:not(:empty) + .pspt-kicker__time:not(:empty)::before { content: '\00B7'; margin-right: 12px; color: var(--gold); }.pspt.pspt .pspt-title { margin-top: 16px; } .pspt.pspt .pspt-title .elementor-heading-title { max-width: 22ch; margin: 0; padding: 0; font: 400 clamp(34px, 3.9vw, 54px)/1.1 var(--serif); letter-spacing: -0.02em; text-transform: none; color: #fff; text-wrap: balance; } .pspt.pspt .pspt-lede { margin-top: 22px; max-width: 58ch; font: 300 clamp(16px, 1.25vw, 18px)/1.7 var(--sans); color: var(--on-navy-2); } .pspt.pspt .pspt-lede p { margin: 0; font: inherit; color: inherit; }.pspt.pspt .pspt-byline { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 12px 22px; width: 100%; max-width: 58ch; margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--hair-navy); } .pspt.pspt .pspt-byline > .elementor-widget { width: auto; } .pspt.pspt .pspt-byline .elementor-author-box { display: flex; align-items: center; gap: 14px; } .pspt.pspt .pspt-byline .elementor-author-box__avatar { flex: none; margin: 0; } .pspt.pspt .pspt-byline .elementor-author-box__avatar img { display: block; width: 44px; height: 44px; margin: 0; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 1px rgba(201, 169, 97, 0.55); } .pspt.pspt .pspt-byline .elementor-author-box__name { margin: 0; font: 500 15px/1.3 var(--sans); letter-spacing: 0.01em; text-transform: none; color: #fff; } .pspt.pspt .pspt-byline .elementor-author-box__bio, .pspt.pspt .pspt-byline .elementor-author-box__button { display: none; } .pspt.pspt .pspt-date { padding-left: 22px; border-left: 1px solid var(--hair-navy); } .pspt.pspt .pspt-date .elementor-heading-title { margin: 0; font: 400 14px/1.3 var(--sans); letter-spacing: 0.01em; text-transform: none; color: var(--on-navy-3); }.pspt.pspt .pspt-hero__media { position: relative; min-width: 0; } .pspt.pspt .pspt-hero__img { position: relative; } .pspt.pspt .pspt-hero__img::before { content: ''; position: absolute; inset: 16px -16px -16px 16px; border: 1px solid rgba(201, 169, 97, 0.5); pointer-events: none; } .pspt.pspt .pspt-hero__img img { position: relative; display: block; width: 100%; max-width: none; height: auto; aspect-ratio: 4 / 5; margin: 0; object-fit: cover; object-position: 50% 30%; border-radius: 2px; box-shadow: 0 40px 80px -40px rgba(0, 0, 0, 0.6); } .pspt.pspt-hero.pspt-hero--noimg .pspt-hero__grid { grid-template-columns: minmax(0, 1fr); } .pspt.pspt-hero.pspt-hero--noimg .pspt-hero__media { display: none; }.pspt-hero [data-rise] { animation: pspt-rise 0.9s var(--ease-out) both; animation-delay: calc(var(--i, 0) * 90ms + 60ms); } .pspt.pspt .pspt-byline { animation: pspt-rise 0.9s var(--ease-out) 0.3s both; } .pspt.pspt .pspt-hero__media { animation: pspt-fade 1.2s var(--ease-out) 0.1s both; }/* ---------- Body: article + sticky aside ---------- */ .pspt.pspt-body { display: grid; grid-template-columns: minmax(0, 740px) 300px; justify-content: space-between; align-items: start; column-gap: clamp(48px, 7vw, 112px); padding: clamp(56px, 7vw, 96px) var(--inline) clamp(72px, 9vw, 120px); background: #fff; } .pspt.pspt .pspt-main { display: flex; flex-direction: column; min-width: 0; } .pspt.pspt .pspt-aside { position: sticky; top: var(--stick); display: block; min-width: 0; } body.admin-bar .pspt.pspt .pspt-aside { top: calc(var(--stick) + 32px); }/* Article prose (direct children of the post content widget) */ .pspt.pspt .pspt-article { font: 400 17px/1.8 var(--sans); color: var(--ink); } .pspt.pspt .pspt-article > * { margin: 0; } .pspt.pspt .pspt-article > * + * { margin-top: 1.2em; } .pspt.pspt .pspt-article > p { font: 400 17px/1.8 var(--sans); color: var(--ink); } .pspt.pspt .pspt-article > :is(h2, h3) { margin-top: 2.3em; scroll-margin-top: calc(var(--stick) + 8px); font: 500 clamp(26px, 2.3vw, 32px)/1.2 var(--serif); letter-spacing: -0.01em; text-transform: none; color: var(--navy-deep); } .pspt.pspt .pspt-article > :is(h2, h3)::before { content: ''; display: block; width: 28px; height: 1px; margin-bottom: 18px; background: var(--gold); } .pspt.pspt .pspt-article > h4, .pspt.pspt .pspt-article.pspt-article--h2 > h3 { margin-top: 1.9em; scroll-margin-top: calc(var(--stick) + 8px); font: 600 17.5px/1.45 var(--sans); letter-spacing: 0; text-transform: none; color: var(--navy); } .pspt.pspt .pspt-article.pspt-article--h2 > h3::before { display: none; } .pspt.pspt .pspt-article > :is(h2, h3, h4) + * { margin-top: 0.7em; } .pspt.pspt .pspt-article > :is(p, ul, ol, h2, h3, h4, blockquote, figure, table, div:not([class])) a { color: var(--navy); text-decoration: underline; text-decoration-color: rgba(168, 134, 74, 0.6); text-decoration-thickness: 1px; text-underline-offset: 3px; transition: color 0.25s var(--ease), text-decoration-color 0.25s var(--ease); } .pspt.pspt .pspt-article > :is(p, ul, ol, h2, h3, h4, blockquote, figure, table, div:not([class])) a:hover { color: var(--gold-text); text-decoration-color: var(--gold); } .pspt.pspt .pspt-article > :is(p, ul, ol, blockquote, table, figure) :is(strong, b) { font-weight: 600; color: var(--navy-deep); } .pspt.pspt .pspt-article > :is(ul, ol) { padding: 0; list-style: none; } .pspt.pspt .pspt-article > :is(ul, ol) > li { position: relative; margin: 0; padding-left: 28px; font: inherit; color: var(--ink); } .pspt.pspt .pspt-article > :is(ul, ol) > li + li { margin-top: 0.55em; } .pspt.pspt .pspt-article > ul > li::before { content: ''; position: absolute; left: 2px; top: 0.9em; width: 12px; height: 1px; background: var(--gold-accent); } .pspt.pspt .pspt-article > ol { counter-reset: pspt-ol; } .pspt.pspt .pspt-article > ol > li { counter-increment: pspt-ol; } .pspt.pspt .pspt-article > ol > li::before { content: counter(pspt-ol) '.'; position: absolute; left: 0; top: 0; font: italic 500 19px/1.6 var(--serif); color: var(--gold-accent); } .pspt.pspt .pspt-article > figure { margin-top: 2em; } .pspt.pspt .pspt-article > figure + * { margin-top: 2em; } .pspt.pspt .pspt-article .wp-block-image img, .pspt.pspt .pspt-article > p > img { display: block; width: 100%; max-width: 100%; height: auto; margin: 0; border-radius: 2px; } .pspt.pspt .pspt-article > blockquote { padding: 4px 0 4px 24px; border-left: 2px solid var(--gold); font: italic 400 22px/1.5 var(--serif); color: var(--navy-deep); } .pspt.pspt .pspt-article > blockquote p { margin: 0; font: inherit; color: inherit; } .pspt.pspt .pspt-article > hr { height: 1px; margin-block: 2.4em; border: 0; background: var(--line); }/* Tables */ .pspt.pspt .pspt-article > :is(figure.wp-block-table, table) { overflow-x: auto; -webkit-overflow-scrolling: touch; } .pspt.pspt .pspt-article table { width: 100%; min-width: 480px; margin: 0; border-collapse: collapse; border: 0; font: 400 15px/1.55 var(--sans); color: var(--ink); } .pspt.pspt .pspt-article :is(th, td) { padding: 12px 14px; border: 0; border-bottom: 1px solid var(--line); background: none; text-align: left; vertical-align: top; } .pspt.pspt .pspt-article :is(thead th, thead td, tr:first-child th) { background: var(--cream); border-bottom: 1px solid var(--gold); font-weight: 600; color: var(--navy-deep); }/* Embedded block: Key takeaways (Summaraize plugin) */ .pspt.pspt .pspt-article > .summaraize-wrap { margin: 0 0 2.2em; } .pspt.pspt .pspt-article .summaraize { margin: 0; padding: 28px 32px 30px; background: var(--cream); border: 1px solid var(--line); border-top: 2px solid var(--gold); border-radius: 2px; color: var(--ink); } .pspt.pspt .pspt-article .summaraize .summaraize-title { margin: 0 0 16px; font: 500 12px/1.3 var(--sans); letter-spacing: 0.18em; text-transform: uppercase; color: var(--gold-text); } .pspt.pspt .pspt-article .summaraize :is(ul, ol) { margin: 0; padding: 0; list-style: none; } .pspt.pspt .pspt-article .summaraize li { position: relative; margin: 0; padding-left: 26px; font: 400 15.5px/1.65 var(--sans); color: var(--ink); } .pspt.pspt .pspt-article .summaraize li:hover { color: var(--ink); } .pspt.pspt .pspt-article .summaraize li + li { margin-top: 10px; } .pspt.pspt .pspt-article .summaraize li::before { content: ''; position: absolute; left: 0; top: 0.85em; width: 12px; height: 1px; background: var(--gold-accent); }/* Embedded block: Quick answer */ .pspt.pspt .pspt-article > .bb-aeo-block { margin-block: 2.4em; } .pspt.pspt .pspt-article .bb-aeo-block { border-radius: 2px; background: linear-gradient(180deg, var(--navy) 0%, var(--navy-deep) 100%); box-shadow: none; overflow: hidden; } .pspt.pspt .pspt-article .bb-aeo-inner { padding: clamp(28px, 4vw, 44px); color: #fff; } .pspt.pspt .pspt-article .bb-aeo-label { margin: 0 0 12px; font: 500 12px/1.3 var(--sans); letter-spacing: 0.18em; text-transform: uppercase; color: var(--gold-soft); } .pspt.pspt .pspt-article .bb-aeo-title { margin: 0 0 18px; font: 400 clamp(24px, 2.2vw, 30px)/1.2 var(--serif); letter-spacing: -0.01em; text-transform: none; color: #fff; } .pspt.pspt .pspt-article .bb-aeo-text { margin: 0 0 14px; font: 300 16px/1.75 var(--sans); color: var(--on-navy-2); } .pspt.pspt .pspt-article .bb-aeo-list { margin: 18px 0 0; padding-left: 20px; } .pspt.pspt .pspt-article .bb-aeo-list li { margin-bottom: 10px; font: 300 16px/1.65 var(--sans); color: var(--on-navy-2); } .pspt.pspt .pspt-article .bb-aeo-footnote { margin: 20px 0 0; padding-top: 16px; border-top: 1px solid var(--hair-navy); font: 400 14px/1.6 var(--sans); color: var(--on-navy-3); } .pspt.pspt .pspt-article .bb-aeo-block :is(strong, b) { font-weight: 500; color: #fff; } .pspt.pspt .pspt-article .bb-aeo-block a { color: var(--gold-soft); text-decoration: underline; text-underline-offset: 3px; }/* Embedded block: mid-article call to action */ .pspt.pspt .pspt-article > .bb-cta-block { margin-block: 2.8em; } .pspt.pspt .pspt-article .bb-cta-block { padding: clamp(32px, 5vw, 52px) clamp(24px, 4.4vw, 48px); border-radius: 2px; text-align: left; box-shadow: none; background: radial-gradient(120% 90% at 90% 0%, rgba(201, 169, 97, 0.14), transparent 60%), linear-gradient(180deg, var(--navy) 0%, var(--navy-deep) 100%); } .pspt.pspt .pspt-article .bb-cta-inner { max-width: 560px; margin: 0; color: #fff; } .pspt.pspt .pspt-article .bb-cta-title { margin: 0 0 14px; font: 400 clamp(26px, 2.4vw, 32px)/1.18 var(--serif); letter-spacing: -0.01em; text-transform: none; color: #fff; } .pspt.pspt .pspt-article .bb-cta-text { margin: 0 0 12px; font: 300 16px/1.75 var(--sans); color: var(--on-navy-2); } .pspt.pspt .pspt-article .bb-cta-button { display: inline-flex; align-items: center; margin-top: 18px; padding: 14px 24px; border: 1px solid var(--gold); border-radius: 2px; background: var(--gold); color: var(--navy-deep); font: 500 13px/1.35 var(--sans); letter-spacing: 0.08em; text-transform: uppercase; text-decoration: none; text-align: center; transition: background-color 220ms ease, color 220ms ease; } .pspt.pspt .pspt-article .bb-cta-button:is(:hover, :focus-visible) { background: transparent; color: var(--gold-soft); }/* Embedded block: Rank Math FAQ, as an accordion (post.js adds the toggles; without JS every answer shows). Markup: #rank-math-faq > .rank-math-list > .rank-math-list-item > h3.rank-math-question + .rank-math-answer. The site's Additional CSS styles the question with !important at (1,1,0), so the few overrides that must win carry !important at (1,4,0). */ .pspt.pspt .pspt-article #rank-math-faq.rank-math-block { max-width: none; margin: 1em 0 0; padding: 0; background: none; border: 0; border-top: 1px solid var(--navy-deep); border-radius: 0; box-shadow: none; font-family: var(--sans); } .pspt.pspt .pspt-article #rank-math-faq .rank-math-list { margin: 0; padding: 0; } .pspt.pspt .pspt-article #rank-math-faq .rank-math-list-item { margin: 0; padding: 0; border-bottom: 1px solid var(--line); } .pspt.pspt .pspt-article #rank-math-faq .rank-math-question { display: block; position: static; margin: 0 !important; padding: 22px 56px 22px 0; font: 600 17px/1.45 var(--sans) !important; letter-spacing: 0; text-transform: none; color: var(--navy-deep) !important; } .pspt.pspt .pspt-article #rank-math-faq .rank-math-question::before, .pspt.pspt .pspt-article #rank-math-faq .rank-math-question::after { content: none; display: none; } .pspt.pspt .pspt-article #rank-math-faq .rank-math-question strong { font-weight: inherit; color: inherit; } .pspt.pspt .pspt-article #rank-math-faq .rank-math-answer { margin: 0; padding: 0 56px 24px 0; font: 400 16px/1.75 var(--sans); color: var(--ink); } .pspt.pspt .pspt-article #rank-math-faq .rank-math-answer p { margin: 0; font: inherit; color: inherit; } .pspt.pspt .pspt-article #rank-math-faq .rank-math-answer p + p { margin-top: 0.8em; } .pspt.pspt .pspt-article #rank-math-faq .rank-math-answer a { color: var(--navy); text-decoration: underline; text-decoration-color: rgba(168, 134, 74, 0.6); text-underline-offset: 3px; }/* Accordion state (only once post.js has run) */ .pspt.pspt .pspt-article #rank-math-faq.pspt-faq .rank-math-question { padding: 0; } .pspt.pspt .pspt-article #rank-math-faq.pspt-faq .pspt-faq__toggle { position: relative; display: block; width: 100%; padding: 22px 56px 22px 0; text-align: left; font: inherit; color: inherit; white-space: normal; overflow-wrap: break-word; cursor: pointer; transition: color 0.25s var(--ease); } .pspt.pspt .pspt-article #rank-math-faq.pspt-faq .pspt-faq__toggle:hover { color: var(--gold-text); } .pspt.pspt .pspt-article #rank-math-faq.pspt-faq .pspt-faq__toggle:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; } .pspt-faq__icon { position: absolute; top: 50%; right: 4px; width: 30px; height: 30px; margin-top: -15px; border: 1px solid rgba(168, 134, 74, 0.55); border-radius: 50%; transition: background-color 0.3s var(--ease), border-color 0.3s var(--ease); } .pspt-faq__icon::before, .pspt-faq__icon::after { content: ''; position: absolute; top: 50%; left: 50%; width: 11px; height: 1px; margin: -0.5px 0 0 -5.5px; background: var(--gold-accent); transition: transform 0.35s var(--ease-out), background-color 0.3s var(--ease); } .pspt-faq__icon::after { transform: rotate(90deg); } .pspt-faq .is-open .pspt-faq__icon { background: var(--navy-deep); border-color: var(--navy-deep); } .pspt-faq .is-open .pspt-faq__icon::before, .pspt-faq .is-open .pspt-faq__icon::after { background: var(--gold-soft); } .pspt-faq .is-open .pspt-faq__icon::after { transform: rotate(0deg); } .pspt.pspt .pspt-article #rank-math-faq.pspt-faq .rank-math-answer { display: grid; grid-template-rows: 0fr; padding-bottom: 0; transition: grid-template-rows 0.4s var(--ease-out), padding-bottom 0.4s var(--ease-out); } .pspt.pspt .pspt-article #rank-math-faq.pspt-faq .is-open .rank-math-answer { grid-template-rows: 1fr; padding-bottom: 24px; } .pspt-faq__body { min-height: 0; overflow: hidden; }/* About the author (after the article) */ .pspt.pspt .pspt-authorbox { display: flex; flex-direction: column; margin-top: clamp(56px, 7vw, 80px); padding-top: 32px; border-top: 1px solid var(--line); } .pspt.pspt .pspt-authorbox .pspt-label { margin-bottom: 22px; } .pspt.pspt .pspt-author .elementor-author-box { display: flex; align-items: flex-start; gap: 24px; } .pspt.pspt .pspt-author .elementor-author-box__avatar { flex: none; align-self: flex-start; margin: 0; } .pspt.pspt .pspt-author .elementor-author-box__avatar img { display: block; width: 88px; height: 88px; margin: 0; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 1px var(--line); } .pspt.pspt .pspt-author .elementor-author-box__text { min-width: 0; } .pspt.pspt .pspt-author .elementor-author-box__name { margin: 4px 0 0; font: 500 26px/1.2 var(--serif); letter-spacing: -0.005em; text-transform: none; color: var(--navy-deep); } .pspt.pspt .pspt-author .elementor-author-box__bio { margin: 10px 0 0; font: 400 15px/1.7 var(--sans); color: var(--grey); } .pspt.pspt .pspt-author .elementor-author-box__bio p { margin: 0; } .pspt.pspt .pspt-author .elementor-author-box__button { display: none; } .pspt.pspt .pspt-author__link, .pspt.pspt .pspt-card__practice { display: inline-flex; align-items: center; gap: 12px; margin-top: 16px; font: 500 11.5px/1 var(--sans); letter-spacing: 0.16em; text-transform: uppercase; color: var(--navy); } .pspt.pspt .pspt-author__link::after, .pspt.pspt .pspt-card__practice::after { content: ''; display: block; width: 26px; height: 1px; background: var(--gold); transition: width 0.6s var(--ease-out); } .pspt.pspt .pspt-author__link:hover::after, .pspt.pspt .pspt-card__practice:hover::after { width: 52px; } .pspt.pspt .pspt-authorbox.pspt-authorbox--firm { display: none; }/* Aside: contents list */ .pspt.pspt .pspt-toc { display: block; } .pspt.pspt .pspt-toc.pspt-toc--empty { display: none; } .pspt.pspt .pspt-toc__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; list-style: none; cursor: default; } .pspt.pspt .pspt-toc__head::-webkit-details-marker { display: none; } .pspt.pspt .pspt-toc__head::marker { content: ''; } .pspt-toc__count { font: italic 400 15px/1 var(--serif); color: var(--grey); } .pspt-toc__chev { display: none; } .pspt.pspt .pspt-toc__list { position: relative; margin-top: 18px; border-left: 1px solid var(--line); max-height: max(180px, calc(100vh - 470px)); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: var(--line) transparent; } .pspt.pspt .pspt-toc__list a { display: block; margin-left: -1px; padding: 7px 0 7px 18px; border-left: 2px solid transparent; font: 400 14px/1.45 var(--sans); color: var(--grey); transition: color 0.25s var(--ease), border-color 0.25s var(--ease); } .pspt.pspt .pspt-toc__list a:hover { color: var(--navy-deep); } .pspt.pspt .pspt-toc__list a[aria-current] { border-left-color: var(--gold); color: var(--navy-deep); font-weight: 500; }/* Aside: contact card */ .pspt.pspt .pspt-card { position: relative; margin-top: 40px; padding: 28px 26px 26px; overflow: hidden; border-radius: 2px; color: #fff; background: radial-gradient(120% 80% at 100% 0%, rgba(201, 169, 97, 0.12), transparent 60%), linear-gradient(180deg, var(--navy) 0%, var(--navy-deep) 100%); } .pspt.pspt .pspt-toc.pspt-toc--empty + .pspt-card { margin-top: 0; } .pspt.pspt .pspt-card .pspt-label { color: var(--gold-soft); } .pspt-card__title { margin-top: 12px; font: 400 25px/1.18 var(--serif); letter-spacing: -0.01em; color: #fff; } .pspt-card__title em { font-style: italic; color: var(--gold-soft); } .pspt-card__text { margin-top: 12px; font: 300 14.5px/1.65 var(--sans); color: var(--on-navy-2); } .pspt.pspt .pspt-card__phone { display: block; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--hair-navy); font: 500 24px/1 var(--serif); letter-spacing: 0.02em; color: #fff; transition: color 0.25s var(--ease); } .pspt.pspt .pspt-card__phone:hover { color: var(--gold-soft); } .pspt.pspt .pspt-card .pspt-btn { width: 100%; margin-top: 20px; } .pspt.pspt .pspt-card__practice { color: var(--on-navy-2); margin-top: 18px; } .pspt.pspt .pspt-card__practice:hover { color: #fff; } .pspt.pspt .pspt-card__practice[hidden] { display: none; }/* ---------- Sections below the article ---------- */ .pspt.pspt-sec { display: flex; flex-direction: column; padding: clamp(64px, 8vw, 104px) var(--inline); } .pspt.pspt-sec--cream { background: var(--cream); } .pspt.pspt-sec--white { background: #fff; } .pspt.pspt-sec--line { border-top: 1px solid var(--line); }/* Related articles (Elementor Posts widget, classic skin): same cards as the Insights page */ .pspt.pspt .elementor-posts-container { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(40px, 4.4vw, 56px) clamp(20px, 2.6vw, 36px); margin: 0; padding: 0; --grid-column-gap: 0; --grid-row-gap: 0; } .pspt.pspt .elementor-post { display: flex; flex-direction: column; margin: 0; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; overflow: visible; } .pspt.pspt .elementor-post__thumbnail__link { position: relative; display: block; width: 100%; margin: 0 0 20px; } .pspt.pspt .elementor-post__thumbnail { position: relative; width: 100%; height: auto; padding-bottom: 0; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 0; background: var(--studio); } .pspt.pspt .elementor-post__thumbnail img { position: absolute; inset: 0; top: 0; left: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% 28%; transform: none; filter: none; transition: transform 1.2s var(--ease-out); } .pspt.pspt .elementor-post:hover .elementor-post__thumbnail img { transform: scale(1.04); } .pspt.pspt .elementor-post__text { display: flex; flex-direction: column; flex: 1; margin: 0; padding: 0; } .pspt.pspt .elementor-post__title { order: 1; margin: 10px 0 0; font: 400 clamp(22px, 1.8vw, 26px)/1.22 var(--serif); letter-spacing: -0.005em; color: var(--navy-deep); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; } .pspt.pspt .elementor-post__title a { color: inherit; font: inherit; transition: color 0.3s var(--ease); } .pspt.pspt .elementor-post:hover .elementor-post__title a, .pspt.pspt .elementor-post__title a:focus-visible { color: var(--gold-text); } .pspt.pspt .elementor-post__meta-data { display: none; } .pspt.pspt .elementor-post__excerpt { order: 2; margin: 12px 0 0; } .pspt.pspt .elementor-post__excerpt p { margin: 0; font: 400 14px/1.65 var(--sans); color: var(--grey); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; } .pspt.pspt .elementor-post__read-more-wrapper { order: 3; margin-top: auto; padding-top: 16px; } .pspt.pspt .elementor-post__read-more { order: 3; align-self: flex-start; margin-top: auto; padding-top: 16px; display: inline-flex; align-items: center; gap: 12px; font: 500 11.5px/1 var(--sans); letter-spacing: 0.16em; text-transform: uppercase; color: var(--navy); } .pspt.pspt .elementor-post__read-more-wrapper .elementor-post__read-more { padding-top: 0; } .pspt.pspt .elementor-post__read-more::after { content: ''; display: block; width: 26px; height: 1px; background: var(--gold); transition: width 0.6s var(--ease-out); } .pspt.pspt .elementor-post:hover .elementor-post__read-more::after { width: 52px; } .pspt.pspt .elementor-post__badge, .pspt.pspt .elementor-post__avatar { display: none; } .pspt-cardkicker { order: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; font: 500 11px/1.4 var(--sans); letter-spacing: 0.16em; text-transform: uppercase; color: var(--grey); } .pspt-cardkicker__label { color: var(--gold-text); } .pspt-cardkicker__label + .pspt-cardkicker__date::before { content: '\00B7'; margin-right: 10px; color: var(--gold); }/* Reviews (Trustindex renders its own widget inside) */ .pspt.pspt .pspt-reviews { width: 100%; min-height: 40px; }/* ---------- Enquiry (the site's global "Free Case Assessment" form, restyled here only) ---------- */ .pspt.pspt-enquiry { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(40px, 6vw, 96px); align-items: start; } .pspt-enquiry__text { margin-top: -20px; max-width: 46ch; font: 400 16px/1.75 var(--sans); color: var(--grey); } .pspt-contact { margin-top: 32px; border-top: 1px solid var(--line); } .pspt-contact li { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--line); font: 400 15px/1.55 var(--sans); color: var(--navy-deep); } .pspt-contact__k { padding-top: 3px; font: 500 11px/1.4 var(--sans); letter-spacing: 0.16em; text-transform: uppercase; color: var(--gold-text); } .pspt.pspt .pspt-contact a { color: var(--navy-deep); transition: color 0.25s var(--ease); } .pspt.pspt .pspt-contact a:hover { color: var(--gold-text); } .pspt.pspt .pspt-contact a[href^='tel:'] { font: 500 22px/1.1 var(--serif); letter-spacing: 0.02em; } .pspt.pspt .pspt-formcard { display: flex; flex-direction: column; padding: clamp(24px, 3.4vw, 40px); background: #fff; border: 1px solid var(--line); border-top: 2px solid var(--gold); border-radius: 2px; box-shadow: 0 30px 60px -44px rgba(10, 31, 51, 0.45); } .pspt.pspt .pspt-formcard .pspt-label { margin-bottom: 22px; } /* The form's own widget CSS sits at (0,4,0) to (0,6,0), so these rules are id-scoped. */ #pspt-enquiry .elementor-form-fields-wrapper { margin: 0 -8px -18px; } #pspt-enquiry .elementor-field-group { margin: 0 0 18px; padding: 0 8px; } #pspt-enquiry .elementor-field-group > label, #pspt-enquiry .elementor-field-label { margin: 0 0 8px; padding: 0; font: 500 11px/1.3 var(--sans); letter-spacing: 0.14em; text-transform: uppercase; color: var(--navy); } #pspt-enquiry .elementor-mark-required .elementor-field-label::after { color: var(--gold-accent); } #pspt-enquiry .elementor-field-group .elementor-field:not(.elementor-select-wrapper), #pspt-enquiry .elementor-select-wrapper select { width: 100%; height: 48px; min-height: 48px; margin: 0; padding: 0 14px; border: 1px solid #d9d2c3; border-radius: 2px; background-color: #fff; box-shadow: none; font: 400 15px/1.3 var(--sans); color: var(--navy-deep); transition: border-color 0.2s ease, box-shadow 0.2s ease; } #pspt-enquiry .elementor-select-wrapper select { padding-right: 40px; } #pspt-enquiry textarea.elementor-field { height: auto; min-height: 120px; padding: 12px 14px; } #pspt-enquiry .elementor-field::placeholder { color: #9a958c; opacity: 1; } #pspt-enquiry .elementor-field-group .elementor-field:focus, #pspt-enquiry .elementor-select-wrapper select:focus { border-color: var(--gold); outline: 0; box-shadow: 0 0 0 3px rgba(201, 169, 97, 0.22); } #pspt-enquiry .elementor-select-wrapper .select-caret-down-wrapper { right: 14px; color: var(--gold-accent); fill: var(--gold-accent); } #pspt-enquiry .elementor-field-type-submit { margin-top: 6px; } #pspt-enquiry .elementor-field-type-submit .elementor-button, #pspt-enquiry .elementor-field-type-submit .elementor-button:is(:hover, :focus, :focus-visible, :active) { width: 100%; height: 52px; min-height: 52px; padding: 0 24px; border: 1px solid var(--gold); border-radius: 2px; box-shadow: none; text-shadow: none; font: 500 13px/1 var(--sans); letter-spacing: 0.08em; text-transform: uppercase; transition: background-color 220ms ease, color 220ms ease, border-color 220ms ease; } #pspt-enquiry .elementor-field-type-submit .elementor-button { background-color: var(--gold); color: var(--navy-deep); } #pspt-enquiry .elementor-field-type-submit .elementor-button:is(:hover, :focus-visible) { background-color: var(--navy-deep); border-color: var(--navy-deep); color: var(--gold); } #pspt-enquiry .elementor-field-type-submit .elementor-button :is(span, .elementor-button-text) { color: inherit; font: inherit; } #pspt-enquiry .elementor-message { font: 400 14px/1.6 var(--sans); }/* Scroll reveal (only once JS is running) */ .pspt--js .pspt-reveal { opacity: 0; transform: translateY(22px); transition: opacity 0.9s var(--ease-out), transform 1.1s var(--ease-out); transition-delay: var(--d, 0ms); } .pspt--js .pspt-reveal.is-in { opacity: 1; transform: none; }@keyframes pspt-rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } } @keyframes pspt-fade { from { opacity: 0; } to { opacity: 1; } }/* ---------- Responsive ---------- */ @media (max-width: 1100px) { .pspt.pspt-body { grid-template-columns: minmax(0, 1fr) 280px; column-gap: 48px; } } @media (max-width: 1024px) { .pspt.pspt .pspt-hero__grid { grid-template-columns: minmax(0, 1fr); gap: 44px; } .pspt.pspt .pspt-hero__media { max-width: 560px; } .pspt.pspt .pspt-hero__img img { aspect-ratio: 3 / 2; } .pspt.pspt .pspt-hero__img::before { inset: 12px -12px -12px 12px; }.pspt.pspt-body { grid-template-columns: minmax(0, 1fr); justify-content: stretch; row-gap: 40px; } .pspt.pspt .pspt-main { max-width: 740px; } .pspt.pspt .pspt-aside { position: static; order: -1; max-width: 740px; } .pspt.pspt .pspt-toc { border: 1px solid var(--line); background: var(--cream); border-radius: 2px; } .pspt.pspt .pspt-toc__head { align-items: center; padding: 16px 20px; cursor: pointer; } .pspt-toc__count { margin-left: auto; } .pspt-toc__chev { display: block; width: 9px; height: 9px; margin: -4px 2px 0 0; border-right: 1px solid var(--gold-accent); border-bottom: 1px solid var(--gold-accent); transform: rotate(45deg); transition: transform 0.3s var(--ease); } .pspt.pspt .pspt-toc__box[open] .pspt-toc__chev { margin-top: 4px; transform: rotate(-135deg); } .pspt.pspt .pspt-toc__list { max-height: none; margin: 0 20px 18px; } .pspt.pspt .pspt-card { display: none; }.pspt.pspt .elementor-posts-container { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pspt.pspt .elementor-posts-container > .elementor-post:nth-child(3) { display: none; } .pspt.pspt-enquiry { grid-template-columns: minmax(0, 1fr); } } @media (max-width: 600px) { .pspt.pspt .pspt-article, .pspt.pspt .pspt-article > p { font-size: 16.5px; line-height: 1.75; } .pspt.pspt .pspt-article .summaraize { padding: 22px 20px 24px; } .pspt.pspt .pspt-article #rank-math-faq .rank-math-question { font-size: 16px !important; } .pspt.pspt .pspt-article #rank-math-faq .rank-math-answer { padding-right: 0; font-size: 15.5px; } .pspt.pspt .pspt-article #rank-math-faq.pspt-faq .pspt-faq__toggle { padding: 18px 48px 18px 0; } .pspt.pspt .pspt-date { padding-left: 0; border-left: 0; } .pspt.pspt .pspt-author .elementor-author-box { gap: 18px; } .pspt.pspt .pspt-author .elementor-author-box__avatar img { width: 64px; height: 64px; } .pspt.pspt .elementor-posts-container { grid-template-columns: 1fr; gap: 44px; } .pspt.pspt .elementor-posts-container > .elementor-post:nth-child(3) { display: flex; } .pspt.pspt .elementor-post__thumbnail { aspect-ratio: 4 / 3; } .pspt-contact li { grid-template-columns: 1fr; gap: 4px; } } @media (prefers-reduced-motion: reduce) { .pspt *, .pspt *::before, .pspt *::after { animation: none !important; transition: none !important; } .pspt--js .pspt-reveal { opacity: 1; transform: none; } }

维多利亚州商业合同的特定履行与土地销售

在维多利亚州,特定履行可能允许一方当事人在损害赔偿无法提供充分救济的情况下强制执行商业协议。本文探讨了土地买卖及其他高价值交易中的救济措施,包括履行准备与意愿、损害赔偿的充分性、酌情拒绝救济的情形,以及在何种情况下法院可能因相关命令将需要持续监督而拒绝提供救济。
涉及一处独特商业房产的维多利亚州特定履行索赔案
简答
维多利亚州法院在何种情况下会下令特定履行?

在维多利亚州,当损害赔偿无法提供充分救济,且法院认为强制履行合同既公平又切实可行时,要求特定履行的主张可能成立。

原告通常必须证明存在可执行的合同,并表明其已准备好且愿意履行自身义务。法院还将考虑是否存在酌情因素导致该命令不恰当。

  • 特定履行是一种衡平法上的、由法院酌情决定的救济措施。
  • 一般而言,损害赔偿必须不足以保护请求人的权益。
  • 索赔人履行义务的准备和意愿可能至关重要。
  • 延误、困难、不确定性以及持续监督等因素可能会成为不予救济的理由。

特定履行通常与土地和真正独特的商业资产特别相关,但结果取决于合同和争议的具体情况。

当一方当事人要求履行合同,且损害赔偿无法提供充分救济时,维多利亚州法院可下令强制履行。 在维多利亚州,特定履行特别适用于土地买卖或涉及独特或难以替代的资产的交易。由于特定履行是一种衡平法救济,仅凭确立有效合同及违约事实,本身并不足以使原告有权获得强制履行的命令。

提出维多利亚州特定履行请求的一方,必须证明损害赔偿不足,并证明其已做好充分准备且愿意履行自身的合同义务。法院还将考虑是否存在任何酌情驳回的理由,使得救济措施不恰当,包括延误、困难、不公平行为或制定和执行该命令时存在的实际困难。需要长期或持续监督的合同可能会带来困难。

因此,对于企业主、董事和商业投资者而言,核心问题不仅仅在于合同是否被违约,而在于该交易本身是否仍然能够且适合通过维多利亚州的特定履行程序来强制执行。

维多利亚州关于特定履行的法律标准是什么?

在维多利亚州,特定履行主要受衡平法原则的约束,而非基于单一的法定诉因。 《1986年最高法院法》(维多利亚州)第29条规定,行使民事管辖权的维多利亚州法院应同时适用法律和衡平法;而第38条则允许法院在具有裁定特定履行的管辖权时,除该救济外,还可判令损害赔偿,或以损害赔偿代替该救济。 因此,特定履行是一种旨在强制执行合同约定本身的衡平救济,而非为了补偿原告的损失。

就维多利亚州的特定履行索赔而言,其出发点是一份可强制执行的合同。若争议涉及土地买卖,《1958年文书法》(维多利亚州)第126条尤为重要。 在部分履行等衡平法原则的约束下,针对土地权益出售或处分合同提起的诉讼,通常要求该协议(或其充分的备忘录或记录)须以书面形式订立,并由受约束的一方或经适当授权的人员签署。 《1958年财产法》(维多利亚州)第53条和第55条也涉及土地权益的设立和处分,并保留了关于部分履行的法律效力。

一旦确立了可强制执行性,法院将考虑损害赔偿是否足以保护请求人。损害赔偿的充分性至关重要,因为当金钱赔偿能提供充分救济时,衡平法通常不会强制要求履行合同。请求人还必须证明其具备履行自身合同义务的必要准备和意愿。 在Foran诉Wight案( 1989)168 CLR 385中,高等法院确认,履行准备和意愿既涉及履行意愿,也涉及履行能力,尽管其具体适用取决于违约的性质和时间点。

该救济措施仍属裁量性。在 JC威廉姆森有限公司诉卢基和穆尔霍兰德案 (1931) 45 CLR 282一案中,高等法院指出了在强制执行需要法院持续监督的情况下,命令履行合同所面临的困难。 在土地买卖的语境下,Tanwar Enterprises Pty Ltd诉Cauchi案( 2003)217 CLR 315进一步说明,在违约发生后,衡平法救济并不能简单地凌驾于有效的合同权利之上。

因此,在维多利亚州,合同的特定履行取决于:存在可强制执行的协议、损害赔偿不足、原告自身的行为能力及行为、拟议命令的可行性,以及不存在相关的酌情禁止事由。

特定履行:维多利亚州——履行商业合同的准备和意愿
寻求特定履行的原告可能需要证明其既有履行自身合同义务的意愿,也有实际履行能力。

维多利亚州法院如何决定是否下令强制履行?

维多利亚州法院将特定履行视为一种酌情性的衡平法救济,而非违约的自动后果。法院会考虑以下因素:损害赔偿是否足以保护原告;原告是否能够履行自身义务;以及强制履行是否符合衡平原则且切实可行。 因此,在维多利亚州能否获得特定履行,既取决于合同约定,也取决于寻求救济时的具体情况。

在何种情况下损害赔偿会被视为不足?

损害赔偿的充分性是关键。如果金钱赔偿能够使索赔人恢复到合同若已履行时本应处于的地位,法院可不予强制履行。

在土地销售中,情况往往有所不同,因为某处特定房产可能难以被替代。类似的推理也可适用于真正独特的商业资产,尽管仅凭商业重要性或稀缺性本身并不能构成获得救济的依据。 《1986年最高法院法》(维多利亚州)第38条还规定,在法院有权裁定强制履行的情况下,除该救济措施外,还可判令赔偿损失,或以赔偿损失代替该救济措施。

原告必须就“准备就绪”和“愿意履行”证明什么?

原告需要证明其已做好履行所应承担义务的准备并具有履行意愿。这不仅仅只是表明完成履约的意图。

在Foran 诉 Wight(1989)168 CLR 385 一案中,高等法院认定,“准备就绪和愿意履行”既涉及履行意愿,也涉及履行能力。 在重大交易中,相关证据可能包括可用的资金、为完成交易所采取的步骤、合同条件的满足、必要的批准,以及表明原告仍具备履行能力的往来信函。

为何合同条款在土地买卖中尤为重要?

尽管土地买卖是要求特定履行的典型情形,但衡平法救济并不取代当事双方约定的合同权利。 在Tanwar Enterprises Pty Ltd诉Cauchi案(2003)217 CLR 315中,高等法院就买方未能在合同规定的必要时限内完成交易一事,审议了衡平救济问题。

因此,对于商业当事人而言,履约条款、违约条款、终止权、融资条件以及将时间视为关键要素的条款,都会对协议是否仍可通过特定履行予以强制执行产生实质性影响。

法院在何种情况下会拒绝特定履行?

即使损害赔偿不足,酌情驳回事由也可能阻止获得救济。相关事项包括延误、困难、不公平行为、待履行的义务存在不确定性,以及拟议的命令是否能够实际执行。

在JC Williamson Ltd诉Lukey和Mulholland案(1931)45 CLR 282中,高等法院指出了在履行义务需要法院持续监督的情况下,授予救济所面临的困难。这一考量对于涉及复杂运营职责的持续性商业安排尤为重要。 与需要反复监督的法律关系相比,明确界定的义务(例如完成产权转让)更易于通过司法途径强制执行。

在维多利亚州,哪些商业纠纷通常会导致要求特定履行的诉讼?

在维多利亚州,关于特定履行的争议通常发生在原告认为合同约定本身比获得损害赔偿更为重要时。实际上的困难在于,商业目标的重要性并不能决定救济措施。法院仍需审查合同是否可强制执行、损害赔偿是否不足,以及衡平法救济是否仍然适当。

一个常见的例子是土地买卖纠纷:卖方在签署具有约束力的合同后拒绝履行,原因可能包括市场状况发生变化、另一位买方出价更高,或者卖方对合同条件是否已满足提出异议。 对买方而言,赔偿金可能无法完全体现购得该特定房产的价值,特别是在该土地具有战略性开发、投资或运营意义的情况下。

在涉及独特商业资产或市场无法替代的合同权利的交易中,也会出现强制履行的情况。争议可能涉及非公开发行公司的股份转让、收购财产或权益的期权,或是作为更大规模商业交易组成部分的约定转让。 在此类案件中,损害赔偿的充分性需要进行细致分析,而非简单地假定每一项具有商业重要性的资产都是独特的。

另一个经常出现的问题是,原告是否始终保持了履行合同的准备和意愿。关于资金安排、先决条件已满足、和解准备以及双方沟通的证据,可能成为决定性因素。如果原告自身未能履行基本义务,即使对方也违反了协议,其仍可能难以获得衡平法救济。

时机同样重要。延迟寻求救济可能会引发实际和公平方面的问题,特别是当资产已被转让、第三方权利已介入,或商业情况已发生重大变化时。因此,应在早期阶段评估潜在的酌情禁止事由。

最后,某些商业合同不适合强制履行,因为履行这些合同需要持续的管理、反复的决策或不断的监督。与在较长时期内监督复杂的商业关系相比,法院更倾向于强制执行明确界定的义务,例如完成产权转让或转移特定资产。

因此,对于那些寻求达成协议而非获得赔偿的当事人而言,诉讼策略应从一开始就侧重于协议的可执行性、履行能力的证据、标的资产的保全,以及拟议的裁决是否能够以足够精确的方式表述。

您需要的是完成交易,而不仅仅是获得赔偿吗?

当商业合同、房产交易或资产转让的标的物无法轻易以金钱替代时,特定履行便显得尤为重要。

Pentana Stanton律师事务所可对合同、现有证据及衡平法考量进行评估,并就应采取特定履行还是其他商业救济措施提供专业建议。

预约咨询

当事人在提起或抗辩特定履行之诉前应做好哪些准备?

应在提起诉讼前开始进行战略评估。 在维多利亚州寻求特定履行的当事人,应明确指明其希望强制执行的合同义务具体内容、该义务是否仍可履行,以及为何损害赔偿的充分性确实存在争议。若争议涉及土地或其他独特资产的出售,为保全标的物,可能还需要尽早考虑提出预告、申请临时禁令或其他保护性救济措施。

证明原告自身具备交易意愿和准备程度的证据尤为重要。在相关情况下,应妥善保存资金批准文件、结算单、往来信函、董事会决议、先决条件的履行情况以及可动用所需资金的证明。原告应避免采取与完成交易意图相悖的行动,因为其行为可能会在日后影响是否能够获得衡平法救济。

拟议的命令还必须具有可操作性。在寻求救济之前,申请人应确定法院能否下令采取某项具体行为(例如办理转让手续或完成产权移交),而不是施加需要持续监督的义务。要求的履行行为越不确定或操作上越复杂,获得有效命令的难度就越大。

对于被告而言,分析范围不应仅限于是否存在违约行为。潜在的酌情驳回事由——包括延误、困难、不公平行为以及原告自身履约缺陷——可能会对结果产生实质性影响。

商业当事方还应从一开始就考虑其他救济方式。在请求特定履行之外或代替特定履行时一并主张损害赔偿,可以在判决前情况发生变化时保留更多选择。因此,在高价值纠纷中,诉讼策略应使所寻求的救济与证据、合同时间表以及客户实际上试图维护的商业目标相一致。

常见问题

在维多利亚州,法院能否强制某人履行合同?

可以。在维多利亚州,如果损害赔偿不足以补偿原告,且公平救济在其他方面是适当的,法院可以下令强制履行合同。该救济措施属于裁量性救济,因此原告必须证明的不仅是违约这一事实。法院还将考虑原告履行合同的准备情况和意愿,以及是否存在任何裁量性障碍。

在土地买卖中,通常是否可以获得特定履行?

土地买卖是适用特定履行的最典型情形之一,因为特定房产可能没有合适的替代品。 如果卖方拒绝履行具有约束力的合同,买方可以申请法院下令要求履行合同,而非仅获得损害赔偿。但是,法院仍将审查合同内容、当事人的行为,以及买方是否始终保持履行准备并有能力完成交易。

在请求特定履行的诉讼中,“准备就绪和愿意履行”指什么?

“准备就绪且愿意履行”意味着原告必须做好准备并有能力履行合同规定的义务。这可能涉及证明资金来源、满足先决条件以及为完成交易所采取的步骤。在Foran诉Wight案(1989)168 CLR 385中,高等法院认定该概念既涉及履行意愿,也涉及履行能力。

法院在何种情况下会拒绝下达特定履行令?

若损害赔偿已足以弥补损失,或基于衡平法考量该命令不恰当,法院可拒绝下令特定履行。相关的酌情拒绝事由可能包括延误、困难、不公平行为、合同义务的不确定性,或由第三方权利引发的问题。此外,若合同要求法院进行长期持续的监督,则难以获得救济。

我能否在请求特定履行的同时主张损害赔偿?

有可能。《1986年最高法院法(维多利亚州)》第38条规定,当法院有管辖权裁定特定履行时,除该救济措施外,还可判令赔偿损失,或以赔偿损失代替该救济措施。当诉讼过程中情况发生变化,或者仅靠履行无法弥补部分损失时,这一点尤为重要。 适当的诉状策略应既体现合同目的,又兼顾现有证据。

在维多利亚州的商业纠纷中,何时应寻求特定履行?

在维多利亚州,当强制履行合同比获得损害赔偿具有更大的实际价值时,请求特定履行可能是适当的,特别是在土地销售或涉及独特资产的交易中。然而,该救济措施仍属裁量性救济。原告必须证明存在可强制执行的合同,证明其已做好履行准备且愿意履行,并解决任何可能导致衡平法救济不适用的裁量性障碍。

墨尔本律师事务所官方徽标
您在墨尔本值得信赖的法律代表

对于企业主、董事和投资者而言,时机选择可能会对可选方案产生重大影响。在争议进一步升级之前,可能需要对合同权利、证据及相关资产进行保护。我们的商业诉讼团队就重大合同纠纷提供法律建议,包括要求特定履行的索赔及相关司法救济。如果合同的履行在商业上仍至关重要,请预约咨询,以探讨可用的救济措施和诉讼策略。

本文仅提供一般性信息,不构成法律建议。如需针对您具体情况的建议,请联系我们的团队。

关于作者
Picture of Jesse LaGreca
Jesse LaGreca
Jesse LaGreca is a Partner and Principal Solicitor at Pentana Stanton Lawyers, admitted to practise before the Supreme Court of Victoria and the High Court of Australia. A graduate of Monash University (Law) and La Trobe University (Business), Jesse specialises in commercial law, family law, and professional negligence, with particular expertise in complex property disputes and advising entrepreneurs and growing businesses. His practical, results-driven approach — spanning advisory work through to court advocacy — ensures clients receive comprehensive representation at every stage of their matter.
{"slugs":{"case-summary":[0,"caseSummary"],"legal-explainer":[1,"explainer"],"legal-videos":[2,"video"],"commercial-lawyers":[3,"commercial"],"commercial":[3,"commercial"],"commercial-litigation":[3,"commercial"],"debt-recovery":[3,"commercial"],"business-lawyers":[3,"commercial"],"shareholder-disputes":[3,"commercial"],"shareholder-oppression":[3,"commercial"],"business-disputes":[3,"commercial"],"civil-litigation":[3,"commercial"],"litigation-lawyers":[3,"commercial"],"self-managed-superannuation-fund":[3,"commercial"],"defamation-law":[3,"commercial"],"insolvency-director-protection":[3,"commercial"],"insolvency-lawyers":[3,"commercial"],"insolvency-restructuring":[3,"commercial"],"professional-negligence-law":[3,"commercial"],"professional-negligence-law-2":[3,"commercial"],"professional-negligence-lawyers":[3,"commercial"],"duty-of-care-professional-liability-claims":[3,"commercial"],"buy-outs-and-exits":[3,"commercial"],"contracts-dispute-resolution":[3,"commercial"],"tax-disputes":[3,"commercial"],"tax-litigation":[3,"commercial"],"taxation-law":[3,"commercial"],"corporate-governance":[3,"commercial"],"corporate-lawyers":[3,"commercial"],"retail-commercial-leasing":[3,"commercial"],"family-laws":[4,"family"],"divorce-lawyers":[4,"family"],"family-lawyer":[4,"family"],"property-financial-agreements":[4,"family"],"property-settlement-lawyers":[4,"family"],"parenting-orders":[4,"family"],"wills-estates":[5,"estates"],"estate-litigation":[5,"estates"],"estate-administration":[5,"estates"],"contesting-a-will":[5,"estates"],"wills-estate-disputes":[5,"estates"],"executor-disputes":[5,"estates"],"power-of-attorney":[5,"estates"]},"groups":{"caseSummary":"Case summary","explainer":"Legal explainer","video":"Video","commercial":"Commercial law","family":"Family law","estates":"Wills & estates"},"practices":{"commercial":{"label":"commercial law","url":"/commercial-law/"},"family":{"label":"family law","url":"/family-law/"},"estates":{"label":"wills & estates","url":"/estate-planning/"}},"team":["penny-lagreca","jesse-lagreca","sarah-lagreca","david-sewell","michael-jacobs","peter-wood","violet-lazari","paul-roberts","adam-lopez","nick-lionakis","shan-lynette-stevens","ariane-ang","tianzhen-summer-xia","keerththana-mcvilly","sefika-gungordu","jack-hall","mrinal-kotnala","ruth-aaron","joanna-layton","rozeb-vohra","nida-azad","nick-tesch","shipra-malhotra","maysa-taouk","gelisha-gopaul","vivian-klestorny","cindy-ngo","lakshi-piyathilake","uththara-karunanayaka"],"teamUrl":"/meet-the-team/","firmName":"Pentana Stanton Lawyers","text":{"readTime":"{n} min read","tocCount":"{n} sections","profile":"View profile","practice":"Explore {label}"}}/* Pentana Stanton / Article (single post) behaviour. - Builds the "In this article" list from the post's own section headings (skipping the embedded Key takeaways, Quick answer, CTA and FAQ blocks), highlights the section being read, and draws the reading-progress line. - Adds the practice label and reading time to the hero, and the practice link to the side card (mapped from the post's category-* classes, so messy category names never show). - Links the author to their profile on the team page; an author who is not on the team (a system account) is shown as the firm instead. - Labels the related-article cards and reveals them on scroll. No dependencies; runs once per page. */ (function () { 'use strict';if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); }function init() { var cfgEl = document.querySelector('script[data-pspt-cfg]'); if (!cfgEl || document.documentElement.hasAttribute('data-pspt-init')) return; document.documentElement.setAttribute('data-pspt-init', '');var cfg = JSON.parse(cfgEl.textContent); var reduced = window.matchMedia('(prefers-reduced-motion: reduce)').matches; var article = document.querySelector('.pspt-article'); Array.prototype.forEach.call(document.querySelectorAll('.pspt'), function (el) { el.classList.add('pspt--js'); });var classes = postClasses(); setKicker(cfg, classes, article); setPracticeLink(cfg, classes); setAuthor(cfg); markMissingImage(); labelCards(cfg); if (article) { setupFaq(article); buildToc(cfg, article, reduced); } reveal(reduced); }// Theme Builder puts the post's classes (category-*, tag-*) on the single-post location wrapper. function postClasses() { var holder = document.querySelector('.elementor-location-single[class*="category-"]') || document.querySelector('article[class*="category-"]'); return holder ? Array.prototype.slice.call(holder.classList) : []; }function best(cfg, classes, onlyPractice) { var hit = null; classes.forEach(function (c) { if (c.indexOf('category-') !== 0) return; var m = cfg.slugs[c.slice(9)]; if (!m || (onlyPractice && !cfg.practices[m[1]])) return; if (!hit || m[0] = 2; })[0]; if (level === 'H2') article.classList.add('pspt-article--h2'); var items = level ? heads.filter(function (h) { return h.tagName === level; }) : []; var links = []; var mq = window.matchMedia('(max-width: 1024px)');if (toc && box && list && items.length) { var used = {}; items.forEach(function (h) { if (!h.id) { var base = 'pspt-' + (slugify(h.textContent).slice(0, 60) || 'section'); var id = base; var n = 2; while (used[id] || document.getElementById(id)) { id = base + '-' + n++; } h.id = id; } used[h.id] = true; var li = document.createElement('li'); var a = document.createElement('a'); a.href = '#' + h.id; a.textContent = h.textContent.trim(); a.addEventListener('click', function (e) { e.preventDefault(); if (mq.matches) box.open = false; h.scrollIntoView({ behavior: reduced ? 'auto' : 'smooth', block: 'start' }); if (history.replaceState) history.replaceState(null, '', '#' + h.id); }); li.appendChild(a); list.appendChild(li); links.push(a); }); var count = toc.querySelector('.pspt-toc__count'); if (count) count.textContent = cfg.text.tocCount.replace('{n}', items.length); // Open on desktop (and not collapsible there); collapsed on tablet and phone. box.open = !mq.matches; var summary = box.querySelector('summary'); if (summary) summary.addEventListener('click', function (e) { if (!mq.matches) e.preventDefault(); }); if (mq.addEventListener) mq.addEventListener('change', function () { box.open = !mq.matches; }); } else if (toc) { toc.classList.add('pspt-toc--empty'); }var active = -1; var ticking = false; function update() { ticking = false; var line = Math.min(160, window.innerHeight * 0.25); var current = -1; for (var i = 0; i < items.length; i++) { if (items[i].getBoundingClientRect().top - line list.clientHeight) { list.scrollTop = links[current].offsetTop - list.clientHeight / 2; } } active = current; } if (bar) { var r = article.getBoundingClientRect(); var total = r.height - window.innerHeight * 0.6; var p = total > 0 ? Math.min(1, Math.max(0, -r.top / total)) : 0; bar.style.transform = 'scaleX(' + p.toFixed(4) + ')'; } } function onScroll() { if (!ticking) { ticking = true; window.requestAnimationFrame(update); } } window.addEventListener('scroll', onScroll, { passive: true }); window.addEventListener('resize', onScroll, { passive: true }); update(); }// ---------- Related-article cards: practice label + date ---------- function labelCards(cfg) { Array.prototype.forEach.call(document.querySelectorAll('.pspt .elementor-post'), function (card) { var text = card.querySelector('.elementor-post__text'); if (!text || text.querySelector('.pspt-cardkicker')) return; var group = best(cfg, Array.prototype.slice.call(card.classList), false); var date = card.querySelector('.elementor-post-date'); var kicker = document.createElement('p'); kicker.className = 'pspt-cardkicker'; if (group) { var l = document.createElement('span'); l.className = 'pspt-cardkicker__label'; l.textContent = cfg.groups[group]; kicker.appendChild(l); } if (date) { var d = document.createElement('span'); d.className = 'pspt-cardkicker__date'; d.textContent = date.textContent.trim(); kicker.appendChild(d); } text.insertBefore(kicker, text.firstChild); }); var sizes = '(max-width: 600px) calc(100vw - 40px), (max-width: 1024px) calc(50vw - 40px), 380px'; Array.prototype.forEach.call(document.querySelectorAll('.pspt .elementor-post__thumbnail img'), function (img) { img.sizes = sizes; }); }function reveal(reduced) { var items = document.querySelectorAll('.pspt-sec .elementor-post, .pspt-sec .pspt-head'); Array.prototype.forEach.call(items, function (el) { el.classList.add('pspt-reveal'); }); if (!('IntersectionObserver' in window) || reduced) { Array.prototype.forEach.call(items, function (el) { el.classList.add('is-in'); }); return; } var io = new IntersectionObserver(function (entries) { var n = 0; entries.forEach(function (e) { if (!e.isIntersecting) return; e.target.style.setProperty('--d', Math.min(n++, 5) * 80 + 'ms'); e.target.classList.add('is-in'); io.unobserve(e.target); }); }, { rootMargin: '0px 0px -8% 0px', threshold: 0.1 }); Array.prototype.forEach.call(items, function (el) { io.observe(el); }); } })();
延伸阅读

相关见解

一名男性企业主在咨询预约前,正将财务记录整理进文件夹中

破产通知与债权人申请:使个人债务人宣告破产

破产通知可能会导致针对个人的破产程序,但破产并非自动发生,也无法保证债务得到偿还。本文阐述了判决债务的要求、合规期限、对通知提出异议的理由以及法院要求的证据,并为维多利亚州的债权人和债务人提供了实务方面的考虑。

阅读文章
客户评价

客户评价

咨询

请与我们的团队商讨您的事宜

请简要介绍一下您的情况,我们将与您联系以安排咨询。您的咨询内容将严格保密。

  • 致电(03) 900 22 800
  • 电子邮件reception@pstanton.com.au
  • 墨尔本维多利亚州墨尔本隆斯代尔街552号3层和5层,邮编3000
  • 丹德农维多利亚州丹德农罗宾逊街50-54号1层9室,邮编3175
保密咨询