/* Soft illustration accents, with the existing type scale and spacing. */
:root{--line:#dfcfb9;--pale:#f4e6cc;--cream:#f4dfce;--text:#5d645b;--muted:#837b6e}
body{background:#f8ebd8}
.page-intro{position:relative;background:linear-gradient(110deg,#f1d9c8,#f8e9c7);overflow:hidden}
.page-intro:not(.illustrated-intro):not(.account-intro)::after{content:"";position:absolute;right:2%;bottom:-85px;width:330px;height:280px;background:url('/images/illustrations/journal.svg') center/contain no-repeat;opacity:.25;pointer-events:none}
.home-concerns{background:#f1dfc4 url('/images/illustrations/journal.svg') right -100px top -75px/350px auto no-repeat}
.welcome-mid{background:#f1dccb url('/images/illustrations/tea.svg') right 3% center/280px auto no-repeat}
.welcome-mid .container{position:relative}
.tinted{background-color:#f4e5c7;background-image:radial-gradient(ellipse at 95% 100%,#f1d6bc 0,transparent 55%)}
.welcome-close{position:relative;background-image:linear-gradient(100deg,rgba(16,63,54,.93),rgba(29,80,67,.91)),url('/images/illustrations/tea.svg');background-position:center,right center;background-size:auto,420px;background-repeat:no-repeat}
.illustrated-intro .container{position:relative;padding-right:260px}
.illustrated-intro .section-label{font-size:12px;margin-bottom:15px;color:var(--jade)}
.illustrated-intro h1{font-size:32px;letter-spacing:-.025em}
.page-intro--concise h1{margin-bottom:0}
.illustrated-intro .container>p:last-of-type{font-size:15px;max-width:660px}
.portal-art{position:absolute;width:240px;pointer-events:none;user-select:none}
.illustrated-intro .portal-art{right:0;top:50%;transform:translateY(-50%);width:275px;opacity:.85}
.services-section{padding-block:42px 60px;background:radial-gradient(ellipse at 0 60%,#f0dbc1,transparent 45%)}
.service-grid{gap:22px}
.service-card{position:relative;isolation:isolate;overflow:hidden;padding:30px;border-radius:8px;border:1px solid #dfcbb4;background:#fff4e4;box-shadow:0 8px 26px #203e2605;min-height:245px}
.service-card-copy{position:relative;z-index:1;max-width:80%}
.service-card h2{font-size:21px;margin:10px 0 12px}
.service-card p{font-size:14px;max-width:350px;min-height:50px}
.service-card .button{margin-top:20px;background:#fff4e4}
.service-card .portal-art{width:220px;right:-55px;bottom:-20px;opacity:.4;z-index:0}
.service-index{font-size:12px;color:#8b9a87;letter-spacing:.12em}
.service-grid--minimal .service-card{min-height:210px}
.service-grid--minimal .service-card-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;width:100%}
.service-grid--minimal .service-card h2{margin-bottom:22px}
.service-grid--minimal .service-card .button{margin-top:auto}
.service-card--featured{grid-column:1/-1;background:linear-gradient(105deg,#f2d8c5,#f7e5bc);min-height:230px;padding:32px 38px}
.service-card--featured .service-card-copy{max-width:75%}
.service-card--featured .portal-art{width:325px;right:35px;bottom:-20px;opacity:1}
.service-card--featured p{max-width:650px;min-height:0}
.portal-how .three-columns>article>span{display:block;font-size:13px;color:#8da18c;margin-bottom:12px}
.portal-how h3{font-size:18px}
.portal-steps{display:flex;list-style:none;padding:0;margin:0 0 35px;gap:38px;color:#8a9690;font-size:13px}
.portal-steps li{display:flex;align-items:center;gap:10px}
.portal-steps b{font-size:11px;border:1px solid #d0dbd0;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:500}
.portal-steps .is-current{color:var(--jade)}
.portal-steps .is-current b{background:var(--jade);border-color:var(--jade);color:white}
.project-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:42px;align-items:start}
.project-list-heading h2{font-size:22px;margin-bottom:7px}
.project-list-heading p{font-size:12px;color:#7a8780;line-height:1.7}
.project-topic-section{margin-top:26px}
.project-topic-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-inline:4px}
.project-topic-heading h3{font-size:14px;line-height:1.65;font-weight:600;margin:0;color:#405a45}
.project-topic-heading>span{flex-shrink:0;font-size:11px;color:#7b8171}
.project-topic-section>.project-list{margin:10px 0 0}
.project-list{list-style:none;padding:0;margin:26px 0 18px;background:#fff3e2;border:1px solid #decbb3;border-radius:8px}
.project-row{position:relative;display:flex;align-items:center;gap:10px;padding:18px 18px 18px 8px;min-height:91px;transition:background .15s}
.project-row+.project-row{border-top:1px solid #eadac3}
.project-row:has(input:checked){background:#f3e1c5}
.project-row:first-child{border-radius:8px 8px 0 0}.project-row:last-child{border-radius:0 0 8px 8px}
.project-row:only-child{border-radius:8px}
.project-choice{position:relative;display:grid;place-items:center;flex:0 0 44px;height:48px;cursor:pointer}
.project-choice input{position:absolute;inset:0;margin:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:1}
.project-choice>span{width:20px;height:20px;border:1.5px solid #a5b7a3;border-radius:50%;background:#fff3e2;display:grid;place-items:center}
.project-choice input:checked+span{border-color:var(--jade)}
.project-choice input:checked+span::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--jade)}
.project-choice input:focus-visible+span{outline:3px solid #83b49c;outline-offset:5px}
.project-info{position:relative;flex:1;min-width:0}
.project-name{display:inline-flex;align-items:center;gap:10px;text-align:left;border:0;padding:4px 0;background:none;color:var(--ink);font-size:16px;font-weight:600;line-height:1.6;cursor:pointer}
.info-mark{display:inline-grid;place-items:center;flex-shrink:0;font-size:10px;width:16px;height:16px;border:1px solid #9aaf9e;border-radius:50%;color:#66806a;font-family:Georgia,serif;font-weight:400}
.project-short{display:block;color:#849085;font-size:12px;margin-top:2px}
.project-row-arrow{color:#b1bda9;padding-inline:7px;font-size:16px}
.project-popover{display:none;position:absolute;z-index:20;top:100%;left:0;width:390px;max-width:calc(100vw - 100px);padding:22px;background:#fff4e4;border:1px solid #d9c4a9;border-radius:8px;box-shadow:0 15px 45px #243d3424;color:var(--ink)}
.project-info.is-open .project-popover{display:block}
.popover-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px;font-size:15px}
.popover-heading button{border:0;background:#eef2e9;color:#486348;width:28px;height:28px;flex-shrink:0;border-radius:50%;font-size:20px;cursor:pointer}
.project-popover p{font-size:13px;line-height:1.8;color:#637266}
.project-popover h4{font-size:12px;letter-spacing:.025em;margin:15px 0 5px;color:#315b47}
.selection-panel{position:sticky;top:25px;padding:27px 24px;background:#f0dfbd;border:1px solid #dbc7a6;border-radius:8px}
.selection-panel h2{font-size:23px;margin-bottom:20px}.selection-panel h2>span{font-size:32px;font-weight:400}
.selection-panel .button{width:100%;margin-top:20px}.selection-panel .button:disabled{opacity:.45;cursor:not-allowed}
.selection-hint{font-size:12px;line-height:1.85;margin-top:20px;color:#7a8776}
.shortlist-item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:13px;border-bottom:1px solid #ddcaa9}
.shortlist-item button{background:none;border:0;color:#71826b;cursor:pointer;padding:5px 8px;font-size:18px}
.shortlist-empty{font-size:13px;color:#80907c;padding:10px 0}
.catalogue-note{font-size:12px;color:#7b887c;line-height:1.85;margin-top:19px;max-width:690px}
.catalogue-note a,.account-note a{text-decoration:underline;text-underline-offset:3px}
.other-categories{margin-top:38px;padding-top:25px;border-top:1px solid #e1e7dc}
.other-categories h3{font-size:14px;margin-bottom:14px}.other-categories a{display:inline-block;font-size:12px;color:var(--jade);margin:0 22px 12px 0}
.account-background{background:radial-gradient(ellipse at 0 70%,#eed4bc,transparent 70%),#f8e9d2;min-height:75vh}
.auth-layout{display:grid;grid-template-columns:1fr 440px;gap:90px;align-items:start;max-width:1000px}
.auth-story{position:relative;padding-top:14px}.auth-story h1{font-size:34px;line-height:1.5;margin-bottom:20px}.auth-story>p{max-width:375px;font-size:14px}
.auth-story .portal-art{position:relative;width:260px;margin:15px 0 -15px auto;opacity:.9}
.auth-shortlist{border-top:1px solid #dce5d4;padding-top:20px}.auth-shortlist h2{font-size:15px;margin-bottom:7px}
.auth-panel{background:#fff3e2;padding:34px;border:1px solid #dfcdb5;border-radius:10px;box-shadow:0 16px 50px #34472608}
.auth-tabs{display:flex;border-bottom:1px solid #e0e7dc;margin-bottom:30px;gap:25px}.auth-tabs button{border:0;background:none;padding:0 0 13px;cursor:pointer;color:#8a9386;font-size:16px}.auth-tabs button[aria-selected=true]{color:var(--jade);border-bottom:2px solid var(--jade);font-weight:600}
.auth-panel .form-field{margin-bottom:20px}.auth-panel .auth-submit{width:100%;margin-top:23px}.auth-panel .text-link{display:inline-block;font-size:12px;margin-top:23px}
.password-control{display:flex;position:relative}.password-control input{padding-right:62px}.password-control button{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px;color:#668267;border:0;background:none;cursor:pointer;padding:6px}
.account-heading{display:flex;align-items:center;gap:22px}.account-heading h1{font-size:28px}.account-heading p{font-size:14px}
.account-avatar{width:72px;height:72px;display:grid;place-items:center;background:#dde8d5;color:var(--jade);border:1px solid #cbd9c2;border-radius:50%;font-size:26px;flex-shrink:0}
.account-layout{display:grid;grid-template-columns:175px minmax(0,1fr);gap:44px}.account-nav{position:sticky;top:25px;display:flex;flex-direction:column;align-items:flex-start;gap:18px;font-size:13px}.account-nav a{color:#526752}.account-nav button{padding:20px 0 0;margin-top:10px;border:0;border-top:1px solid #dbe3d5;width:100%;text-align:left;background:none;font-size:13px;color:#8b7869;cursor:pointer}
.account-card{background:#fff3e2;border:1px solid #dfcdb5;border-radius:8px;padding:30px;margin-bottom:24px}.account-card>h2{font-size:22px;margin-bottom:25px}.account-section-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.account-section-heading h2{font-size:21px}.account-section-heading .text-link{font-size:12px;white-space:nowrap}.account-section-heading h2 span{font-size:13px;font-weight:400;color:#93a087}
.saved-project{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:17px 0;border-top:1px solid #e6ece2}.saved-project h3{font-size:15px;margin-bottom:4px}.saved-project p{font-size:12px;color:#8a9683}.saved-project button{background:none;border:0;color:#8c9d82;font-size:12px;cursor:pointer;padding:10px}.saved-project a{font-size:12px;color:var(--jade)}
.account-note{font-size:12px;color:#819079;line-height:1.8;margin-top:23px}.account-card .form-grid{gap:22px}.account-card .form-submit-row{margin-top:25px}.account-card input[readonly]{background:#f3e8d6;color:#7a8573}.account-card .form-field{min-width:0}
.account-settings-detail{padding:18px 0;border-top:1px solid #e1e7db}.account-settings-detail summary{cursor:pointer;font-size:14px}.account-settings-detail form{margin-top:20px}.account-settings-detail p{margin-top:10px;font-size:12px}.account-settings-detail .button{margin-top:20px}.account-settings-detail .form-field{max-width:480px}
.form-status.is-error{color:#a34738}.form-status{font-size:12px;line-height:1.7}.nav-account{font-size:12px;white-space:nowrap}.auth-panel [hidden],.account-layout[hidden], [data-register-only][hidden]{display:none!important}
@media(max-width:1000px){.auth-layout{gap:40px;grid-template-columns:1fr 400px}.project-layout{gap:25px;grid-template-columns:minmax(0,1fr) 270px}.service-card-copy{max-width:85%}.illustrated-intro .portal-art{width:220px}.illustrated-intro .container{padding-right:220px}.account-layout{gap:25px;grid-template-columns:145px minmax(0,1fr)}}
@media(max-width:760px){.illustrated-intro .container{padding-right:0}.illustrated-intro .portal-art{width:160px;right:-50px;opacity:.25;top:60%}.illustrated-intro .container>p,.illustrated-intro h1{position:relative;z-index:1}.illustrated-intro h1{font-size:26px}.service-grid{grid-template-columns:1fr}.service-card--featured{grid-column:auto;padding:27px}.service-card--featured .portal-art{right:-35px;width:210px;opacity:.55}.service-card--featured .service-card-copy{max-width:85%}.service-card-copy{max-width:85%}.service-card h2{font-size:20px}.project-layout{grid-template-columns:1fr}.selection-panel{position:static}.portal-steps{gap:16px;justify-content:space-between;font-size:11px}.portal-steps b{width:21px;height:21px}.portal-steps li{gap:6px}.project-selection{padding-top:30px}.project-name{font-size:15px}.project-popover{width:min(390px,calc(100vw - 100px));left:-20px;padding:18px}.project-row{padding-right:12px;gap:4px}.project-row-arrow{display:none}.auth-layout{grid-template-columns:1fr;gap:24px}.auth-story h1{font-size:28px}.auth-story .portal-art{position:absolute;width:170px;right:-10px;top:0;opacity:.25}.auth-story>p{max-width:80%}.auth-shortlist{margin-top:22px}.auth-panel{padding:25px}.account-layout{grid-template-columns:1fr}.account-nav{position:static;flex-direction:row;flex-wrap:wrap;gap:16px}.account-nav button{padding:0;margin:0;border:0;width:auto;margin-left:auto}.account-card{padding:22px}.account-section-heading{align-items:flex-start;gap:10px}.account-section-heading h2{font-size:18px}.account-avatar{width:54px;height:54px;font-size:21px}.account-heading h1{font-size:24px}.account-heading{gap:14px}.account-heading p{font-size:12px}.account-card .form-grid{grid-template-columns:1fr}.account-card .form-submit-row{align-items:flex-start;flex-direction:column}.welcome-mid{background-image:none}.saved-project{gap:5px}}
@media(prefers-reduced-motion:reduce){.project-row{transition:none}}

/* Warm paper surfaces and varied, quiet line illustrations. */
.site-header,.primary-navigation{background:#fbefdc}
.site-footer{background:#eedcc4}
.page-intro{border-bottom-color:#e2ceb2}
.form-panel{background:#fff3e2}
.form-field input,.form-field select,.form-field textarea{background:#fff9ed;border-color:#dacbb5}
.button--light,.welcome-close .button{background:#fbefdc}
.button--outline:hover{background:#f0e0c4}
.project-popover{background:#fff4e4}
.project-popover p,.project-short,.selection-hint{color:#687061}
.service-card .portal-art{opacity:.62}
.service-card--featured .portal-art{opacity:1}
.account-avatar{background:#e7d7b7;border-color:#d4bd99}
.travel-hero{position:relative}
.travel-hero::after{content:"";position:absolute;width:200px;height:160px;left:32%;bottom:0;background:url('/images/illustrations/pottery.svg') center/contain no-repeat;opacity:.32;z-index:-1;pointer-events:none}
.travel-quote{background:#edd7c2 url('/images/illustrations/pottery.svg') left 2% center/215px auto no-repeat}
.travel-quote p{position:relative}
.home-film video{max-height:calc(100svh - 78px)}
.reveal-line{display:block;overflow:hidden;line-height:inherit}
.reveal-line>span{display:block;opacity:0;transform:translateY(105%);transition:transform .72s cubic-bezier(.2,.65,.25,1),opacity .6s ease;transition-delay:var(--line-delay,0ms)}
.reveal-line.line-visible>span{opacity:1;transform:translateY(0)}
@media(max-width:820px){.primary-navigation{background:#fbefdc}.home-film video{max-height:calc(100svh - 66px)}}
@media(max-width:760px){.service-card .portal-art{opacity:.38}.service-card--featured .portal-art{opacity:.55}.home-concerns{background-size:220px;background-position:right -85px top -40px}.travel-quote{background-image:none}.page-intro:not(.illustrated-intro):not(.account-intro)::after{opacity:.16;width:230px}}
@media(prefers-reduced-motion:reduce){.reveal-line>span{opacity:1;transform:none;transition:none}}
@media print{.reveal-line>span{opacity:1;transform:none}}

/* Editorial artwork replaces the previous portrait clipart. */
.auth-layout{grid-template-columns:minmax(0,1fr) 420px;gap:76px;max-width:1040px}
.auth-story{padding-top:2px}
.auth-story h1{font-size:32px;font-weight:500;line-height:1.5}
.auth-story .portal-art--editorial{position:relative;inset:auto;transform:none;width:100%;max-width:480px;aspect-ratio:3/2;object-fit:cover;margin:28px 0 25px;opacity:1;border-radius:4px}
.auth-shortlist{margin-top:0}
.auth-panel{background:#fff5e6;box-shadow:0 18px 50px #78552c0b}
.illustrated-intro:has(.portal-art--editorial) .container{padding-right:355px;min-height:145px}
.illustrated-intro .portal-art--editorial{width:320px;aspect-ratio:1.6;object-fit:cover;border-radius:4px;opacity:1}
.service-card .portal-art--editorial{width:225px;right:-15px;bottom:0;opacity:.6;mask-image:linear-gradient(90deg,transparent,#000 25%)}
.service-card--featured .portal-art--editorial{width:340px;height:100%;object-fit:cover;right:0;bottom:0;opacity:1;mask-image:linear-gradient(90deg,transparent,#000 28%)}
.service-card--featured .service-card-copy{max-width:65%}
@media(max-width:1000px){.auth-layout{grid-template-columns:minmax(0,1fr) 380px;gap:36px}.illustrated-intro:has(.portal-art--editorial) .container{padding-right:285px}.illustrated-intro .portal-art--editorial{width:255px}}
@media(max-width:760px){.auth-layout{grid-template-columns:1fr;gap:30px}.auth-story h1{font-size:27px}.auth-story>p{max-width:100%}.auth-story .portal-art--editorial{width:100%;max-width:none;height:200px;aspect-ratio:auto;margin:23px 0;object-position:center 68%;opacity:1}.illustrated-intro:has(.portal-art--editorial) .container{padding-right:0;min-height:0}.illustrated-intro .portal-art--editorial{position:relative;inset:auto;transform:none;width:100%;height:180px;object-fit:cover;object-position:center 42%;margin-top:23px;opacity:1}.service-card--featured .portal-art--editorial{width:50%;opacity:.8}.service-card--featured .service-card-copy{max-width:75%}}

/* The five consultation categories share one line illustration family. */
.service-card .portal-art{width:220px;right:-35px;bottom:-12px;opacity:.62;mask-image:none}
.service-card--featured .portal-art{width:275px;right:28px;bottom:-15px;opacity:.72}
.service-card--featured .service-card-copy{max-width:75%}
@media(max-width:760px){.service-card .portal-art{width:190px;right:-34px;opacity:.38}.service-card--featured .portal-art{width:220px;right:-18px;opacity:.48}.service-card--featured .service-card-copy{max-width:85%}}

.reveal-delay-1>span{transition-delay:65ms}.reveal-delay-2>span{transition-delay:130ms}.reveal-delay-3>span{transition-delay:195ms}.reveal-delay-4>span{transition-delay:260ms}

[hidden]{display:none!important}
.account-interest-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;min-width:0;max-width:100%}
.account-interest-actions .button{font-size:13px;min-height:44px;white-space:normal;text-align:center;line-height:1.5;max-width:100%}
.account-section-heading{flex-wrap:wrap;align-items:flex-start}
.saved-project-actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.saved-project a.saved-project-enquiry{font-size:13px;color:#fff;min-height:44px;padding:12px 16px;white-space:normal;line-height:1.5;text-align:center}
.saved-project-actions>button{min-height:44px}
[data-account-enquiry-link]{min-height:44px;display:flex;align-items:center;color:var(--jade)!important}
.enquiry-projects{padding:20px;margin-bottom:28px;background:#f6e8d6;border:1px solid #ddc6a9;border-radius:6px}
.enquiry-projects-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:16px}
.enquiry-projects-heading h3{font-size:18px;margin:0}
.enquiry-projects .button{font-size:13px;min-height:44px;white-space:normal;line-height:1.5;text-align:center}
.enquiry-selected-projects,.submitted-project-list{list-style:none;margin:0;padding:0}
.enquiry-selected-projects>li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #dbc5aa}
.enquiry-selected-projects>li:last-child{border-bottom:0}
.enquiry-selected-projects a,.submitted-project-list a{color:var(--jade);font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.enquiry-selected-projects>li.enquiry-projects-empty{font-size:14px;color:var(--muted)}
.remove-enquiry-project{min-width:44px;min-height:44px;padding:8px 10px;flex-shrink:0;border:0;background:none;color:#6d725f;cursor:pointer}
.shortlist-project-picker{padding:16px 0 0;border-top:1px solid #d4b998;margin-top:14px}
.shortlist-add-option{display:flex;align-items:center;gap:12px;min-height:44px;font-size:14px;line-height:1.6;padding:8px 0}
.shortlist-add-option input{width:18px;height:18px;flex-shrink:0}
.enquiry-form input[readonly]{background:#f1e4d3;color:#5c685c}
.submitted-project-list>li{margin:8px 0}
.auth-story .auth-hospital-photo{margin:28px 0 25px}
.auth-hospital-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:4px}
.enquiry-state{display:inline-block;margin-left:12px;padding:3px 8px;font-size:12px;color:#315c50;border:1px solid #aac1b0;border-radius:3px;background:#e9eee0}
.receipt-projects{margin-top:24px;border-top:1px solid #dfc9aa;padding-top:20px;text-align:left}
.receipt-projects h2{font-size:20px}
.project-row.is-linked-project,.retired-project-detail.is-linked-project{background:#f4e2c5;outline:2px solid #aa9b73;outline-offset:-2px;scroll-margin-top:100px}
.retired-project-section{margin-top:24px;padding:20px;background:#f6e8d6;border:1px solid #d8c09f;border-radius:6px}
.retired-project-section h3{font-size:17px}.retired-project-detail{padding:15px;border-radius:4px}.retired-project-detail h4{font-size:16px}.retired-project-detail p{font-size:14px;line-height:1.8;margin:12px 0}.retired-project-detail .button{font-size:13px;min-height:44px}
@media(max-width:760px){.account-interest-actions{width:100%;justify-content:flex-start}.account-interest-actions [data-enquire-all]{width:100%}.saved-project{grid-template-columns:1fr;gap:14px}.saved-project-actions{flex-direction:row;align-items:center;justify-content:space-between}.saved-project a.saved-project-enquiry{flex:1;max-width:280px}.enquiry-projects{padding:16px}.enquiry-projects-heading .button{width:100%}.enquiry-state{margin-left:0;display:block;width:fit-content;margin-top:10px}}
