@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url('assets/fonts/dm-sans-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url('assets/fonts/dm-sans-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'DM Sans';font-style:italic;font-weight:100 1000;font-display:swap;src:url('assets/fonts/dm-sans-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'DM Sans';font-style:italic;font-weight:100 1000;font-display:swap;src:url('assets/fonts/dm-sans-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{--ink:#242421;--clay:#c7613f;--clay-text:#b24f33;--clay-on-dark:#d97858;--cream:#f6f0e6;--paper:#fffcf7;--jacaranda:#755b8e;--muted:#6e6a62;--line:#d9d2c6;--white:#fff;--success:#386641;--max:1180px;--sans:"DM Sans","Segoe UI",Arial,sans-serif;--serif:"DM Sans","Segoe UI",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}img,svg{max-width:100%;height:auto}a{color:inherit}button,input,textarea,select{font:inherit}.skip-link{position:fixed;z-index:1000;top:12px;left:12px;padding:10px 16px;background:var(--ink);color:var(--cream);transform:translateY(-150%)}.skip-link:focus{transform:none}.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.site-header{position:sticky;z-index:50;top:0;background:color-mix(in srgb,var(--cream) 94%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-size:22px;font-weight:750;letter-spacing:-.04em}.brand img{width:42px;height:42px}.brand small{display:block;color:var(--clay-text);font-size:10px;line-height:1;letter-spacing:.18em}.nav{display:flex;align-items:center;gap:26px}.nav a{text-decoration:none;font-size:14px;font-weight:600}.nav a:not(.button):hover,.nav a[aria-current="page"]{color:var(--clay-text)}.nav-toggle{display:none;width:46px;height:46px;border:1px solid var(--line);background:transparent;border-radius:50%;cursor:pointer}.nav-toggle span,.nav-toggle:before,.nav-toggle:after{display:block;width:18px;height:2px;margin:4px auto;background:var(--ink);content:""}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 21px;border:1px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--cream);font-weight:700;text-decoration:none;transition:background .18s,border-color .18s,color .18s,transform .18s}.button:hover{background:var(--clay-text);border-color:var(--clay-text);color:var(--white);transform:translateY(-2px)}.button.secondary{background:transparent;color:var(--ink)}.button.secondary:hover{background:var(--ink);color:var(--cream)}.button.light{background:var(--cream);border-color:var(--cream);color:var(--ink)}.button.light:hover{background:var(--clay-text);border-color:var(--clay-text);color:var(--white)}.eyebrow{margin:0 0 18px;color:var(--clay-text);font-size:12px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.display{margin:0;font-family:var(--serif);font-size:clamp(3.7rem,8.2vw,7.8rem);font-weight:700;letter-spacing:-.068em;line-height:.85}.display em{color:var(--clay);font-style:normal}.h1{margin:0;font-size:clamp(3rem,7vw,6.2rem);line-height:.92;letter-spacing:-.062em}.h2{margin:0;font-size:clamp(2.2rem,5vw,4.6rem);line-height:.96;letter-spacing:-.052em}.h3{margin:0;font-size:clamp(1.4rem,2.5vw,2rem);line-height:1.1;letter-spacing:-.035em}.lead{max-width:690px;color:var(--muted);font-size:clamp(1.12rem,2vw,1.35rem)}.hero{padding:92px 0 76px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:68px;align-items:center}.hero-copy .lead{margin:30px 0}.actions{display:flex;flex-wrap:wrap;gap:12px}.hero-note{margin-top:22px;color:var(--muted);font-size:13px}.audit-window{position:relative;border:1px solid var(--ink);background:var(--paper);box-shadow:14px 14px 0 var(--clay)}.window-bar{height:44px;padding:0 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}.window-dots{display:flex;gap:6px}.window-dots i{width:7px;height:7px;border-radius:50%;background:var(--line)}.audit-body{padding:32px}.audit-mark{display:flex;align-items:center;gap:18px;margin:4px 0 28px;color:var(--jacaranda)}.audit-mark svg{width:126px;overflow:visible}.audit-mark span{display:grid;color:var(--ink)}.audit-mark strong{font-size:18px;line-height:1.2}.audit-mark small{color:var(--muted)}.audit-list{list-style:none;padding:0;margin:0}.audit-list li{display:grid;grid-template-columns:30px 1fr auto;gap:12px;padding:14px 0;border-top:1px solid var(--line);align-items:center}.audit-list b{font-size:14px}.audit-list small{color:var(--muted)}.status{width:10px;height:10px;border-radius:50%;background:var(--clay)}.status.purple{background:var(--jacaranda)}.status.green{background:var(--success)}.trust-strip{border-block:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:22px;border-left:1px solid var(--line);font-size:13px}.trust-item:first-child{border-left:0}.trust-item strong{display:block;font-size:15px}.section{padding:112px 0}.section.compact{padding:72px 0}.section.dark{background:var(--ink);color:var(--cream)}.section.paper{background:var(--paper)}.section-head{display:grid;grid-template-columns:4fr 6fr;gap:70px;align-items:start;margin-bottom:62px}.section-head .lead{margin:0}.problem-list{border-top:1px solid var(--line)}.problem{display:grid;grid-template-columns:90px 1fr 1.1fr;gap:38px;padding:38px 0;border-bottom:1px solid var(--line);align-items:start}.line-icon{display:grid;width:58px;height:58px;color:var(--clay);place-items:center}.line-icon svg{width:48px;overflow:visible}.line-icon.mini{width:32px;height:32px;color:var(--jacaranda)}.line-icon.mini svg{width:28px}.line-icon.on-dark{color:var(--clay-on-dark)}.line-icon path,.line-icon circle,.line-icon rect,.audit-mark path,.audit-mark circle,.audit-mark rect{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:180;stroke-dashoffset:180;animation:icon-draw 1.25s cubic-bezier(.2,.7,.2,1) forwards}.line-icon circle,.audit-mark circle{stroke-dasharray:70}.problem p{margin:0;color:var(--muted)}.service-stack{display:grid;gap:16px}.service{display:grid;grid-template-columns:150px 1fr auto;gap:34px;align-items:center;padding:34px;border:1px solid #4b4943;background:#2b2b28}.approval-mark{display:grid;width:58px;height:58px;border:1px solid color-mix(in srgb,var(--clay-on-dark) 62%,transparent);border-radius:50%;color:var(--clay-on-dark);font-size:26px;place-items:center}.service p{margin:8px 0 0;color:#c9c4ba}.service .link-arrow{font-size:28px;text-decoration:none}.process{border-top:1px solid var(--line)}.process-step{display:grid;grid-template-columns:100px 1fr 1fr;gap:38px;padding:44px 0;border-bottom:1px solid var(--line)}.process-icon{display:grid;width:58px;height:58px;color:var(--clay-text);place-items:center;align-self:start}.process-icon svg{display:block;width:56px;height:56px;overflow:visible}.process-icon path,.process-icon circle,.process-icon rect{stroke-width:2.35;vector-effect:non-scaling-stroke;stroke-dasharray:220;stroke-dashoffset:220;animation:icon-draw 1s cubic-bezier(.22,.7,.2,1) forwards}.process-step p{margin:0;color:var(--muted)}.comparison{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.compare-side{padding:42px}.compare-side.after{background:var(--ink);color:var(--cream)}.compare-side ul{padding:0;list-style:none}.compare-side li{padding:14px 0;border-bottom:1px solid var(--line)}.after li{border-color:#4a4944}.compare-label{display:inline-block;margin-bottom:24px;color:var(--clay-text);font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.quote-section{text-align:center}.quote-section .h2{max-width:900px;margin-inline:auto}.quote-section .lead{margin:24px auto 34px}.faq{max-width:900px;margin-inline:auto}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;padding:24px 40px 24px 0;font-size:19px;font-weight:700;list-style:none;position:relative}.faq summary:after{content:"+";position:absolute;right:4px;font-size:26px;font-weight:400}.faq details[open] summary:after{content:"−"}.faq p{max-width:720px;margin:0 0 28px;color:var(--muted)}.page-hero{padding:92px 0 70px;border-bottom:1px solid var(--line)}.page-hero-grid{display:grid;grid-template-columns:7fr 4fr;gap:80px;align-items:end}.page-hero .lead{margin:24px 0 0}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.package{display:flex;min-height:520px;flex-direction:column;padding:32px;border:1px solid var(--line);background:var(--paper)}.package.featured{background:var(--ink);color:var(--cream);box-shadow:9px 9px 0 var(--clay)}.package .package-tag{margin-bottom:34px;color:var(--clay-text);font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.package p{color:var(--muted)}.package.featured p,.package.featured li{color:#c9c4ba}.package ul{padding-left:18px}.package li{margin:10px 0}.package .button{margin-top:auto}.scope-note{margin-top:34px;padding:24px;border-left:4px solid var(--clay);background:var(--paper)}.about-grid{display:grid;grid-template-columns:5fr 7fr;gap:86px;align-items:start}.principles{border-top:1px solid var(--line)}.principle{display:grid;grid-template-columns:160px 1fr;gap:30px;padding:28px 0;border-bottom:1px solid var(--line)}.principle strong{color:var(--clay-text)}.contact-grid{display:grid;grid-template-columns:4fr 6fr;gap:90px}.contact-links{list-style:none;padding:0}.contact-links li{padding:16px 0;border-bottom:1px solid var(--line)}.contact-links a{font-weight:700}.form{padding:38px;background:var(--paper);border:1px solid var(--line)}.field{margin-bottom:20px}.field label{display:block;margin-bottom:7px;font-size:13px;font-weight:700}.field input,.field textarea,.field select{width:100%;padding:14px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--ink)}.field textarea{min-height:150px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{outline:3px solid color-mix(in srgb,var(--clay) 35%,transparent);border-color:var(--clay)}.form-note,.form-status{font-size:13px;color:var(--muted)}.legal{max-width:820px}.legal h2{margin-top:48px}.legal li,.legal p{color:var(--muted)}.site-footer{padding:68px 0 26px;background:var(--ink);color:var(--cream)}.footer-top{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:60px;padding-bottom:52px}.footer-brand .brand{margin-bottom:18px}.footer-brand .brand img{filter:none}.footer-brand p{max-width:430px;color:#c9c4ba}.footer-nav{display:grid;gap:10px;align-content:start}.footer-nav strong{margin-bottom:8px;color:var(--clay-on-dark);font-size:12px;letter-spacing:.15em;text-transform:uppercase}.footer-nav a{color:#d9d4cb;text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid #474641;color:#aaa69f;font-size:13px}.dark .eyebrow,.package.featured .package-tag,.after .compare-label,.site-footer .brand small{color:var(--clay-on-dark)}.reveal{animation:rise .65s both}@keyframes icon-draw{to{stroke-dashoffset:0}}@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{animation:none}.button{transition:none}.line-icon path,.line-icon circle,.line-icon rect,.audit-mark path,.audit-mark circle,.audit-mark rect{animation:none;stroke-dashoffset:0}.process-icon path,.process-icon circle,.process-icon rect{animation:none;stroke-dashoffset:0}}@media(max-width:900px){.hero-grid,.section-head,.page-hero-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{gap:54px}.section-head{gap:20px}.problem,.process-step{grid-template-columns:60px 1fr}.problem p,.process-step p{grid-column:2}.service{grid-template-columns:80px 1fr}.service .link-arrow{display:none}.package-grid{grid-template-columns:1fr}.package{min-height:auto}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media(max-width:760px){.container{width:min(100% - 28px,var(--max))}.nav-toggle{display:block}.nav{position:absolute;top:82px;left:0;right:0;display:none;align-items:stretch;padding:20px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column}.nav[data-open="true"]{display:flex}.nav .button{width:100%}.hero,.page-hero{padding-top:62px}.section{padding:78px 0}.trust-grid{grid-template-columns:1fr 1fr}.trust-item:nth-child(3){border-left:0;border-top:1px solid var(--line)}.trust-item:nth-child(4){border-top:1px solid var(--line)}.comparison{grid-template-columns:1fr}.problem,.process-step{gap:16px}.service{grid-template-columns:1fr}.line-icon{width:52px;height:52px}.footer-top{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column}.actions{align-items:stretch}.actions .button{width:100%}.audit-window{box-shadow:8px 8px 0 var(--clay)}.primary-logo{max-width:100%}}

/* Motion system: architectural hero */
.hero{position:relative;overflow:hidden;isolation:isolate}.hero:before,.hero:after{position:absolute;z-index:-2;border-radius:50%;content:"";pointer-events:none}.hero:before{width:28rem;height:28rem;right:-10rem;top:-13rem;background:color-mix(in srgb,var(--clay) 16%,transparent);animation:ambient-drift 11s ease-in-out infinite}.hero:after{width:18rem;height:18rem;left:-8rem;bottom:-12rem;background:color-mix(in srgb,var(--jacaranda) 13%,transparent);animation:ambient-drift 14s ease-in-out -5s infinite reverse}.hero-grid{position:relative;z-index:1}.hero-visual{position:relative;display:grid;min-height:560px;place-items:center;isolation:isolate}.hero-visual .audit-window{position:relative;z-index:2;width:min(100%,520px);animation:hero-float 6s ease-in-out 1.5s infinite}.stoep-scene{position:absolute;z-index:0;inset:-34px -58px -30px;overflow:hidden;pointer-events:none}.scene-sun{position:absolute;top:7%;right:8%;width:156px;height:156px;border:1px solid color-mix(in srgb,var(--clay) 58%,transparent);border-radius:50%;background:color-mix(in srgb,var(--clay) 13%,transparent);animation:sun-breathe 8s ease-in-out infinite}.scene-architecture{position:absolute;right:-8%;bottom:-2%;width:118%;color:color-mix(in srgb,var(--jacaranda) 72%,var(--ink));opacity:.52}.scene-line{fill:none;stroke:currentColor;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:1600;stroke-dashoffset:1600;animation:draw-architecture 1.6s cubic-bezier(.22,.7,.2,1) forwards}.scene-eave{animation-delay:.14s}.scene-pillars{animation-delay:.25s}.scene-door{animation-delay:.36s}.scene-step{animation-delay:.48s}.scene-ground{animation-delay:.58s}.scene-leaf{position:absolute;display:block;width:18px;height:52px;border-radius:100% 0 100% 0;background:color-mix(in srgb,var(--jacaranda) 70%,var(--cream));opacity:.72;transform-origin:50% 100%;animation:leaf-sway 4.5s ease-in-out infinite}.leaf-one{left:4%;bottom:14%;transform:rotate(-34deg)}.leaf-two{left:8%;bottom:10%;height:64px;animation-delay:-1.4s}.leaf-three{right:1%;bottom:12%;height:58px;transform:rotate(38deg);animation-delay:-2.6s}.window-dots i{animation:dot-breathe 3.6s ease-in-out infinite}.window-dots i:nth-child(2){animation-delay:.3s}.window-dots i:nth-child(3){animation-delay:.6s}.audit-list li{transition:transform .25s ease,background .25s ease}.audit-list li:hover{transform:translateX(5px);background:color-mix(in srgb,var(--cream) 62%,transparent)}.audit-list .status{animation:status-pulse 3.2s ease-out infinite}.audit-list li:nth-child(2) .status{animation-delay:.65s}.audit-list li:nth-child(3) .status{animation-delay:1.3s}@keyframes hero-float{0%,100%{transform:translateY(0) rotate(-.12deg)}50%{transform:translateY(-11px) rotate(.12deg)}}@keyframes ambient-drift{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-16px,12px,0) scale(1.06)}}@keyframes sun-breathe{0%,100%{transform:scale(.96);opacity:.72}50%{transform:scale(1.06);opacity:1}}@keyframes draw-architecture{to{stroke-dashoffset:0}}@keyframes leaf-sway{0%,100%{rotate:-4deg}50%{rotate:7deg}}@keyframes dot-breathe{0%,70%,100%{transform:scale(1);opacity:.72}35%{transform:scale(1.35);opacity:1}}@keyframes status-pulse{0%,65%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--clay) 32%,transparent)}35%{box-shadow:0 0 0 8px transparent}}
@media(max-width:900px){.hero-visual{min-height:500px}.stoep-scene{inset:-20px -30px}.scene-architecture{right:-4%;width:108%}}
@media(max-width:760px){.hero-visual{min-height:440px}.stoep-scene{inset:0 -20px -8px}.scene-sun{width:112px;height:112px}.scene-architecture{bottom:2%;width:105%;opacity:.42}.hero-visual .audit-window{animation-duration:7s}}
@media(prefers-reduced-motion:reduce){.hero:before,.hero:after,.hero-visual .audit-window,.scene-sun,.scene-line,.scene-leaf,.window-dots i,.audit-list .status{animation:none!important}.scene-line{stroke-dashoffset:0}.audit-list li{transition:none}}

/* Motion system: page rhythm and interaction */
.motion-ready [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.2,.72,.2,1),transform .7s cubic-bezier(.2,.72,.2,1);transition-delay:var(--reveal-delay,0ms)}.motion-ready [data-reveal].is-visible{opacity:1;transform:none}.page-hero{position:relative;overflow:hidden;isolation:isolate}.page-hero:after{position:absolute;z-index:-1;right:-7rem;top:-9rem;width:22rem;height:22rem;border:1px solid color-mix(in srgb,var(--jacaranda) 24%,transparent);border-radius:50%;background:color-mix(in srgb,var(--jacaranda) 7%,transparent);content:"";animation:ambient-drift 13s ease-in-out infinite}.service,.package,.principle,.trust-item,.line-icon,.link-arrow,.faq summary:after{transition:transform .28s ease,border-color .28s ease,background .28s ease,color .28s ease,box-shadow .28s ease}.faq details[open] summary:after{transform:rotate(180deg)}
@media(hover:hover){.trust-item:hover{background:color-mix(in srgb,var(--paper) 62%,transparent)}.problem:hover .line-icon{transform:translateX(7px);color:var(--clay-text)}.service:hover{transform:translateX(8px);border-color:color-mix(in srgb,var(--clay-on-dark) 65%,#4b4943)}.service:hover .link-arrow{transform:translate(3px,-3px)}.package:hover{transform:translateY(-7px);border-color:var(--clay);box-shadow:0 15px 34px color-mix(in srgb,var(--ink) 11%,transparent)}.package.featured:hover{box-shadow:12px 16px 0 var(--clay)}.principle:hover{transform:translateX(7px)}.faq summary:hover{color:var(--clay-text)}}
@media(prefers-reduced-motion:reduce){.motion-ready [data-reveal]{opacity:1;transform:none;transition:none}.page-hero:after{animation:none}.service,.package,.principle,.trust-item,.line-icon,.link-arrow,.faq summary:after{transition:none}}
