.ip-page{max-width:1180px;margin:24px auto;padding:0 20px}.ip-hero{display:block!important;border-radius:20px;margin-bottom:20px}.ip-hero h1{max-width:750px}.ip-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}/* Explicit contrast for both secondary hero buttons, including visited links. */
.ip-page .ip-hero .ip-actions a.btn.ghost,.ip-page .ip-hero .ip-actions a.btn.ghost:visited{background:#fff!important;color:#103653!important;-webkit-text-fill-color:#103653!important;border:1px solid #d3e1ea!important;opacity:1!important;text-shadow:none!important;font-weight:750!important}
.ip-page .ip-hero .ip-actions a.btn.ghost:hover,.ip-page .ip-hero .ip-actions a.btn.ghost:active{background:#eaf2f8!important;color:#082840!important;-webkit-text-fill-color:#082840!important;border-color:#aac7db!important}
.ip-page .ip-hero .ip-actions a.btn.ghost:focus-visible{outline:3px solid #f4c44e!important;outline-offset:3px!important}
.ip-page .panel{padding:22px;margin-bottom:18px}.ip-form{display:grid;gap:18px}.ip-card{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0;min-width:0;padding:24px!important;border:1px solid #dbe3eb!important;border-radius:16px;background:#fff!important;color:#132e49!important}.ip-card legend{padding:0 8px;font-size:1.05rem;font-weight:800;color:#12324d}.ip-card legend b{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#b98c4d;color:#fff;margin-right:8px}.ip-card label{display:flex;flex-direction:column;gap:7px;font-size:.9rem;font-weight:650;min-width:0}.ip-card input,.ip-card textarea,.ip-card select{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid #c8d5e1;border-radius:8px;background:#f8fafc;color:#142f49;font:inherit}.ip-card input:focus,.ip-card textarea:focus,.ip-card select:focus{outline:2px solid #b98c4d;outline-offset:2px}.ip-wide{grid-column:1/-1}.ip-card .ip-check{flex-direction:row;align-items:flex-start;font-weight:400;line-height:1.55}.ip-card .ip-check input{width:18px;min-height:18px;height:18px;flex:0 0 18px;margin-top:3px;accent-color:#153b59}.ip-help{line-height:1.55;color:#456078}.ip-error{border-left:5px solid #bd3434;background:#fff3f3}.ip-success{border-left:5px solid #248652}.ip-trap{position:absolute;left:-9999px}.ip-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ip-summary>div{padding:12px;border:1px solid #dde5eb;border-radius:8px;min-width:0;overflow-wrap:anywhere}.ip-summary dt{font-size:.85rem;color:#52677b}.ip-summary dd{margin:5px 0 0;font-weight:600;white-space:pre-wrap}.ip-receipt h3{color:#14344f;border-bottom:2px solid #bb955a;padding-bottom:8px}.ip-print-value{display:none}.ip-admin{max-width:1200px;margin:24px auto;padding:0 20px}.ip-admin table{width:100%;border-collapse:collapse}.ip-admin td,.ip-admin th{padding:12px;text-align:left;border-bottom:1px solid #dce4ec}.ip-table-wrap{overflow:auto}.ip-admin .panel{padding:20px;margin:16px 0}.ip-admin input,.ip-admin select,.ip-admin textarea{max-width:100%}
@media(max-width:640px){.ip-page,.ip-admin{padding:0 12px}.ip-card,.ip-summary{grid-template-columns:1fr}.ip-card{padding:18px!important}.ip-actions{align-items:stretch;flex-direction:column}.ip-card legend{font-size:.95rem}}
@media print{@page{size:A4;margin:13mm}body{background:#fff!important;color:#000!important}body>*:not(main),.ip-hero,.ip-intro,.ip-submit,.ip-success,.ip-trap,.ip-actions,.ip-admin-controls{display:none!important}.ip-page,.ip-admin,body>main{display:block!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important}.ip-form{display:block}.ip-card{display:block!important;break-inside:auto;border:0!important;padding:0!important;margin:12px 0!important;box-shadow:none!important}.ip-card legend{font-size:14pt}.ip-card label{display:block;margin:10px 0;break-inside:avoid;font-size:10pt}.ip-card label>input:not([type=checkbox]),.ip-card textarea,.ip-card select{display:none!important}.ip-print-value{display:block;white-space:pre-wrap;overflow-wrap:anywhere;border-bottom:1px solid #999;min-height:20px;font-weight:400;padding:5px 0}.ip-card .ip-check{display:flex!important}.ip-summary{display:block}.ip-summary>div{break-inside:avoid;margin:6px 0;padding:6px}.ip-receipt{box-shadow:none!important;border:0!important;padding:0!important}.ip-receipt h3{break-after:avoid}.ip-error{display:none}.ip-admin button,.ip-admin form,.ip-admin nav{display:none!important}}

/* Compact headings and coloured cards, matching the public insurance page. */
@media screen{
.ip-page .ip-hero{padding:22px 26px!important;margin-bottom:16px!important;border-radius:16px!important}
.ip-page .ip-hero h1{font-size:clamp(23px,2.7vw,30px)!important;line-height:1.2!important;margin:8px 0!important;letter-spacing:-.4px!important}
.ip-page .ip-hero p{font-size:14px!important;line-height:1.5!important;margin:8px 0 14px!important}
.ip-page .ip-actions a{font-size:12px!important;line-height:1.4!important;padding:10px 13px!important;white-space:normal!important}
.ip-page .panel h2{font-size:21px!important;line-height:1.25!important;margin:0 0 8px!important}
.ip-page .panel p{font-size:13px;line-height:1.5}
.ip-page .panel{padding:18px!important;border-radius:14px!important}
.ip-page .ip-intro{background:#f0f6fa;border:1px solid #d8e4ec;border-left:4px solid #bd934e}
.ip-page .ip-card{padding:20px!important;gap:14px!important;border-top:3px solid #296184!important}
.ip-page .ip-card:nth-of-type(2){border-top-color:#3b897d!important}
.ip-page .ip-card:nth-of-type(3){border-top-color:#b68d49!important}
.ip-page .ip-card:nth-of-type(4){border-top-color:#7774a0!important}
.ip-page .ip-card:nth-of-type(5){border-top-color:#42879c!important}
.ip-page .ip-card:nth-of-type(6){border-top-color:#b68d49!important}
.ip-page .ip-card legend{font-size:15px!important;line-height:1.4!important}
.ip-page .ip-receipt h3{font-size:16px!important}
}
/* V3 online document: same three-page hierarchy as the downloadable form. */
.ip-document{display:block}.ip-sheet{position:relative;background:#fff;border:1px solid #cbd6df;box-shadow:0 8px 28px rgba(18,48,72,.10);margin:0 auto 22px;max-width:980px;min-height:1260px;color:#172b3c;display:flex;flex-direction:column}.ip-letterhead{background:#08263d;color:#fff;border-bottom:4px solid #bd934e;min-height:92px;padding:18px 28px;display:flex;justify-content:space-between;gap:30px}.ip-brand,.ip-policy{display:flex;flex-direction:column}.ip-brand b{font-size:22px}.ip-brand small{color:#d7a34e;font-weight:800}.ip-brand em,.ip-policy em{font-size:10px;font-style:normal;margin-top:4px}.ip-policy{text-align:right}.ip-policy b{font-size:14px}.ip-policy small{color:#d7a34e;font-weight:800}.ip-body{padding:24px 42px 26px;flex:1}.ip-body h2{font-size:18px!important;margin:0 0 8px!important;color:#183b56}.ip-body h3{font-size:13px!important;margin:11px 0 5px!important}.ip-body h4{font-size:13px!important;background:#08a2d2;color:#fff;padding:7px 12px;margin:13px 0 8px!important}.ip-body p{font-size:10.5px!important;line-height:1.35!important;margin:6px 0}.ip-small{font-size:9.5px!important}.ip-legal{font-size:9.2px!important;line-height:1.28!important;text-align:justify}.ip-note{font-size:8.5px!important;color:#3d779d}.ip-body label{display:flex;align-items:end;gap:6px;font-size:10px;min-width:0}.ip-body label>span{flex:0 0 auto}.ip-body input:not([type=radio]):not([type=checkbox]),.ip-body textarea,.ip-body select{border:1px solid #9aa9b4;border-radius:0;background:#fff;min-height:28px;padding:4px 6px;color:#172b3c;font:inherit;box-sizing:border-box;width:100%}.ip-body textarea{display:block;resize:vertical}.ip-grid2,.ip-grid3,.ip-grid4{display:grid;gap:8px;margin:5px 0}.ip-grid2{grid-template-columns:1fr 1fr}.ip-grid3{grid-template-columns:repeat(3,1fr)}.ip-grid4{grid-template-columns:.65fr .65fr 1fr 1.45fr}.ip-pay{display:flex;flex-wrap:wrap;gap:18px 42px;margin:9px 0 14px}.ip-pay label{align-items:center;font-weight:700}.ip-pay input{width:16px;height:16px}.ip-signatures{border-top:2px solid #8d969d;margin-top:22px;padding-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:90px}.ip-signatures label{display:block}.ip-signatures label span{display:block;margin-bottom:3px}.ip-footer{background:#08263d;color:#fff;min-height:42px;padding:8px 22px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:8px;border-top:3px solid #bd934e}.ip-footer span{text-align:center}.ip-page2,.ip-page3{padding-top:34px}.ip-tax-table{border:1px solid #909aa2;margin:8px 0}.ip-tax-table>div{display:grid;grid-template-columns:1.15fr 1.15fr .9fr 1.1fr}.ip-tax-table>div>*{border-right:1px solid #a7afb5;border-bottom:1px solid #a7afb5;padding:5px;min-height:30px}.ip-tax-table>div>*:last-child{border-right:0}.ip-tax-table>div:last-child>*{border-bottom:0}.ip-tax-table b{font-size:9px;background:#e8ecef}.ip-tax-table input,.ip-tax-table select{border:0!important;min-height:28px!important}.ip-consents{border:1px solid #b5c0c8;padding:9px;margin:10px 0}.ip-consents label{align-items:flex-start;margin:5px 0;font-size:9px}.ip-consents input{flex:0 0 15px;width:15px;height:15px}.ip-submit{max-width:980px;margin:0 auto 25px!important}.ip-trap{position:absolute;left:-9999px}.ip-error{max-width:980px;margin:0 auto 18px!important}.ip-success{max-width:980px;margin:0 auto 18px!important}
@media(max-width:760px){.ip-sheet{min-height:0}.ip-letterhead{padding:14px;flex-direction:column}.ip-policy{text-align:left}.ip-body{padding:18px 14px}.ip-grid2,.ip-grid3,.ip-grid4{grid-template-columns:1fr}.ip-signatures{grid-template-columns:1fr;gap:15px}.ip-tax-table{overflow-x:auto}.ip-tax-table>div{min-width:650px}.ip-footer{flex-wrap:wrap}.ip-body label{align-items:flex-start;flex-direction:column}.ip-pay label,.ip-consents label{flex-direction:row}}
@media print{@page{size:A4;margin:0}.ip-page{max-width:none!important;padding:0!important;margin:0!important}.ip-hero,.ip-submit,.ip-success,.ip-error,header.site-header,footer.site-footer,.language-switcher{display:none!important}.ip-sheet{width:210mm!important;height:297mm!important;min-height:297mm!important;max-width:none!important;margin:0!important;border:0!important;box-shadow:none!important;break-after:page;page-break-after:always;overflow:hidden}.ip-sheet:last-of-type{break-after:auto;page-break-after:auto}.ip-letterhead{min-height:20mm;padding:4mm 7mm}.ip-brand b{font-size:15pt}.ip-body{padding:5mm 10mm 4mm}.ip-body h2{font-size:10.5pt!important}.ip-body h3,.ip-body h4{font-size:8.5pt!important}.ip-body p{font-size:6.8pt!important}.ip-legal{font-size:6pt!important}.ip-body label{font-size:6.8pt}.ip-body input:not([type=radio]):not([type=checkbox]),.ip-body textarea,.ip-body select{min-height:5.5mm;padding:1mm 1.5mm}.ip-footer{min-height:9mm;padding:1.5mm 5mm}.ip-page2,.ip-page3{padding-top:7mm}.ip-signatures{margin-top:4mm}.ip-tax-table>div>*{min-height:7mm;padding:1mm}.ip-consents{padding:2mm;margin:2mm 0}.ip-consents label{font-size:5.8pt;margin:1mm 0}}

/* Compact colourful action card validated for the project-insurance page. */
@media screen{
.ip-choice-card{max-width:980px;margin:0 auto 18px;padding:12px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr);gap:12px;border:1px solid #d8e5ee;border-radius:18px;background:#f7fbfe;box-shadow:0 8px 25px rgba(9,43,69,.08)}
.ip-choice-intro{position:relative;overflow:hidden;border-radius:14px;padding:20px 22px;background:linear-gradient(135deg,#073354,#0c6595);color:#fff}.ip-choice-intro:after{content:'✓';position:absolute;right:22px;top:5px;font-size:110px;font-weight:900;color:rgba(255,255,255,.08)}
.ip-choice-intro .eyebrow{font-size:12px;font-weight:850;letter-spacing:1.5px;color:#74e0e6}.ip-choice-intro h1{position:relative;z-index:1;margin:6px 0 8px!important;max-width:650px;font-size:clamp(23px,2.5vw,32px)!important;line-height:1.12!important;color:#fff!important}.ip-choice-intro p{position:relative;z-index:1;margin:0 0 14px!important;max-width:650px;font-size:13px!important;line-height:1.5!important;color:#fff!important}.ip-choice-benefits{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:7px}.ip-choice-benefits span{padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.12);font-size:11px;font-weight:750;color:#fff}
.ip-choice-actions{display:grid;grid-template-columns:1fr;gap:9px}.ip-choice-action{appearance:none;-webkit-appearance:none;box-sizing:border-box;width:100%;min-height:74px;padding:13px 15px;border:0;border-radius:13px;text-decoration:none!important;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;cursor:pointer;box-shadow:0 5px 14px rgba(9,43,69,.08);transition:transform .15s ease,box-shadow .15s ease}.ip-choice-action:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(9,43,69,.13)}.ip-choice-action b,.ip-choice-action:visited b{font-size:13px;line-height:1.25;font-weight:850;color:#092c48!important;-webkit-text-fill-color:#092c48!important}.ip-choice-action small,.ip-choice-action:visited small{display:block;margin-top:4px;font-size:10.5px;line-height:1.3;color:#24475e!important;-webkit-text-fill-color:#24475e!important}.ip-choice-yellow{background:linear-gradient(135deg,#ffd04e,#f3b626)!important}.ip-choice-blue{background:linear-gradient(135deg,#86d6ff,#56b5eb)!important}.ip-choice-purple{background:linear-gradient(135deg,#d7c3ff,#a985ef)!important}
}
@media(max-width:760px){.ip-choice-card{grid-template-columns:1fr;padding:9px}.ip-choice-intro{padding:18px}.ip-choice-actions{grid-template-columns:1fr}.ip-choice-action{min-height:66px}}
@media print{.ip-choice-card{display:none!important}}
