.model-art,.model-visual{background-image:linear-gradient(rgba(20,57,47,.04),rgba(20,57,47,.18)),url('assets/garden-home-hero.png');background-size:cover}
.model-art::before,.model-visual::before{display:none}
.model-a{background-position:70% center}
.model-b{background-image:linear-gradient(rgba(20,57,47,.04),rgba(20,57,47,.18)),url('assets/professional-pad.png');background-position:center}
.model-c{background-image:linear-gradient(rgba(20,57,47,.04),rgba(20,57,47,.18)),url('assets/family-pad.png');background-position:center}
.form-intro{color:#71817b;font-size:.85rem;margin-top:-22px}.field{margin:25px 0}.assessment-form .field label{margin:0}.required{color:#a54132}.optional{color:#71817b;font-size:.72rem;font-weight:400;margin-left:.45rem;text-transform:uppercase;letter-spacing:.08em}.field-error{color:#a12e20!important;font-weight:600!important}.field-error:not(:empty){margin-top:7px}.assessment-form [aria-invalid="true"]{border-color:#a12e20;border-bottom-width:2px}.form-alert{font-size:.86rem;padding:14px 16px;margin:20px 0;border-left:4px solid}.error-summary,.form-status.error{background:#fae9e5;border-color:#a12e20;color:#6f2117}.form-status.sending{background:var(--sage);border-color:var(--moss);color:var(--forest)}.form-alert:focus,.form-success:focus{outline:3px solid rgba(201,111,74,.4);outline-offset:3px}.privacy-note{font-size:.76rem;color:#71817b;margin:25px 0}.assessment-form button[disabled]{cursor:wait;opacity:.65}.assessment-form[aria-busy="true"]{cursor:progress}
.avatar{display:block;object-fit:cover;font-size:0}
.founder-photo-pair{min-height:560px;display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:0;background:var(--forest)}
.founder-photo-pair figure{position:relative;margin:0;min-width:0;overflow:hidden}
.founder-photo-pair img{width:100%;height:100%;display:block;object-fit:cover}
.founder-photo-pair figcaption{position:absolute;left:18px;bottom:18px;padding:7px 12px;background:rgba(14,45,37,.88);color:#fff;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem}
@media(max-width:850px){.founder-photo-pair{min-height:520px}}
@media(max-width:520px){.founder-photo-pair{min-height:420px}}
.assessment-email{margin:30px 0 18px;color:#c5d3cd;font-size:.88rem}.assessment-email a,footer a[href^="mailto:"]{text-decoration:underline;text-underline-offset:4px}.assessment-email a{color:#fff}footer>div:last-of-type{flex-wrap:wrap}footer a[href^="mailto:"]{overflow-wrap:anywhere}

/* Frequently asked questions */
.site-header nav{gap:24px}.faq-hero{background:linear-gradient(110deg,rgba(11,49,39,.96),rgba(11,49,39,.58)),url('assets/garden-home-hero.png') center 62%/cover}.faq-hero p:last-child{max-width:610px;margin:24px 0 0;font-size:1.12rem;color:#d7e1dc}.faq-intro{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.faq-intro h2{font-size:clamp(2.7rem,4.5vw,4.7rem)}.faq-section{background:var(--sage)}.faq-list{max-width:1020px;border-top:1px solid rgba(23,60,50,.3)}.faq-list details{border-bottom:1px solid rgba(23,60,50,.3)}.faq-list summary{position:relative;padding:30px 58px 30px 0;cursor:pointer;list-style:none;font-family:var(--serif);font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.2;color:var(--forest)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";position:absolute;right:8px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(23,60,50,.35);border-radius:50%;font-family:var(--sans);font-size:1.2rem}.faq-list details[open] summary::after{content:"−"}.faq-list summary:focus-visible{outline:3px solid rgba(201,111,74,.5);outline-offset:5px}.faq-answer{max-width:900px;padding:0 60px 38px 0}.faq-answer p,.faq-answer li{font-size:1rem}.faq-answer ul{padding-left:20px}.faq-answer li+li{margin-top:9px}.faq-answer h3{font-family:var(--serif);font-size:1.35rem;margin:8px 0 14px}.faq-answer blockquote{margin:28px 0 0;padding:22px 26px;border-left:4px solid var(--clay);background:rgba(251,250,246,.62);font-family:var(--serif);font-size:1.2rem;line-height:1.5}.faq-answer cite{display:block;margin-top:12px;font-family:var(--sans);font-size:.74rem;font-style:normal;text-transform:uppercase;letter-spacing:.13em}.faq-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.term-list{columns:2;column-gap:40px}.term-list li{break-inside:avoid}.reg-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(23,60,50,.18);margin:24px 0}.reg-grid p{display:flex;gap:14px;margin:0;padding:14px 16px;background:rgba(251,250,246,.72)}.reg-grid b{color:var(--clay);min-width:18px}.faq-sources{display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--forest);color:#eaf0e9}.faq-sources h2{font-size:clamp(2.7rem,4.5vw,4.7rem)}.faq-sources a{border-bottom:1px solid rgba(255,255,255,.45)}.faq-sources .fineprint{color:#a9bbb3}.external::after{content:"↗";margin-left:5px}
@media(max-width:850px){.faq-intro,.faq-sources{grid-template-columns:1fr}.faq-columns{grid-template-columns:1fr}.faq-answer{padding-right:10px}}
@media(max-width:520px){.faq-list summary{padding:24px 50px 24px 0}.term-list,.reg-grid{columns:auto;grid-template-columns:1fr}.faq-answer blockquote{margin-left:0;margin-right:0}}
/* Rental taxation guide */
.tax-guide{max-width:1350px;margin:auto}.tax-guide h2{font-size:clamp(2.6rem,5vw,4.6rem)}.tax-guide h3{font-size:1.5rem;margin-top:48px}.tax-guide a:not(.btn){text-decoration:underline;text-underline-offset:3px}.tax-guide li{margin-bottom:16px}.tax-scroll{overflow-x:auto;margin:24px 0;max-width:100%}.tax-scroll:focus-visible{outline:3px solid var(--clay);outline-offset:4px}.tax-table{border-collapse:collapse;width:100%;min-width:620px;font-size:1rem}.tax-table caption{text-align:left;padding:0 0 16px;color:var(--forest)}.tax-table th,.tax-table td{padding:16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.tax-table thead{background:var(--forest);color:white}.tax-table tbody th{font-weight:500}.tax-table .tax-total{background:var(--sage);font-weight:600}.tax-note{padding:20px;border-left:4px solid var(--clay);background:var(--cream)}footer .footer-tax{grid-column:1/-1;margin:0;font-size:1rem}footer .footer-tax a{text-decoration:underline;text-underline-offset:4px}
/* Secondary homepage actions keep the main calls to action prominent. */
.hero .actions{align-items:center;flex-wrap:wrap}
.hero-guide-links{display:flex;align-items:center;gap:8px}
.hero .btn.hero-guide{padding:9px 13px;font-size:.72rem;font-weight:500;background:rgba(14,45,37,.35);border-color:rgba(255,255,255,.35);color:#fff}
.hero .btn.hero-guide:hover{background:rgba(14,45,37,.65);border-color:rgba(255,255,255,.75)}
.hero .actions a:focus-visible{outline:2px solid #fff;outline-offset:4px}
@media(max-width:520px){.hero .actions{align-items:flex-start}}
/* Five homepage statistics and the revised two-value About section. */
.number-grid.number-grid-five{grid-template-columns:1.3fr repeat(4,1fr)}
.number-grid-five article{min-width:0;padding:32px 18px}
.number-grid-five strong{font-size:clamp(2.7rem,4.2vw,4.7rem)}
.values.values-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.hero .hero-copy h1{font-size:clamp(3.5rem,7vw,7rem)}
.hero-guide-links{flex-wrap:wrap;max-width:100%}
.hero .actions{row-gap:16px}
@media(max-width:850px){.number-grid.number-grid-five{grid-template-columns:repeat(2,minmax(0,1fr))}.number-grid-five article{border-bottom:1px solid rgba(23,60,50,.25)}.number-grid-five article:last-child{grid-column:1/-1}}
@media(max-width:520px){.number-grid.number-grid-five,.values.values-two{grid-template-columns:1fr}.hero{height:auto;min-height:calc(100svh - 70px);padding:60px 0 80px}.hero .hero-copy{width:calc(100% - 48px)}}
/* Layered-house identity, recreated as transparent vector artwork. */
.site-header{height:132px}
.brand-logo{display:block;width:164px;height:auto;flex-shrink:0}
.site-header .brand{flex-shrink:0}
footer .brand-logo{width:220px;max-width:100%}
.hero{height:min(820px,calc(100vh - 132px))}
@media(max-width:850px){.site-header{height:112px}.site-header nav{top:112px}.site-header .brand-logo{width:138px}}
@media(max-width:520px){.hero{height:auto;min-height:calc(100svh - 112px)}}
/* Give the catalogue subtitle clear separation from the large heading. */
.catalogue-hero h1 + p{margin-top:24px}
.faq-answer blockquote a{ text-decoration:underline; text-underline-offset:3px; }
/* Compact assessment layout; validation errors stay visible independently of help. */
body[data-security-page="eircode"] .site-header{height:104px}
body[data-security-page="eircode"] .site-header .brand-logo{width:130px}
.assessment-wrap{min-height:calc(100svh - 104px);grid-template-columns:.9fr 1.1fr}
.assessment-info{padding:36px clamp(24px,4vw,58px)}
.assessment-info h1{font-size:clamp(2.6rem,4vw,4rem);margin-bottom:20px}
.assessment-info ol{padding-top:10px;margin-bottom:16px}
.assessment-info li{margin-bottom:16px}
.assessment-info .assessment-email{margin-top:18px}
.assessment-info .fineprint{margin-top:16px}
.assessment-form{padding:30px clamp(24px,4vw,58px);max-width:none}
.assessment-form .form-progress{margin-bottom:18px}
.assessment-form-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.assessment-form-toolbar .step-label{margin:0}
.help-toggle{flex-shrink:0;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--forest);padding:6px 12px;font:inherit;font-size:.78rem;cursor:pointer}
.help-toggle:focus-visible{outline:2px solid var(--clay);outline-offset:3px}
.assessment-form h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:12px}
.assessment-form .form-intro{margin:0 0 14px}
.assessment-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 22px}
.assessment-fields .field{margin:0;min-width:0}
.assessment-fields .field-wide{grid-column:1/-1}
.assessment-form input,.assessment-form textarea{padding:10px 2px}
.assessment-form textarea{resize:vertical;min-height:76px}
.assessment-form .field-help{display:block;margin-top:6px;font-size:.78rem;color:#52645b}
.assessment-form .field-help[hidden]{display:none}
.assessment-form .privacy-note{margin:16px 0}
@media(max-width:850px){.assessment-wrap{grid-template-columns:1fr}body[data-security-page="eircode"] .site-header nav{top:104px}}
@media(max-width:520px){.assessment-fields{grid-template-columns:1fr}.assessment-info,.assessment-form{padding:28px 22px}}
.service-price-list{margin:28px 0}
.service-price-list article{padding:24px 0;border-top:1px solid rgba(23,60,50,.25)}
.service-price-list .service-price{font-weight:700;color:var(--forest);margin-bottom:12px}
.service-price-list a{text-decoration:underline;text-underline-offset:3px}
.business-address{grid-column:1/-1;font-style:normal;font-size:.82rem}
.founder-email{display:block;max-width:100%;margin:10px auto 0;padding:7px 0;border:0;background:transparent;color:inherit;font:inherit;font-size:.8rem;text-transform:none;letter-spacing:normal;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere;cursor:pointer}
.founder-email:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.founder-photo-pair figure{display:flex;flex-direction:column}
.founder-photo-pair img{flex:1;min-height:0;height:auto;aspect-ratio:1;object-fit:cover}
.founder-photo-pair figcaption{position:static;margin:0;padding:16px 12px;text-align:center}
.founder-photo-pair .founder-email{font-size:.72rem}
.compliance-link{padding-top:65px;padding-bottom:65px;background:var(--sage)}
.compliance-link h2{font-size:clamp(2rem,4vw,3.5rem)}
@media(min-width:851px) and (max-width:1100px){.site-header{padding-left:24px;padding-right:24px}.site-header nav{gap:14px;font-size:.8rem}.site-header .brand-logo{width:145px}}
