/* 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; } }

如何在澳大利亚合法终止特许经营协议

通过我们全面的 2025 指南,了解在澳大利亚终止特许经营协议的法律程序。了解您的权利、退出策略以及现行 ACCC 法规的合规要求。关于冷却期、相互终止以及在退出过程中保护您的商业利益的专家见解。
在彭塔纳·斯坦顿律师事务所墨尔本办公室,律师向企业主展示特许经营终止协议文件,并提供专业法律咨询

特许经营协议是具有法律约束力的合同,为特许经营商和加盟商之间的关系奠定了基础。虽然这些安排通常都有具体的期限,但也可能出现加盟商希望或需要提前退出的情况。然而,这样做并不是一走了之那么简单。以错误的方式退出特许经营可能会导致严重的法律和经济后果。

让我们仔细看看澳大利亚的特许经营者如何合法地终止协议–而不承担不必要的风险。

仔细阅读特许经营协议

首先要仔细阅读特许经营协议。这份文件将概述关键条款,包括

  • 合同期限和续约条款
  • 任何一方可以终止的条件
  • 通知期
  • 终止后的要求(如停止使用商标、归还机密信息等)

了解《特许经营行为准则》规定的权利也很重要,该准则是 2010 年《竞争与消费者法》(澳大利亚联邦)规定的强制性行业准则。该守则为如何终止协议提供了重要指导。

您可以在 ACCC 网站上找到有关特许经营协议终止的详细指南。

终止特许经营协议的法律依据

以下是澳大利亚法律承认的一些终止特许经营协议的方式:

1.相互协议

这是最直接的选择。如果双方都同意结束关系,可以通过谈判确定条款,并在正式的终止契约中记录下来。

2.特许人违约

如果特许经营者未能履行其法律义务,如提供足够的支持、作出虚假陈述或违反行为准则,你可能有权终止协议。记录所有违规行为并寻求法律建议至关重要。

3.冷却期

本法规定,在您签署协议或付款后有 14 天的冷静期。在此期间,您可以退出而不会受到处罚。

4.任期届满

如果您的合同即将到期,您可以选择不再续约。请确保按照协议中的规定以书面形式发出通知。

5.终止条款

有些协议包含允许提前终止的具体条款–例如,在破产、严重不当行为或业绩不佳的情况下。请务必遵守任何程序和条件。

为什么不应该在没有法律咨询的情况下终止合同

以错误的方式终止特许经营协议会让你面临巨大的风险:

  • 因违约而被起诉
  • 支付损害赔偿金或持续的特许经营费
  • 声誉受损
  • 执行限制性契约(如非竞争条款)

切勿冲动行事。在采取终止措施之前,一定要咨询律师。

如何引导离职流程

以下是安全结束特许经营协议的结构化方法:

1.获取法律咨询
特许经营律师可以评估你的情况并概述你的选择。

2.了解自己的法律地位
重温特许经营协议和《准则》,了解自己的权利和义务。

3.将一切记录在案
保留所有通信记录和特许人的任何违规行为记录。

4.明确沟通
与特许经营人展开专业对话,探讨可能的解决方案。

5.协商退出条款
如果你们能达成协议,应在终止契约中正式确定细节。

6.履行退出义务
这可能包括取消办公场所的品牌标识、归还知识产权以及结清任何未付款项。

其他退出方式

如果无法立即终止合同,还有其他选择:

干净、合法地离开

终止特许经营协议可能具有挑战性,但这是可能的,尤其是在正确的指导下。只要清楚地了解自己的权利、可靠的文件和专业的法律支持,就能最大限度地降低风险,掌控企业的未来。

考虑退出?如需了解澳大利亚特许经营法方面值得信赖的建议,并在顺利、合规的终止过程中获得支持,请立即联系Pentana Stanton Lawyers。

更多阅读和工具

关于作者
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
保密咨询