/* base */
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Poppins,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.left-0{left:0}.right-0{right:0}.top-0{top:0}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.z-\[1\]{z-index:1}.col-span-2{grid-column:span 2/span 2}.mx-auto{margin-left:auto;margin-right:auto}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.mb-8{margin-bottom:2rem}.ml-4{margin-left:1rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-16{height:4rem}.min-h-\[44px\]{min-height:44px}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[1200px\]{max-width:1200px}.max-w-\[720px\]{max-width:720px}.max-w-lg{max-width:32rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[78px_1fr\]{grid-template-columns:78px 1fr}.grid-cols-\[96px_1fr\]{grid-template-columns:96px 1fr}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-10{gap:2.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-t{border-top-width:1px}.border-border-light{--tw-border-opacity:1;border-color:rgb(218 229 234/var(--tw-border-opacity,1))}.border-stone\/20{border-color:hsla(28,10%,50%,.2)}.border-warm-ivory\/15{border-color:hsla(37,30%,92%,.15)}.bg-cream{--tw-bg-opacity:1;background-color:rgb(255 252 244/var(--tw-bg-opacity,1))}.bg-cream-alt{--tw-bg-opacity:1;background-color:rgb(245 240 232/var(--tw-bg-opacity,1))}.bg-cta-gold{--tw-bg-opacity:1;background-color:rgb(253 186 45/var(--tw-bg-opacity,1))}.bg-hero-base{--tw-bg-opacity:1;background-color:rgb(26 36 48/var(--tw-bg-opacity,1))}.bg-hero-dark{--tw-bg-opacity:1;background-color:rgb(15 26 36/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.p-2{padding:.5rem}.p-6{padding:1.5rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-16{padding-bottom:4rem}.pb-4{padding-bottom:1rem}.pt-2{padding-top:.5rem}.pt-24{padding-top:6rem}.pt-5{padding-top:1.25rem}.pt-7{padding-top:1.75rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.font-sans{font-family:Poppins,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-5xl{font-size:3rem;line-height:1}.text-\[28px\]{font-size:28px}.text-\[30px\]{font-size:30px}.text-\[40px\]{font-size:40px}.text-\[44px\]{font-size:44px}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-light{font-weight:300}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-\[1\.03\]{line-height:1.03}.leading-\[1\.08\]{line-height:1.08}.leading-\[1\.1\]{line-height:1.1}.leading-\[1\.2\]{line-height:1.2}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-tight-hero{letter-spacing:-.02em}.tracking-tight-section{letter-spacing:-.01em}.tracking-wide-cta{letter-spacing:.02em}.text-\[\#D89166\]{--tw-text-opacity:1;color:rgb(216 145 102/var(--tw-text-opacity,1))}.text-blue-link{--tw-text-opacity:1;color:rgb(22 119 194/var(--tw-text-opacity,1))}.text-cta-gold{--tw-text-opacity:1;color:rgb(253 186 45/var(--tw-text-opacity,1))}.text-domus-gold{--tw-text-opacity:1;color:rgb(222 156 78/var(--tw-text-opacity,1))}.text-stone{--tw-text-opacity:1;color:rgb(140 126 114/var(--tw-text-opacity,1))}.text-teal{--tw-text-opacity:1;color:rgb(32 180 134/var(--tw-text-opacity,1))}.text-text-primary{--tw-text-opacity:1;color:rgb(26 36 48/var(--tw-text-opacity,1))}.text-text-secondary{--tw-text-opacity:1;color:rgb(101 114 133/var(--tw-text-opacity,1))}.text-warm-ivory{--tw-text-opacity:1;color:rgb(240 235 227/var(--tw-text-opacity,1))}.text-warm-ivory\/50{color:hsla(37,30%,92%,.5)}.text-warm-ivory\/60{color:hsla(37,30%,92%,.6)}.text-warm-ivory\/70{color:hsla(37,30%,92%,.7)}.text-warm-ivory\/80{color:hsla(37,30%,92%,.8)}.text-warm-ivory\/95{color:hsla(37,30%,92%,.95)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:text-domus-gold:hover{--tw-text-opacity:1;color:rgb(222 156 78/var(--tw-text-opacity,1))}.hover\:text-warm-ivory:hover{--tw-text-opacity:1;color:rgb(240 235 227/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}}@media (min-width:768px){.md\:col-span-1{grid-column:span 1/span 1}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.md\:pl-8{padding-left:2rem}.md\:pr-8{padding-right:2rem}}@media (min-width:1024px){.lg\:sticky{position:sticky}.lg\:top-28{top:7rem}.lg\:mb-12{margin-bottom:3rem}.lg\:mb-14{margin-bottom:3.5rem}.lg\:mb-16{margin-bottom:4rem}.lg\:mb-6{margin-bottom:1.5rem}.lg\:mb-7{margin-bottom:1.75rem}.lg\:mt-10{margin-top:2.5rem}.lg\:mt-6{margin-top:1.5rem}.lg\:mt-8{margin-top:2rem}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-\[72px\]{height:72px}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[0\.72fr_1\.28fr\]{grid-template-columns:.72fr 1.28fr}.lg\:grid-cols-\[0\.76fr_1fr\]{grid-template-columns:.76fr 1fr}.lg\:grid-cols-\[0\.82fr_1fr\]{grid-template-columns:.82fr 1fr}.lg\:grid-cols-\[0\.8fr_1\.2fr\]{grid-template-columns:.8fr 1.2fr}.lg\:grid-cols-\[90px_1fr\]{grid-template-columns:90px 1fr}.lg\:gap-12{gap:3rem}.lg\:gap-14{gap:3.5rem}.lg\:gap-16{gap:4rem}.lg\:gap-5{gap:1.25rem}.lg\:gap-9{gap:2.25rem}.lg\:self-start{align-self:flex-start}.lg\:p-10{padding:2.5rem}.lg\:p-7{padding:1.75rem}.lg\:px-6{padding-left:1.5rem;padding-right:1.5rem}.lg\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.lg\:py-16{padding-top:4rem;padding-bottom:4rem}.lg\:py-24{padding-top:6rem;padding-bottom:6rem}.lg\:pt-0{padding-top:0}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-\[21px\]{font-size:21px}.lg\:text-\[40px\]{font-size:40px}.lg\:text-\[50px\]{font-size:50px}.lg\:text-\[52px\]{font-size:52px}.lg\:text-\[64px\]{font-size:64px}.lg\:text-\[66px\]{font-size:66px}.lg\:text-base{font-size:1rem;line-height:1.5rem}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}.lg\:text-xl{font-size:1.25rem;line-height:1.75rem}}

/* base */
@font-face{font-family:'Poppins';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLDz8Z1JlFc-K.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:'Poppins';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLDz8Z1xlFQ.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:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJnecmNE.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:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJfecg.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:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1JlFc-K.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:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1xlFQ.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:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLCz7Z1JlFc-K.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:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLCz7Z1xlFQ.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:'Poppins';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLBT5Z1JlFc-K.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:'Poppins';font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLBT5Z1xlFQ.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}

/* base */
/* CSS Custom Properties */
    :root {
      --hero-bg: #1A2430;
      --hero-bg-deep: #0F1A24;
      --warm-ivory: #F0EBE3;
      --stone: #8C7E72;
      --terracotta: #C4714E;
      --domus-gold: #DE9C4E;
      --cta-gold: #FDBA2D;
      --cta-gold-hover: #D68C00;
      --cream: #FFFCF4;
      --cream-alt: #F5F0E8;
      --text-primary: #1A2430;
      --text-secondary: #657285;
      --border: #DAE5EA;
      --teal: #20B486;
      --blue: #1677C2;
      --surface: #FFFFFF;
    }

    body {
      background:
        linear-gradient(180deg, #FFFCF4 0%, #F8F2EA 42%, #FFFCF4 100%);
    }

    section {
      position: relative;
    }

    section.bg-cream::before,
    section.bg-cream-alt::before {
      content: '';
      position: absolute;
      inset: 0;
      pointer-events: none;
      background:
        radial-gradient(circle at 8% 12%, rgba(222, 156, 78, 0.055), transparent 28%),
        radial-gradient(circle at 92% 8%, rgba(32, 180, 134, 0.035), transparent 24%);
      opacity: 0.9;
    }

    section > .max-w-\[1200px\],
    section > .max-w-\[720px\] {
      position: relative;
      z-index: 1;
    }

    @keyframes warm-drift {
      0%, 100% { transform: translate3d(0, 0, 0) scale(1); opacity: 0.55; }
      50% { transform: translate3d(18px, -12px, 0) scale(1.04); opacity: 0.78; }
    }

    @keyframes slow-kenburns {
      0% { transform: scale(1.01); filter: saturate(1.02) contrast(1.02); }
      100% { transform: scale(1.045); filter: saturate(1.10) contrast(1.04); }
    }

    @keyframes scan-light {
      0% { transform: translateX(-130%) skewX(-12deg); opacity: 0; }
      18% { opacity: 0.22; }
      48% { opacity: 0.12; }
      100% { transform: translateX(130%) skewX(-12deg); opacity: 0; }
    }

    .section-kicker {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      color: #C4714E;
      font-size: 13px;
      font-weight: 300;
      letter-spacing: 0.02em;
      text-transform: uppercase;
    }

    .section-kicker::before {
      content: '';
      width: 36px;
      height: 1px;
      background: currentColor;
      opacity: 0.7;
      box-shadow: 1px 0 rgba(32, 180, 134, 0.18), -1px 0 rgba(196, 113, 78, 0.18);
    }

    /* Grain texture for dark sections */
    .grain::after {
      content: '';
      position: absolute;
      inset: 0;
      opacity: 0.04;
      pointer-events: none;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
      background-repeat: repeat;
      background-size: 256px 256px;
    }

    /* Scroll animations */
    .fade-up {
      opacity: 0;
      transform: translateY(28px);
      transition: opacity 0.72s ease, transform 0.72s ease;
    }
    .fade-up.visible {
      opacity: 1;
      transform: translateY(0);
    }

    /* Stagger children */
    .stagger > .fade-up:nth-child(1) { transition-delay: 0ms; }
    .stagger > .fade-up:nth-child(2) { transition-delay: 100ms; }
    .stagger > .fade-up:nth-child(3) { transition-delay: 200ms; }
    .stagger > .fade-up:nth-child(4) { transition-delay: 300ms; }

    /* FAQ accordion */
    details summary {
      cursor: pointer;
      list-style: none;
    }
    details summary::-webkit-details-marker {
      display: none;
    }
    details summary::marker {
      display: none;
      content: '';
    }
    details .faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease, padding 0.35s ease;
      padding-top: 0;
      padding-bottom: 0;
    }
    details[open] .faq-answer {
      max-height: 300px;
      padding-top: 16px;
      padding-bottom: 8px;
    }
    details summary .faq-icon {
      transition: transform 0.3s ease;
    }
    details[open] summary .faq-icon {
      transform: rotate(45deg);
    }

    /* Nav transition */
    .nav-bar {
      transition: background-color 0.3s ease, box-shadow 0.3s ease, backdrop-filter 0.3s ease;
    }
    .nav-bar.menu-open {
      background-color: rgba(15, 26, 36, 0.96) !important;
      backdrop-filter: blur(16px);
    }
    .nav-bar.scrolled {
      background-color: rgba(255, 255, 255, 0.88) !important;
      backdrop-filter: blur(16px);
      box-shadow: 0 1px 3px rgba(0,0,0,0.06), 0 12px 34px rgba(26, 36, 48, 0.06);
    }
    .nav-bar.scrolled .nav-link {
      color: #1A2430 !important;
    }
    .nav-bar.scrolled .nav-logo {
      color: #DE9C4E !important;
    }
    .nav-bar.scrolled .nav-cta {
      background-color: #FDBA2D !important;
      color: #1A2430 !important;
    }

    /* CTA glow on dark backgrounds */
    .cta-glow {
      box-shadow: 0 0 24px rgba(253, 186, 45, 0.25), 0 4px 12px rgba(253, 186, 45, 0.15);
    }
    .cta-glow:hover {
      box-shadow: 0 0 32px rgba(253, 186, 45, 0.35), 0 6px 16px rgba(253, 186, 45, 0.2);
    }

    .problem-section {
      background:
        radial-gradient(circle at 14% 8%, rgba(253, 186, 45, 0.18), transparent 26%),
        radial-gradient(circle at 88% 34%, rgba(222, 156, 78, 0.12), transparent 28%),
        linear-gradient(180deg, #FFFCF4 0%, #F8F0E4 46%, #FFFCF4 100%);
      overflow: hidden;
    }

    .problem-section::after {
      content: '';
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(222, 156, 78, 0.55), transparent);
      pointer-events: none;
    }

    .problem-heading-accent {
      color: #A7672F;
      text-shadow: 0 10px 34px rgba(222, 156, 78, 0.18);
    }

    .editorial-row {
      position: relative;
      border-top: 1px solid rgba(222, 156, 78, 0.26);
      transition: transform 0.35s ease;
    }

    .editorial-row:last-child {
      border-bottom: 1px solid rgba(222, 156, 78, 0.26);
    }

    .editorial-row:hover {
      transform: translateX(6px);
    }

    .row-index {
      color: rgba(222, 156, 78, 0.36);
      font-size: clamp(56px, 9vw, 120px);
      line-height: 0.85;
      font-weight: 900;
      letter-spacing: -0.02em;
    }

    .problem-thread {
      position: relative;
    }

    .problem-thread::before {
      content: '';
      position: absolute;
      left: 38px;
      top: 22px;
      bottom: 22px;
      width: 2px;
      background: linear-gradient(180deg, rgba(222, 156, 78, 0), rgba(253, 186, 45, 0.76), rgba(222, 156, 78, 0));
      pointer-events: none;
    }

    .problem-mark {
      position: relative;
      z-index: 1;
      display: grid;
      place-items: center;
      width: 78px;
      height: 78px;
      color: #9B5B14;
      background:
        radial-gradient(circle at 36% 24%, rgba(255, 252, 244, 0.92), transparent 36%),
        linear-gradient(180deg, rgba(253, 186, 45, 0.34), rgba(222, 156, 78, 0.18));
      border: 1px solid rgba(222, 156, 78, 0.38);
      border-radius: 999px;
      box-shadow:
        0 18px 42px rgba(222, 156, 78, 0.16),
        inset 0 0 0 1px rgba(255, 252, 244, 0.56);
    }

    .problem-mark i {
      font-size: 30px;
    }

    .gold-emphasis {
      color: #8D5317;
      font-weight: 600;
      background: linear-gradient(180deg, transparent 58%, rgba(253, 186, 45, 0.24) 58%);
    }

    /* CTA button hover */
    .cta-hover {
      transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
    }
    .cta-hover:hover {
      transform: scale(1.02);
    }

    /* Mobile menu */
    .mobile-menu {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.3s ease;
      background: rgba(15, 26, 36, 0.96);
      backdrop-filter: blur(16px);
      border-radius: 0 0 12px 12px;
    }
    .mobile-menu.open {
      max-height: 320px;
    }

    /* Smooth scroll */
    html {
      scroll-behavior: smooth;
    }

	    /* Hero background */
    .hero-bg-image {
      background-image:
        linear-gradient(180deg, rgba(15, 26, 36, 0.45) 0%, rgba(26, 36, 48, 0.52) 50%, rgba(26, 36, 48, 0.88) 85%, rgba(26, 36, 48, 1) 100%),
        url('/assets/hero-bg.webp');
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
    }

    .hero-video {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      opacity: 0.78;
      filter: saturate(1.08) contrast(1.04);
      pointer-events: none;
    }

    /* ---- Ambient life layers ---- */
    .hero-particle-canvas {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      pointer-events: none;
      z-index: 2;
    }

    /* ---- Aurora / refraction light ribbons ---- */
    .hero-aurora {
      position: absolute;
      inset: 0;
      pointer-events: none;
      z-index: 1;
    }

    .hero-ribbon {
      position: absolute;
      pointer-events: none;
      will-change: transform, opacity;
      filter: blur(40px);
    }

    /* Main warm ribbon · sweeps diagonally across upper area */
    .hero-ribbon--1 {
      width: 120%;
      height: 30vh;
      top: 8%;
      left: -10%;
      background: linear-gradient(
        135deg,
        transparent 0%,
        rgba(222,156,78,0.0) 10%,
        rgba(222,156,78,0.18) 30%,
        rgba(253,186,45,0.12) 45%,
        rgba(196,113,78,0.14) 60%,
        rgba(222,156,78,0.06) 80%,
        transparent 95%
      );
      border-radius: 50%;
      transform-origin: 60% 50%;
      animation: aurora-drift-1 16s ease-in-out infinite;
    }

    /* Secondary ribbon · cooler terracotta, counter-flow */
    .hero-ribbon--2 {
      width: 100%;
      height: 22vh;
      top: 20%;
      right: -15%;
      background: linear-gradient(
        -140deg,
        transparent 0%,
        rgba(196,113,78,0.0) 15%,
        rgba(196,113,78,0.14) 35%,
        rgba(222,156,78,0.10) 55%,
        rgba(240,235,227,0.06) 72%,
        transparent 90%
      );
      border-radius: 50%;
      transform-origin: 40% 50%;
      animation: aurora-drift-2 20s ease-in-out infinite;
    }

    /* Thin bright accent ribbon · the brightest one */
    .hero-ribbon--3 {
      width: 90%;
      height: 12vh;
      top: 15%;
      left: 5%;
      background: linear-gradient(
        125deg,
        transparent 0%,
        rgba(253,186,45,0.0) 20%,
        rgba(253,186,45,0.22) 40%,
        rgba(222,156,78,0.15) 58%,
        rgba(253,186,45,0.0) 78%,
        transparent 100%
      );
      border-radius: 40%;
      filter: blur(28px);
      transform-origin: 55% 50%;
      animation: aurora-drift-3 13s ease-in-out infinite;
    }

    /* Low wide glow · ground-level warmth */
    .hero-ribbon--4 {
      width: 130%;
      height: 35vh;
      bottom: -5%;
      left: -15%;
      background: linear-gradient(
        180deg,
        transparent 0%,
        rgba(222,156,78,0.0) 20%,
        rgba(196,113,78,0.10) 50%,
        rgba(222,156,78,0.14) 75%,
        rgba(222,156,78,0.08) 100%
      );
      border-radius: 50%;
      filter: blur(50px);
      animation: aurora-drift-4 22s ease-in-out infinite;
    }

    @keyframes aurora-drift-1 {
      0% { transform: rotate(-3deg) translateX(-4%) translateY(0); }
      33% { transform: rotate(2deg) translateX(4%) translateY(-2%); }
      66% { transform: rotate(-1deg) translateX(-1%) translateY(1%); }
      100% { transform: rotate(-3deg) translateX(-4%) translateY(0); }
    }

    @keyframes aurora-drift-2 {
      0% { transform: rotate(2deg) translateX(3%) translateY(0); }
      50% { transform: rotate(-3deg) translateX(-4%) translateY(-2%); }
      100% { transform: rotate(2deg) translateX(3%) translateY(0); }
    }

    @keyframes aurora-drift-3 {
      0% { transform: rotate(-1deg) translateX(-2%) translateY(1%); }
      30% { transform: rotate(3deg) translateX(3%) translateY(-2%); }
      65% { transform: rotate(0deg) translateX(-1%) translateY(2%); }
      100% { transform: rotate(-1deg) translateX(-2%) translateY(1%); }
    }

    @keyframes aurora-drift-4 {
      0% { transform: translateX(-3%) translateY(0); }
      50% { transform: translateX(4%) translateY(-1%); }
      100% { transform: translateX(-3%) translateY(0); }
    }

    @media (max-width: 640px) {
      .hero-ribbon--2, .hero-ribbon--4 { display: none; }
    }

    .hero-bg-image::before {
      content: '';
      position: absolute;
      inset: 0;
      pointer-events: none;
      background:
        linear-gradient(90deg, rgba(15, 26, 36, 0.12) 0%, rgba(15, 26, 36, 0.06) 46%, rgba(222, 156, 78, 0.08) 100%);
      z-index: 1;
    }

    .hero-bg-image .light-flare {
      position: absolute;
      pointer-events: none;
      border-radius: 999px;
      filter: blur(32px);
      mix-blend-mode: screen;
      z-index: 2;
    }

    .hero-flare-primary {
      width: 34vw;
      height: 34vw;
      right: -12vw;
      top: 12vh;
      background: radial-gradient(circle, rgba(222, 156, 78, 0.24), rgba(222, 156, 78, 0.05) 48%, transparent 70%);
      animation: warm-drift 9s ease-in-out infinite;
    }

    .hero-flare-secondary {
      width: 22vw;
      height: 22vw;
      left: 44vw;
      bottom: 8vh;
      background: radial-gradient(circle, rgba(196, 113, 78, 0.18), rgba(196, 113, 78, 0.04) 52%, transparent 72%);
      animation: warm-drift 12s ease-in-out infinite reverse;
    }

    .hero-content {
      position: relative;
      z-index: 1;
    }

    .hero-accent-line {
      width: 72px;
      height: 1px;
      background: linear-gradient(90deg, #DE9C4E, rgba(222, 156, 78, 0));
      box-shadow: 0 0 22px rgba(222, 156, 78, 0.38), 1px 0 rgba(32, 180, 134, 0.20);
    }

    .hero-copy-strong {
      text-shadow: 0 2px 30px rgba(15, 26, 36, 0.62);
    }

    .hero-copy-soft {
      text-shadow: 0 2px 26px rgba(15, 26, 36, 0.58);
    }

	    .product-stage {
	      position: relative;
	      overflow: hidden;
	      background:
	        linear-gradient(180deg, rgba(255, 252, 244, 0.96), rgba(245, 240, 232, 0.92));
	      border: 1px solid rgba(218, 229, 234, 0.95);
	      border-radius: 8px;
	      box-shadow:
	        0 24px 74px rgba(26, 36, 48, 0.12),
	        inset 0 0 0 1px rgba(255, 255, 255, 0.78);
	      transform: translateZ(0);
	      isolation: isolate;
	      padding: 10px;
	    }

	    .product-stage::before {
	      content: '';
	      position: absolute;
	      inset: 0;
	      pointer-events: none;
	      background:
	        linear-gradient(90deg, rgba(222, 156, 78, 0.08), transparent 42%);
	      z-index: 0;
	    }

	    .calendar-shell {
	      position: relative;
	      z-index: 1;
	      background: rgba(255, 255, 255, 0.94);
	      border: 1px solid rgba(218, 229, 234, 0.92);
	      border-radius: 6px;
	      overflow: hidden;
	      box-shadow: 0 18px 46px rgba(26, 36, 48, 0.08);
	    }

	    .calendar-sidebar {
	      display: flex;
	      align-items: center;
	      gap: 8px;
	      flex-wrap: wrap;
	      color: var(--text-secondary);
	      background: #FFFFFF;
	      padding: 13px 14px;
	      border-bottom: 1px solid rgba(218, 229, 234, 0.92);
	    }

	    .calendar-logo {
	      color: var(--text-primary);
	      font-weight: 800;
	      font-size: 18px;
	      letter-spacing: -0.02em;
	      margin-right: 12px;
	    }

	    .calendar-filter {
	      display: flex;
	      align-items: center;
	      gap: 7px;
	      padding: 7px 9px;
	      border: 1px solid rgba(218, 229, 234, 0.92);
	      border-radius: 999px;
	      background: rgba(255, 252, 244, 0.72);
	      color: var(--text-secondary);
	      font-size: 12px;
	      line-height: 1;
	    }

	    .filter-dot {
	      width: 8px;
	      height: 8px;
	      border-radius: 999px;
	      background: var(--domus-gold);
	      flex: 0 0 auto;
	    }

	    .filter-dot.teal { background: var(--teal); }
	    .filter-dot.terracotta { background: var(--terracotta); }
	    .filter-dot.blue { background: var(--blue); }

	    .calendar-main {
	      padding: 16px;
	      background: #FFFCF4;
	    }

	    .calendar-topbar {
	      display: flex;
	      align-items: center;
	      justify-content: space-between;
	      gap: 16px;
	      margin-bottom: 14px;
	    }

	    .calendar-title {
	      color: var(--text-primary);
	      font-weight: 800;
	      font-size: clamp(20px, 2.4vw, 28px);
	      line-height: 1;
	      letter-spacing: -0.02em;
	    }

	    .calendar-status {
	      display: flex;
	      align-items: center;
	      gap: 8px;
	      color: var(--text-secondary);
	      background: #FFFFFF;
	      border: 1px solid rgba(218, 229, 234, 0.92);
	      border-radius: 6px;
	      padding: 8px 10px;
	      font-size: 12px;
	      font-weight: 600;
	      white-space: nowrap;
	    }

	    .calendar-grid {
	      display: grid;
	      grid-template-columns: repeat(7, minmax(112px, 1fr));
	      border: 1px solid rgba(218, 229, 234, 0.92);
	      background: rgba(218, 229, 234, 0.76);
	      gap: 1px;
	      min-width: 840px;
	    }

	    .calendar-viewport {
	      overflow-x: auto;
	      padding-bottom: 2px;
	    }

	    .calendar-day {
	      min-height: 122px;
	      background: rgba(255, 255, 255, 0.92);
	      padding: 10px;
	      position: relative;
	    }

	    .calendar-day.muted {
	      background: rgba(245, 240, 232, 0.62);
	    }

	    .day-label {
	      display: flex;
	      align-items: baseline;
	      justify-content: space-between;
	      color: rgba(26, 36, 48, 0.45);
	      font-size: 12px;
	      font-weight: 700;
	      margin-bottom: 8px;
	    }

	    .calendar-event {
	      display: block;
	      border-radius: 4px;
	      padding: 6px 7px;
	      margin-top: 5px;
	      color: #0F1A24;
	      font-size: 11px;
	      line-height: 1.18;
	      font-weight: 700;
	      background: rgba(253, 186, 45, 0.58);
	      border: 1px solid rgba(222, 156, 78, 0.32);
	    }

	    .calendar-event small {
	      display: block;
	      color: rgba(15, 26, 36, 0.62);
	      font-size: 10px;
	      font-weight: 500;
	      margin-top: 2px;
	    }

	    .calendar-event.teal {
	      background: rgba(32, 180, 134, 0.56);
	    }

	    .calendar-event.terracotta {
	      background: rgba(196, 113, 78, 0.72);
	      color: #fff;
	    }

	    .calendar-event.terracotta small {
	      color: rgba(255, 255, 255, 0.78);
	    }

	    .calendar-event.blue {
	      background: rgba(22, 119, 194, 0.64);
	      color: #fff;
	    }

	    .calendar-event.blue small {
	      color: rgba(255, 255, 255, 0.78);
	    }

	    .calendar-summary {
	      display: flex;
	      flex-wrap: wrap;
	      gap: 8px;
	      margin-top: 12px;
	    }

	    .summary-item {
	      display: flex;
	      align-items: baseline;
	      gap: 7px;
	      background: #FFFFFF;
	      border: 1px solid rgba(218, 229, 234, 0.92);
	      border-radius: 6px;
	      padding: 9px 11px;
	    }

	    .summary-item strong {
	      display: block;
	      color: var(--text-primary);
	      font-size: 16px;
	      line-height: 1;
	    }

	    .summary-item span {
	      color: var(--text-secondary);
	      font-size: 12px;
	      line-height: 1.3;
	    }

	    @media (max-width: 860px) {
	      .calendar-shell {
	        min-height: 0;
	      }

	      .calendar-sidebar {
	        flex-wrap: nowrap;
	        overflow-x: auto;
	        scrollbar-width: none;
	      }

	      .calendar-sidebar::-webkit-scrollbar { display: none; }

	      .calendar-logo {
	        flex: 0 0 auto;
	      }

	      .calendar-filter {
	        flex: 0 0 auto;
	      }

	      .calendar-topbar {
	        align-items: flex-start;
	        flex-direction: column;
	      }

	      .calendar-viewport {
	        overflow: visible;
	      }

	      .calendar-grid {
	        min-width: 0;
	        grid-template-columns: 1fr;
	        gap: 8px;
	        border: 0;
	        background: transparent;
	      }

	      .calendar-day {
	        min-height: 0;
	        border: 1px solid rgba(218, 229, 234, 0.92);
	        border-radius: 6px;
	      }

	      .calendar-day.muted {
	        background: rgba(255, 255, 255, 0.78);
	      }

	      .calendar-summary {
	        display: grid;
	        grid-template-columns: 1fr;
	      }
	    }

	    .outcome-section {
	      overflow: hidden;
	      background:
	        radial-gradient(circle at 8% 18%, rgba(253, 186, 45, 0.13), transparent 28%),
	        radial-gradient(circle at 92% 72%, rgba(196, 113, 78, 0.10), transparent 30%),
	        linear-gradient(180deg, #FFFCF4 0%, #F8F1E8 52%, #FFFCF4 100%);
	    }

	    .outcome-section::before {
	      content: '';
	      position: absolute;
	      left: 50%;
	      top: 14%;
	      width: min(620px, 86vw);
	      height: min(620px, 86vw);
	      transform: translateX(-50%);
	      border-radius: 999px;
	      background: radial-gradient(circle, rgba(253, 186, 45, 0.09), transparent 68%);
	      pointer-events: none;
	    }

	    .outcome-grid {
	      position: relative;
	      border-color: rgba(222, 156, 78, 0.28);
	    }

	    .outcome-cell {
	      position: relative;
	      border-top: 1px solid rgba(222, 156, 78, 0.22);
	    }

	    .outcome-cell::before {
	      content: '';
	      position: absolute;
	      top: -1px;
	      left: 0;
	      width: 72px;
	      height: 1px;
	      background: linear-gradient(90deg, rgba(253, 186, 45, 0.82), transparent);
	      pointer-events: none;
	    }

	    .outcome-word {
	      display: inline-block;
	      position: relative;
	      color: #D68C00;
	      text-shadow: 0 14px 36px rgba(222, 156, 78, 0.20);
	    }

	    .outcome-word::after {
	      content: '';
	      position: absolute;
	      left: 2px;
	      right: 6px;
	      bottom: -8px;
	      height: 2px;
	      background: linear-gradient(90deg, rgba(253, 186, 45, 0.72), transparent);
	    }

	    @media (min-width: 768px) {
	      .outcome-cell {
	        border-top: 0;
	        border-left: 1px solid rgba(222, 156, 78, 0.22);
	      }

	      .outcome-cell:first-child {
	        border-left: 0;
	      }
	    }

	    .pricing-slab {
	      position: relative;
	      overflow: hidden;
	      background:
	        radial-gradient(circle at 80% 0%, rgba(253, 186, 45, 0.18), transparent 30%),
	        linear-gradient(135deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 252, 244, 0.98) 48%, rgba(239, 246, 248, 0.92) 100%);
	      border: 1px solid rgba(218, 229, 234, 0.95);
	      border-radius: 8px;
	      box-shadow: 0 22px 70px rgba(26, 36, 48, 0.10);
	    }

	    .pricing-slab::before {
	      content: '';
	      position: absolute;
	      inset: 0;
	      pointer-events: none;
	      background:
	        linear-gradient(90deg, rgba(22, 119, 194, 0.08), transparent 34%),
	        linear-gradient(180deg, transparent 0%, rgba(222, 156, 78, 0.10) 100%);
	      opacity: 0.8;
	    }

	    .pricing-card {
	      position: relative;
	      min-height: 100%;
	      border-radius: 8px;
	      border: 1px solid rgba(218, 229, 234, 0.95);
	      background: rgba(255, 255, 255, 0.82);
	      box-shadow: 0 18px 48px rgba(26, 36, 48, 0.07);
	      overflow: hidden;
	    }

	    .pricing-card::before {
	      content: '';
	      position: absolute;
	      left: 0;
	      right: 0;
	      top: 0;
	      height: 4px;
	      background: linear-gradient(90deg, var(--domus-gold), rgba(32, 180, 134, 0.78), var(--blue));
	    }

	    .pricing-card-featured {
	      background:
	        radial-gradient(circle at 90% 0%, rgba(253, 186, 45, 0.26), transparent 35%),
	        linear-gradient(145deg, #152230 0%, #1A2430 58%, #102B32 100%);
	      border-color: rgba(222, 156, 78, 0.48);
	      color: var(--warm-ivory);
	      box-shadow:
	        0 28px 78px rgba(26, 36, 48, 0.22),
	        inset 0 0 0 1px rgba(240, 235, 227, 0.05);
	    }

	    .pricing-card-featured::before {
	      background: linear-gradient(90deg, var(--cta-gold), var(--domus-gold), rgba(32, 180, 134, 0.86));
	    }

	    .pricing-pill {
	      display: inline-flex;
	      align-items: center;
	      gap: 8px;
	      border-radius: 999px;
	      padding: 7px 11px;
	      background: rgba(253, 186, 45, 0.16);
	      color: #9B5B14;
	      font-size: 12px;
	      font-weight: 700;
	      letter-spacing: 0.01em;
	    }

	    .pricing-card-featured .pricing-pill {
	      background: rgba(253, 186, 45, 0.18);
	      color: var(--cta-gold);
	    }

	    #cta-final::before {
	      content: 'DOMUS';
	      position: absolute;
	      left: 50%;
	      top: 50%;
	      transform: translate(-50%, -50%);
	      color: rgba(240, 235, 227, 0.035);
	      font-size: clamp(92px, 20vw, 280px);
	      font-weight: 900;
	      line-height: 1;
	      letter-spacing: 0;
	      white-space: nowrap;
	      pointer-events: none;
	    }

	    .nav-bar-readable {
	      background-color: rgba(255, 255, 255, 0.92) !important;
	      backdrop-filter: blur(16px);
	      border-bottom: 1px solid rgba(218, 229, 234, 0.72);
	      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 12px 34px rgba(26, 36, 48, 0.05);
	    }

	    .nav-bar-readable .nav-link {
	      color: var(--text-primary) !important;
	    }

	    .nav-bar-readable .nav-logo {
	      color: var(--domus-gold) !important;
	    }

	    .nav-bar-readable .nav-cta {
	      background-color: var(--cta-gold) !important;
	      color: var(--text-primary) !important;
	    }

	    .nav-bar-readable.menu-open {
	      background-color: rgba(15, 26, 36, 0.96) !important;
	    }

	    .nav-bar-readable.menu-open .mobile-menu .nav-link {
	      color: rgba(240, 235, 227, 0.8) !important;
	    }

	    .nav-bar-readable.menu-open .mobile-menu .nav-link:hover {
	      color: var(--warm-ivory) !important;
	    }

	    .blog-article-shell {
	      position: relative;
	      overflow: hidden;
	      background:
	        radial-gradient(circle at 10% 7%, rgba(222, 156, 78, 0.10), transparent 25%),
	        radial-gradient(circle at 88% 18%, rgba(32, 180, 134, 0.055), transparent 24%),
	        linear-gradient(180deg, #FFFCF4 0%, #F8F2EA 36%, #FFFCF4 100%);
	      padding: 112px 0 72px;
	    }

	    .blog-article-shell::before {
	      content: '';
	      position: absolute;
	      left: 0;
	      right: 0;
	      top: 72px;
	      height: 1px;
	      background: linear-gradient(90deg, transparent, rgba(222, 156, 78, 0.34), transparent);
	    }

	    .blog-article-container {
	      position: relative;
	      z-index: 1;
	      width: min(760px, calc(100% - 32px));
	      margin: 0 auto;
	    }

	    .blog-article-header {
	      padding: 28px 0 34px;
	      border-bottom: 1px solid rgba(140, 126, 114, 0.22);
	    }

	    .blog-article-eyebrow {
	      display: inline-flex;
	      align-items: center;
	      gap: 10px;
	      color: var(--terracotta);
	      font-size: 13px;
	      font-weight: 300;
	      letter-spacing: 0.02em;
	      text-transform: uppercase;
	      margin-bottom: 18px;
	    }

	    .blog-article-eyebrow::before {
	      content: '';
	      width: 34px;
	      height: 1px;
	      background: currentColor;
	      opacity: 0.72;
	    }

	    .blog-article-title {
	      color: var(--text-primary);
	      font-size: clamp(2rem, 5vw, 3.35rem);
	      font-weight: 800;
	      line-height: 1.08;
	      letter-spacing: 0;
	      max-width: 13.5em;
	    }

	    .blog-article-description {
	      color: #4F5E70;
	      font-size: clamp(1.03rem, 2.2vw, 1.22rem);
	      font-weight: 300;
	      line-height: 1.68;
	      max-width: 660px;
	      margin-top: 18px;
	    }

	    .blog-article-meta {
	      display: flex;
	      flex-wrap: wrap;
	      align-items: center;
	      gap: 10px 14px;
	      color: #6D7785;
	      font-size: 0.9rem;
	      font-weight: 400;
	      line-height: 1.4;
	      margin-top: 22px;
	    }

	    .blog-article-meta span,
	    .blog-article-meta time {
	      display: inline-flex;
	      align-items: center;
	      gap: 8px;
	    }

	    .blog-article-meta span + time::before {
	      content: '';
	      width: 5px;
	      height: 5px;
	      border-radius: 999px;
	      background: rgba(222, 156, 78, 0.72);
	    }

	    .blog-prose {
	      color: #263545;
	      font-size: 1.0625rem;
	      font-weight: 300;
	      line-height: 1.82;
	      padding-top: 34px;
	    }

	    .blog-prose > * + * {
	      margin-top: 1.15em;
	    }

	    .blog-prose > p:first-child {
	      color: #1A2430;
	      font-size: clamp(1.13rem, 2.4vw, 1.28rem);
	      line-height: 1.7;
	    }

	    .blog-prose h2,
	    .blog-prose h3,
	    .blog-prose h4 {
	      color: var(--text-primary);
	      font-weight: 700;
	      letter-spacing: 0;
	    }

	    .blog-prose h2 {
	      font-size: clamp(1.55rem, 3.5vw, 2.1rem);
	      line-height: 1.18;
	      margin-top: 2.05em;
	      padding-top: 0.25em;
	    }

	    .blog-prose h3 {
	      font-size: clamp(1.28rem, 2.8vw, 1.55rem);
	      line-height: 1.25;
	      margin-top: 1.75em;
	    }

	    .blog-prose h4 {
	      font-size: 1.08rem;
	      line-height: 1.35;
	      margin-top: 1.55em;
	    }

	    .blog-prose h2 + *,
	    .blog-prose h3 + *,
	    .blog-prose h4 + * {
	      margin-top: 0.78em;
	    }

	    .blog-prose strong {
	      color: #172332;
	      font-weight: 700;
	    }

	    .blog-prose a {
	      color: #1268A8;
	      font-weight: 600;
	      text-decoration: underline;
	      text-decoration-color: rgba(18, 104, 168, 0.32);
	      text-decoration-thickness: 1.5px;
	      text-underline-offset: 4px;
	      transition: color 0.2s ease, text-decoration-color 0.2s ease;
	    }

	    .blog-prose a:hover {
	      color: #A7672F;
	      text-decoration-color: rgba(167, 103, 47, 0.55);
	    }

	    .blog-prose ul,
	    .blog-prose ol {
	      padding-left: 1.3rem;
	      margin-top: 0.8em;
	    }

	    .blog-prose ul {
	      list-style: disc;
	    }

	    .blog-prose ol {
	      list-style: decimal;
	    }

	    .blog-prose li {
	      padding-left: 0.25rem;
	    }

	    .blog-prose li + li {
	      margin-top: 0.52em;
	    }

	    .blog-prose li::marker {
	      color: var(--domus-gold);
	      font-weight: 700;
	    }

	    .blog-prose blockquote {
	      border-left: 3px solid var(--domus-gold);
	      color: #384758;
	      background: rgba(255, 252, 244, 0.68);
	      padding: 0.9rem 0 0.9rem 1.15rem;
	      margin: 1.55em 0;
	    }

	    .blog-prose img {
	      width: 100%;
	      border-radius: 8px;
	      border: 1px solid rgba(218, 229, 234, 0.9);
	      margin-top: 1.5em;
	      box-shadow: 0 18px 48px rgba(26, 36, 48, 0.08);
	    }

	    .blog-prose table {
	      display: block;
	      width: 100%;
	      overflow-x: auto;
	      border-collapse: collapse;
	      font-size: 0.95rem;
	      line-height: 1.55;
	      margin-top: 1.35em;
	    }

	    .blog-prose th,
	    .blog-prose td {
	      min-width: 12rem;
	      border: 1px solid rgba(218, 229, 234, 0.95);
	      padding: 0.75rem 0.85rem;
	      text-align: left;
	      vertical-align: top;
	    }

	    .blog-prose th {
	      color: var(--text-primary);
	      background: rgba(253, 186, 45, 0.12);
	      font-weight: 700;
	    }

	    .blog-prose td {
	      background: rgba(255, 255, 255, 0.48);
	    }

	    .blog-prose hr {
	      border: 0;
	      border-top: 1px solid rgba(140, 126, 114, 0.22);
	      margin: 2.25rem 0;
	    }

	    .blog-prose code {
	      color: #8A4E1B;
	      background: rgba(253, 186, 45, 0.14);
	      border: 1px solid rgba(222, 156, 78, 0.18);
	      border-radius: 6px;
	      padding: 0.1rem 0.35rem;
	      font-size: 0.9em;
	    }

	    .blog-prose pre {
	      overflow-x: auto;
	      color: var(--warm-ivory);
	      background: #142231;
	      border-radius: 8px;
	      padding: 1rem;
	      margin-top: 1.35em;
	    }

	    .blog-prose pre code {
	      color: inherit;
	      background: transparent;
	      border: 0;
	      padding: 0;
	    }

	    .blog-article-cta {
	      margin-top: 3rem;
	    }

	    @media (min-width: 1024px) {
	      .blog-article-shell {
	        padding-top: 132px;
	        padding-bottom: 88px;
	      }
	    }

	    @media (max-width: 640px) {
	      .blog-article-shell {
	        padding-top: 96px;
	        padding-bottom: 56px;
	      }

	      .blog-article-container {
	        width: min(760px, calc(100% - 28px));
	      }

	      .blog-article-header {
	        padding-top: 20px;
	        padding-bottom: 28px;
	      }

	      .blog-prose {
	        font-size: 1rem;
	        line-height: 1.78;
	        padding-top: 28px;
	      }
	    }

	    @media (max-width: 900px) {
	      .blog-index-page > div,
	      .blog-article-container {
	        width: calc(100vw - 48px) !important;
	        max-width: 294px !important;
	        margin-left: auto;
	        margin-right: auto;
	        padding-left: 0 !important;
	        padding-right: 0 !important;
	        box-sizing: border-box;
	      }

	      .blog-index-page article,
	      .blog-index-page h1,
	      .blog-index-page h2,
	      .blog-index-page p,
	      .blog-article-title,
	      .blog-article-description,
	      .blog-prose {
	        max-width: 100%;
	        overflow-wrap: break-word;
	      }
	    }

	    /* Skip rendering for off-screen sections */
	    .cv-auto {
	      content-visibility: auto;
	      contain-intrinsic-size: auto 600px;
	    }

	    @media (prefers-reduced-motion: reduce) {
	      *,
	      *::before,
	      *::after {
	        animation-duration: 0.001ms !important;
	        animation-iteration-count: 1 !important;
	        scroll-behavior: auto !important;
	        transition-duration: 0.001ms !important;
	      }
	    }

/* src/quem-somos.njk */
  .about-page {
    background: #FFFCF4;
    overflow-x: hidden;
  }

  .about-wrap {
    width: min(1200px, calc(100% - 32px));
    margin: 0 auto;
    position: relative;
    z-index: 1;
  }

  .about-hero {
    position: relative;
    overflow: hidden;
    padding: 132px 0 72px;
    background:
      radial-gradient(circle at 82% 16%, rgba(253, 186, 45, 0.18), transparent 30%),
      radial-gradient(circle at 14% 66%, rgba(32, 180, 134, 0.10), transparent 30%),
      linear-gradient(145deg, #0F1A24 0%, #1A2430 58%, #102B32 100%);
  }

  .about-hero::before {
    content: 'DOMUS';
    position: absolute;
    right: -4vw;
    bottom: -36px;
    color: rgba(240, 235, 227, 0.035);
    font-size: clamp(96px, 21vw, 280px);
    font-weight: 900;
    line-height: 0.8;
    letter-spacing: 0;
    pointer-events: none;
  }

  .about-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.72fr);
    gap: clamp(40px, 7vw, 86px);
    align-items: end;
  }

  .about-kicker {
    color: #FDBA2D;
  }

  .about-hero-title {
    color: #F0EBE3;
    font-size: clamp(40px, 7vw, 76px);
    font-weight: 900;
    line-height: 1.02;
    letter-spacing: -0.02em;
    max-width: 780px;
    text-shadow: 0 18px 54px rgba(15, 26, 36, 0.48);
  }

  .about-hero-copy {
    color: rgba(240, 235, 227, 0.78);
    font-size: clamp(17px, 2.2vw, 22px);
    font-weight: 300;
    line-height: 1.7;
    max-width: 680px;
    margin-top: 26px;
  }

  .about-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: center;
    margin-top: 34px;
  }

  .about-secondary-link {
    color: rgba(240, 235, 227, 0.72);
    font-size: 15px;
    font-weight: 600;
    transition: color 0.2s ease;
  }

  .about-secondary-link:hover {
    color: #FDBA2D;
  }

  .about-note {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(240, 235, 227, 0.14);
    border-radius: 8px;
    background:
      linear-gradient(180deg, rgba(255, 252, 244, 0.10), rgba(240, 235, 227, 0.05)),
      rgba(15, 26, 36, 0.54);
    box-shadow: 0 24px 74px rgba(0, 0, 0, 0.18);
    padding: 26px;
  }

  .about-note::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(253, 186, 45, 0.12), transparent 48%);
  }

  .about-note > * {
    position: relative;
    z-index: 1;
  }

  .about-note-label {
    color: #FDBA2D;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    margin-bottom: 18px;
  }

  .about-note h2 {
    color: #F0EBE3;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.01em;
    margin-bottom: 14px;
  }

  .about-note p {
    color: rgba(240, 235, 227, 0.72);
    font-size: 15px;
    font-weight: 300;
    line-height: 1.7;
  }

  .about-proof-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin-top: 42px;
    border: 1px solid rgba(222, 156, 78, 0.26);
    background: rgba(222, 156, 78, 0.26);
  }

  .about-proof {
    background: rgba(15, 26, 36, 0.58);
    padding: 22px;
  }

  .about-proof strong {
    display: block;
    color: #FDBA2D;
    font-size: 22px;
    line-height: 1;
    margin-bottom: 10px;
  }

  .about-proof span {
    display: block;
    color: rgba(240, 235, 227, 0.70);
    font-size: 13px;
    line-height: 1.5;
  }

  .about-section {
    padding: 72px 0;
  }

  .about-section-soft {
    background:
      radial-gradient(circle at 8% 10%, rgba(253, 186, 45, 0.11), transparent 28%),
      linear-gradient(180deg, #F5F0E8 0%, #FFFCF4 100%);
  }

  .about-section-warm {
    background:
      radial-gradient(circle at 92% 18%, rgba(196, 113, 78, 0.10), transparent 30%),
      linear-gradient(180deg, #FFFCF4 0%, #F8F1E8 100%);
  }

  .about-heading-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
    gap: clamp(32px, 6vw, 72px);
    align-items: start;
  }

  .about-section-title {
    color: #1A2430;
    font-size: clamp(30px, 5vw, 52px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -0.01em;
  }

  .about-body {
    color: #657285;
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 300;
    line-height: 1.75;
  }

  .about-body + .about-body {
    margin-top: 18px;
  }

  .about-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 42px;
  }

  .about-card {
    position: relative;
    overflow: hidden;
    min-height: 100%;
    border: 1px solid rgba(218, 229, 234, 0.96);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 18px 48px rgba(26, 36, 48, 0.07);
    padding: 26px;
  }

  .about-card::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 4px;
    background: linear-gradient(90deg, #DE9C4E, rgba(32, 180, 134, 0.78), #1677C2);
  }

  .about-icon {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    color: #9B5B14;
    border: 1px solid rgba(222, 156, 78, 0.32);
    border-radius: 8px;
    background: rgba(253, 186, 45, 0.16);
    margin-bottom: 22px;
  }

  .about-card h3,
  .about-step h3 {
    color: #1A2430;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.01em;
    margin-bottom: 12px;
  }

  .about-card p,
  .about-step p {
    color: #657285;
    font-size: 15px;
    font-weight: 300;
    line-height: 1.7;
  }

  .about-timeline {
    margin-top: 44px;
    border-top: 1px solid rgba(222, 156, 78, 0.26);
    border-bottom: 1px solid rgba(222, 156, 78, 0.26);
  }

  .about-step {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    padding: 30px 0;
    border-top: 1px solid rgba(222, 156, 78, 0.20);
  }

  .about-step:first-child {
    border-top: 0;
  }

  .about-step-index {
    color: rgba(222, 156, 78, 0.46);
    font-size: clamp(46px, 8vw, 76px);
    font-weight: 900;
    line-height: 0.9;
    letter-spacing: -0.02em;
  }

  .about-pledge {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: clamp(32px, 6vw, 72px);
    align-items: center;
    border: 1px solid rgba(218, 229, 234, 0.96);
    border-radius: 8px;
    background:
      linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(255, 252, 244, 0.96)),
      #FFFFFF;
    box-shadow: 0 22px 70px rgba(26, 36, 48, 0.09);
    padding: clamp(26px, 5vw, 48px);
  }

  .about-checklist {
    display: grid;
    gap: 16px;
  }

  .about-check {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
  }

  .about-check svg {
    color: #20B486;
    margin-top: 2px;
  }

  .about-check p {
    color: #1A2430;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
  }

  .about-check span {
    display: block;
    color: #657285;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.65;
    margin-top: 4px;
  }

  .about-cta {
    position: relative;
    overflow: hidden;
    padding: 72px 0;
    background:
      radial-gradient(circle at 18% 0%, rgba(253, 186, 45, 0.18), transparent 32%),
      linear-gradient(145deg, #152230 0%, #1A2430 58%, #102B32 100%);
  }

  .about-cta-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 32px;
    align-items: center;
  }

  .about-cta h2 {
    color: #F0EBE3;
    font-size: clamp(30px, 5vw, 52px);
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: -0.02em;
  }

  .about-cta p {
    color: rgba(240, 235, 227, 0.72);
    font-size: 18px;
    font-weight: 300;
    line-height: 1.7;
    max-width: 680px;
    margin-top: 16px;
  }

  @media (max-width: 900px) {
    .about-hero-grid,
    .about-heading-grid,
    .about-pledge,
    .about-cta-grid {
      grid-template-columns: 1fr;
    }

    .about-card-grid,
    .about-proof-grid {
      grid-template-columns: 1fr;
    }

    .about-cta-grid {
      align-items: start;
    }

    .about-wrap {
      width: calc(100vw - 48px) !important;
      max-width: 294px !important;
      box-sizing: border-box;
    }
  }

  @media (max-width: 640px) {
    .about-wrap {
      width: calc(100vw - 48px) !important;
      max-width: 294px !important;
      box-sizing: border-box;
      margin-left: auto;
      margin-right: auto;
    }

    .about-hero-grid,
    .about-heading-grid,
    .about-card-grid,
    .about-proof-grid,
    .about-pledge,
    .about-cta-grid,
    .about-note,
    .about-card,
    .about-proof {
      min-width: 0;
      max-width: 100%;
    }

    .about-hero-title {
      display: block;
      width: 100%;
      max-width: 100%;
      box-sizing: border-box;
      font-size: clamp(30px, 9vw, 36px);
      line-height: 1.08;
      overflow-wrap: break-word;
    }

    .about-hero-copy,
    .about-note p,
    .about-proof span,
    .about-card p,
    .about-step p,
    .about-body {
      max-width: 100%;
      overflow-wrap: break-word;
    }

    .about-hero {
      padding: 112px 0 56px;
    }

    .about-section,
    .about-cta {
      padding: 56px 0;
    }

    .about-note,
    .about-card {
      padding: 22px;
    }

    .about-step {
      grid-template-columns: 1fr;
      gap: 12px;
      padding: 26px 0;
    }

    .about-hero-actions {
      align-items: stretch;
      flex-direction: column;
    }

    .about-hero-actions a {
      text-align: center;
    }
  }

  @media (max-width: 900px) {
    .legal-page .legal-hero > div,
    .legal-page > div:not(.legal-hero) {
      width: calc(100vw - 48px) !important;
      max-width: 294px !important;
      margin-left: auto;
      margin-right: auto;
      padding-left: 0 !important;
      padding-right: 0 !important;
      box-sizing: border-box;
    }
  }

  @media (max-width: 420px) {
    .about-hero-grid > *,
    .about-hero-title,
    .about-hero-copy,
    .about-hero-actions,
    .about-note,
    .about-proof-grid,
    .about-heading-grid,
    .about-card-grid,
    .about-timeline,
    .about-pledge,
    .about-cta-grid {
      width: calc(100vw - 96px) !important;
      max-width: 294px !important;
      margin-left: auto;
      margin-right: auto;
      box-sizing: border-box;
    }

    .about-hero-title {
      font-size: 30px;
    }

    .about-note h2,
    .about-card h3,
    .about-step h3 {
      overflow-wrap: break-word;
    }
  }

/* src/privacidade.njk */
.legal-page {
    background:
      radial-gradient(circle at 12% 0%, rgba(253, 186, 45, 0.13), transparent 30%),
      linear-gradient(180deg, #FFFCF4 0%, #F5F0E8 48%, #FFFCF4 100%);
  }

  .legal-hero {
    border-bottom: 1px solid rgba(222, 156, 78, 0.22);
  }

  .legal-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #9B5B14;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
  }

  .legal-kicker::before {
    content: "";
    width: 44px;
    height: 1px;
    background: linear-gradient(90deg, #DE9C4E, rgba(222, 156, 78, 0));
  }

  .legal-summary {
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(218, 229, 234, 0.95);
    border-radius: 8px;
    box-shadow: 0 18px 48px rgba(26, 36, 48, 0.07);
  }

  .legal-meta-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    border: 1px solid rgba(218, 229, 234, 0.95);
    border-radius: 8px;
    background: rgba(218, 229, 234, 0.95);
  }

  .legal-meta-grid-compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .legal-meta-item {
    background: rgba(255, 252, 244, 0.92);
    padding: 16px;
  }

  .legal-meta-item span {
    display: block;
    color: #657285;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
  }

  .legal-meta-item strong {
    display: block;
    color: #1A2430;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
    margin-top: 6px;
  }

  .legal-summary a,
  .legal-content a {
    text-decoration: underline;
    text-decoration-color: rgba(22, 119, 194, 0.34);
    text-underline-offset: 3px;
  }

  .legal-summary a:hover,
  .legal-content a:hover {
    color: #0F5791;
    text-decoration-color: rgba(15, 87, 145, 0.62);
  }

  .legal-layout {
    display: grid;
    gap: 40px;
  }

  .legal-layout-compact {
    max-width: 1040px;
    margin: 0 auto;
  }

  .legal-toc {
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(218, 229, 234, 0.95);
    border-radius: 8px;
    padding: 18px;
  }

  .legal-toc a {
    display: block;
    color: #657285;
    font-size: 14px;
    line-height: 1.4;
    padding: 10px 0;
    border-top: 1px solid rgba(218, 229, 234, 0.72);
    transition: color 0.2s ease;
  }

  .legal-toc a:hover {
    color: #1A2430;
  }

  .legal-content {
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(218, 229, 234, 0.92);
    border-radius: 8px;
    padding: 24px;
  }

  .legal-content > div,
  .legal-content > section {
    padding-top: 28px;
    margin-top: 28px;
    border-top: 1px solid rgba(222, 156, 78, 0.18);
  }

  .legal-content > div:first-child,
  .legal-content > section:first-child {
    padding-top: 0;
    margin-top: 0;
    border-top: 0;
  }

  .legal-list {
    margin-top: 18px;
    margin-left: 0;
    display: grid;
    gap: 12px;
  }

  .legal-list li {
    background: rgba(255, 252, 244, 0.72);
    border: 1px solid rgba(218, 229, 234, 0.78);
    border-radius: 6px;
    padding: 12px 14px;
  }

  .legal-facts {
    display: grid;
    gap: 12px;
  }

  .legal-facts div {
    display: grid;
    gap: 4px;
    background: rgba(255, 252, 244, 0.72);
    border: 1px solid rgba(218, 229, 234, 0.78);
    border-radius: 6px;
    padding: 14px;
  }

  .legal-facts dt {
    color: #657285;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
  }

  .legal-facts dd {
    color: #1A2430;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.55;
  }

  @media (min-width: 1024px) {
    .legal-layout {
      grid-template-columns: 260px minmax(0, 1fr);
      align-items: start;
    }

    .legal-toc {
      position: sticky;
      top: 112px;
    }

    .legal-content {
      padding: 40px;
    }
  }

  @media (max-width: 640px) {
    .legal-meta-grid {
      grid-template-columns: 1fr;
    }

    .legal-content {
      padding: 18px;
    }
  }

  @media (max-width: 420px) {
    .legal-page {
      overflow-x: hidden;
    }

    .legal-page .legal-hero > div,
    .legal-page > div:not(.legal-hero) {
      width: calc(100vw - 48px) !important;
      max-width: 294px !important;
      margin-left: auto;
      margin-right: auto;
      padding-left: 0 !important;
      padding-right: 0 !important;
      box-sizing: border-box;
    }

    .legal-summary,
    .legal-toc,
    .legal-content {
      width: 100%;
      max-width: 100%;
      box-sizing: border-box;
      overflow-wrap: break-word;
    }
  }
/* CSP-safe utility classes */
.svg-sprite,
.is-hidden {
  display: none;
}

.calendar-logo-image {
  display: inline-block;
  vertical-align: middle;
  margin-right: 8px;
  border-radius: 6px;
}

.blog-cta-card {
  background: #FFFCF4;
  border: 1px solid rgba(218, 229, 234, 0.95);
  border-radius: 12px;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  box-shadow: 0 4px 24px rgba(26, 36, 48, 0.06);
}

.blog-cta-row {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

.blog-cta-icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
}

.blog-cta-icon--whatsapp {
  background: #25D366;
}

.blog-cta-icon--demo {
  background: linear-gradient(135deg, rgba(253, 186, 45, 0.18), rgba(222, 156, 78, 0.10));
  border: 1px solid rgba(222, 156, 78, 0.32);
}

.blog-cta-icon--info {
  background: linear-gradient(135deg, rgba(253, 186, 45, 0.12), rgba(222, 156, 78, 0.08));
  border: 1px solid rgba(222, 156, 78, 0.28);
}

.blog-cta-copy {
  flex: 1;
}

.blog-cta-kicker {
  margin-bottom: 0.5rem;
}

.blog-cta-title {
  font-size: 1.125rem;
  font-weight: 700;
  color: #1A2430;
  line-height: 1.3;
  margin-bottom: 0.375rem;
}

.blog-cta-text {
  font-size: 0.9375rem;
  color: #657285;
  font-weight: 300;
  line-height: 1.55;
}

.blog-cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-weight: 600;
  font-size: 0.9375rem;
  padding: 0.75rem 1.5rem;
  border-radius: 8px;
  text-decoration: none;
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  letter-spacing: 0.01em;
}

.blog-cta-button:hover {
  transform: scale(1.02);
}

.blog-cta-button--whatsapp {
  background: #25D366;
  color: #fff;
}

.blog-cta-button--whatsapp:hover {
  background: #1da851;
}

.blog-cta-button--demo {
  background: #FDBA2D;
  color: #1A2430;
}

.blog-cta-button--demo:hover {
  background: #D68C00;
}

.blog-cta-button--info {
  background: #1A2430;
  color: #F0EBE3;
}

.blog-cta-button--info:hover {
  background: #263545;
}

.blog-cta-button-icon {
  flex-shrink: 0;
}
