@import url("https://fonts.googleapis.com/css2?family=Kanit:wght@300;400;500;600;700&display=swap");

/*! tailwindcss v2.2.19 | MIT License | https://tailwindcss.com */

/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */html{-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.15;-webkit-text-size-adjust:100%}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji}hr{height:0;color:inherit}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;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}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}legend{padding:0}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}button{background-color:transparent;background-image:none}fieldset,ol,ul{margin:0;padding:0}ol,ul{list-style:none}html{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{font-family:inherit;line-height:inherit}*,:after,:before{border:0 solid}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af}input::placeholder,textarea::placeholder{color:#9ca3af}[role=button],button{cursor:pointer}:-moz-focusring{outline:auto}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:after,:before{--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-transform:translateX(var(--tw-translate-x)) translateY(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));--tw-blur:var(--tw-empty,/*!*/ /*!*/);--tw-brightness:var(--tw-empty,/*!*/ /*!*/);--tw-contrast:var(--tw-empty,/*!*/ /*!*/);--tw-grayscale:var(--tw-empty,/*!*/ /*!*/);--tw-hue-rotate:var(--tw-empty,/*!*/ /*!*/);--tw-invert:var(--tw-empty,/*!*/ /*!*/);--tw-saturate:var(--tw-empty,/*!*/ /*!*/);--tw-sepia:var(--tw-empty,/*!*/ /*!*/);--tw-drop-shadow:var(--tw-empty,/*!*/ /*!*/);--tw-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)}[data-popper-arrow],[data-popper-arrow]:before{position:absolute;width:8px;height:8px;background:inherit}[data-popper-arrow]{visibility:hidden}[data-popper-arrow]:after,[data-popper-arrow]:before{content:"";visibility:visible;transform:rotate(45deg)}[data-popper-arrow]:after{position:absolute;width:9px;height:9px;background:inherit}[role=tooltip]>[data-popper-arrow]:after,[role=tooltip]>[data-popper-arrow]:before{border-style:solid;border-color:#e4e4e7}[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]:after,[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]:before{border-bottom-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]:after,[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]:before{border-bottom-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]:after,[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]:before{border-top-width:1px;border-left-width:1px}[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]:after,[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]:before{border-top-width:1px;border-right-width:1px}[data-popover][role=tooltip][data-popper-placement^=top]>[data-popper-arrow]{bottom:-5px}[data-popover][role=tooltip][data-popper-placement^=bottom]>[data-popper-arrow]{top:-5px}[data-popover][role=tooltip][data-popper-placement^=left]>[data-popper-arrow]{right:-5px}[data-popover][role=tooltip][data-popper-placement^=right]>[data-popper-arrow]{left:-5px}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow:0 0 #0000}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,select:focus,textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#1c64f2;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#1c64f2}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}input[type=time]::-webkit-calendar-picker-indicator{background:none}select:not([size]){background-image:url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 10 6'%3e %3cpath stroke='%236B7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m1 1 4 4 4-4'/%3e %3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:.75em .75em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}:is([dir=rtl]) select:not([size]){background-position:left .75rem center;padding-right:.75rem;padding-left:0}[multiple]{background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#1c64f2;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow:0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#1c64f2;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 12'%3e %3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M1 5.917 5.724 10.5 15 1.5'/%3e %3c/svg%3e");background-repeat:no-repeat;background-size:.55em .55em;-webkit-print-color-adjust:exact;print-color-adjust:exact}[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");background-size:1em 1em}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 12'%3e %3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M0.5 6h14'/%3e %3c/svg%3e");background-color:currentColor;border-color:transparent;background-position:50%;background-repeat:no-repeat;background-size:.55em .55em;-webkit-print-color-adjust:exact;print-color-adjust:exact}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px auto inherit}input[type=file]::file-selector-button{color:#fff;background:#1f2937;border:0;font-weight:500;font-size:.875rem;cursor:pointer;padding:.625rem 1rem .625rem 2rem;margin-inline-start:-1rem;margin-inline-end:1rem}input[type=file]::file-selector-button:hover{background:#374151}:is([dir=rtl]) input[type=file]::file-selector-button{padding-right:2rem;padding-left:1rem}input[type=range]::-webkit-slider-thumb{height:1.25rem;width:1.25rem;background:#1c64f2;border-radius:9999px;border:0;appearance:none;-moz-appearance:none;-webkit-appearance:none;cursor:pointer}input[type=range]:disabled::-webkit-slider-thumb{background:#9ca3af}input[type=range]:focus::-webkit-slider-thumb{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1px;--tw-ring-color:rgb(164 202 254/var(--tw-ring-opacity))}input[type=range]::-moz-range-thumb{height:1.25rem;width:1.25rem;background:#1c64f2;border-radius:9999px;border:0;appearance:none;-moz-appearance:none;-webkit-appearance:none;cursor:pointer}input[type=range]:disabled::-moz-range-thumb{background:#9ca3af}input[type=range]::-moz-range-progress{background:#3f83f8}input[type=range]::-ms-fill-lower{background:#3f83f8}html{scroll-behavior:smooth;font-family:Kanit,system-ui,sans-serif}body{margin:0;background:var(--paper);color:var(--ink);font-weight:400;text-rendering:optimizeLegibility}*,:after,:before{box-sizing:border-box}::-moz-selection{background:var(--accent);color:#fff}::selection{background:var(--accent);color:#fff}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.fixed{position:fixed}.h-px{height:1px}.h-6{height:1.5rem}.h-5{height:1.25rem}.h-4{height:1rem}.w-full{width:100%}.w-6{width:1.5rem}.w-5{width:1.25rem}.w-4{width:1rem}.-translate-y-2{--tw-translate-y:-0.5rem;transform:var(--tw-transform)}.translate-y-0{--tw-translate-y:0px;transform:var(--tw-transform)}.resize{resize:both}.bg-red-100{--tw-bg-opacity:1;background-color:rgba(253,232,232,var(--tw-bg-opacity))}.opacity-0{opacity:0}.opacity-100{opacity:1}.filter{filter:var(--tw-filter)}.transition{transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150,.transition{transition-duration:.15s}.duration-100{transition-duration:.1s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}:root{--accent:#ed4553;--accent-dark:#b92f3b;--ink:#142a30;--muted:#637176;--paper:#fbfaf7;--surface:#fff;--surface-tint:#f5f1ec;--line:#ddd9d2;--line-soft:#ebe7e1;--radius-sm:10px;--radius-md:18px;--radius-lg:28px;--shadow-soft:0 24px 70px rgba(20,42,48,.09);--container:1120px}.site-shell{min-width:0;overflow:clip;background:var(--paper)}.skip-link{position:fixed;z-index:100;top:12px;left:12px;padding:10px 14px;border-radius:var(--radius-sm);background:var(--ink);color:#fff;transform:translateY(-150%);transition:transform .16s ease}.skip-link:focus{transform:translateY(0)}footer,section{scroll-margin-top:72px}.site-nav{position:sticky;z-index:40;top:0;width:100%;border-bottom:1px solid hsla(38,14%,85%,.82);background:hsla(45,33%,98%,.9);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.nav-inner{position:relative;display:flex;width:min(var(--container),calc(100% - 48px));min-height:72px;align-items:center;justify-content:space-between;margin:0 auto}.brand-link{display:inline-flex;align-items:center;gap:10px;font-size:.95rem;font-weight:600;letter-spacing:-.01em}.brand-logo{width:42px;height:42px;-o-object-fit:contain;object-fit:contain}.desktop-nav{display:flex;align-items:center;gap:28px}.nav-link{position:relative;cursor:pointer;color:var(--muted);font-size:.86rem;font-weight:500;transition:color .16s ease}.nav-link:after{position:absolute;right:0;bottom:-9px;left:0;height:2px;border-radius:2px;background:var(--accent);content:"";opacity:0;transform:scaleX(.5);transition:opacity .16s ease,transform .16s ease}.nav-link-active,.nav-link:hover{color:var(--ink)}.nav-link-active:after{opacity:1;transform:scaleX(1)}.mobile-nav{display:none}.menu-button{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink)}.mobile-menu-panel{position:absolute;top:62px;right:0;width:min(320px,calc(100vw - 32px));border:1px solid var(--line);border-radius:var(--radius-md);background:hsla(0,0%,100%,.98);padding:10px;box-shadow:var(--shadow-soft)}.mobile-menu-list{display:grid;gap:3px}.mobile-menu-link{cursor:pointer;border-radius:9px;padding:12px 13px;color:var(--muted);font-size:.92rem;font-weight:500}.mobile-menu-link:hover{background:var(--surface-tint);color:var(--ink)}.button-primary,.button-secondary{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:var(--radius-sm);padding:0 20px;font-size:.94rem;font-weight:500;transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease}.button-primary{background:var(--accent);color:#fff}.button-secondary{border-color:var(--line);background:transparent;color:var(--ink)}.button-primary:hover,.button-secondary:hover{transform:translateY(-2px)}.button-primary:hover{background:var(--accent-dark)}.button-secondary:hover{border-color:var(--ink)}.nav-cta{min-height:42px;padding:0 16px;font-size:.84rem}.mobile-menu-cta{width:100%;margin-top:6px}.hero-section{position:relative;background:var(--paper)}.hero-grid{display:grid;width:min(var(--container),calc(100% - 48px));min-height:640px;align-items:center;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:clamp(48px,6vw,88px);margin:0 auto;padding:70px 0 88px}.hero-copy{position:relative;z-index:2}.hero-kicker,.section-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 20px;color:var(--accent-dark);font-size:.73rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.hero-kicker:before,.section-eyebrow:before{width:30px;height:1px;background:var(--accent);content:""}.hero-title{max-width:640px;margin:0;color:var(--ink);font-size:clamp(3.65rem,5.4vw,5rem);font-weight:600;letter-spacing:-.045em;line-height:.98}.hero-title-accent{display:block;margin-top:6px;color:var(--accent);font-weight:500}.hero-lead{max-width:560px;margin:28px 0 0;color:var(--muted);font-size:1.05rem;line-height:1.85}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.hero-proof{display:grid;max-width:560px;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:42px;padding-top:20px;border-top:1px solid var(--line)}.hero-proof span,.hero-proof strong{display:block}.hero-proof strong{color:var(--accent);font-size:.72rem;font-weight:600;letter-spacing:.12em}.hero-proof span{margin-top:5px;color:var(--ink);font-size:.78rem}.hero-media{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-soft)}.hero-media-topline{display:flex;height:58px;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid var(--line-soft);color:var(--ink);font-size:.78rem;font-weight:500}.hero-media-topline span:first-child{display:inline-flex;align-items:center;gap:8px}.hero-media-topline span:first-child:before{width:7px;height:7px;border-radius:50%;background:#28aa75;content:"";box-shadow:0 0 0 4px rgba(40,170,117,.12)}.hero-image-frame{display:flex;min-height:345px;align-items:center;justify-content:center;margin:22px;border-radius:var(--radius-md);background:#fff4f2}.hero-image-frame img{width:88%;max-width:410px;max-height:315px;-o-object-fit:contain;object-fit:contain}.hero-media-caption{display:flex;flex-wrap:wrap;gap:7px;padding:0 22px 22px}.hero-media-caption span,.project-tags span{display:inline-flex;min-height:25px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:3px 9px;color:var(--muted);font-size:.68rem;font-weight:500}.section-wrap{width:min(var(--container),calc(100% - 48px));margin:0 auto;padding:96px 0}.section-heading-row{display:grid;align-items:end;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:48px;margin-bottom:44px}.section-heading{margin:0;color:var(--ink);font-size:clamp(2.45rem,4vw,3.65rem);font-weight:600;letter-spacing:-.035em;line-height:1.04}.section-heading-accent{color:var(--accent)}.section-lead{max-width:480px;margin:0;color:var(--muted);font-size:.94rem;line-height:1.8}.about-section,.feature-section,.product-section{background:var(--surface)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.product-card{display:flex;min-width:0;min-height:410px;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);transition:transform .18s ease,box-shadow .18s ease}.product-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(20,42,48,.08)}.product-card-featured{display:grid;min-height:440px;grid-column:1/-1;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);background:var(--ink)}.product-card-copy{display:flex;flex:1;flex-direction:column;justify-content:flex-end;order:2;padding:26px}.product-card-featured .product-card-copy{justify-content:center;order:1;padding:42px}.project-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.product-card-featured .project-tags span{border-color:hsla(0,0%,100%,.22);color:hsla(0,0%,100%,.68)}.product-card-media{display:flex;min-height:225px;align-items:center;justify-content:center;order:1;margin:12px 12px 0;border-radius:12px;background:var(--surface-tint);padding:18px}.product-card-featured .product-card-media{min-height:auto;order:2;margin:18px;background:#fff;padding:30px}.product-card-media img{width:100%;height:200px;-o-object-fit:contain;object-fit:contain}.product-card-featured .product-card-media img{height:330px}.product-card-title{margin:0;color:var(--ink);font-size:1.35rem;font-weight:600;letter-spacing:-.02em;line-height:1.3}.product-card-description{margin:12px 0 0;color:var(--muted);font-size:.86rem;line-height:1.75}.project-detail-link{display:inline-flex;align-items:center;align-self:flex-start;gap:6px;margin-top:16px;color:var(--accent-dark);font-size:.76rem;font-weight:600}.product-card-featured .project-detail-link{color:#ff9ca3}.product-card-featured .product-card-title{color:#fff;font-size:2rem}.product-card-featured .product-card-description{color:hsla(0,0%,100%,.68);font-size:.94rem}.lab-section{background:var(--paper)}.section-inline-cta{min-height:42px;margin-top:18px;padding:0 15px;font-size:.82rem}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.project-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);transition:transform .18s ease,border-color .18s ease}.project-card:hover{border-color:#b9b4ad;transform:translateY(-3px)}.project-card img{width:100%;height:170px;-o-object-fit:cover;object-fit:cover;background:var(--surface-tint)}.project-card-content{display:flex;min-height:154px;flex:1;flex-direction:column;padding:18px}.project-card-content .project-tags{margin-bottom:12px}.project-card-content h3{margin:0;color:var(--ink);font-size:.98rem;font-weight:600;letter-spacing:-.01em;line-height:1.35}.project-card-content p{display:-webkit-box;margin:7px 0 0;overflow:hidden;color:var(--muted);font-size:.76rem;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.feature-intro{max-width:640px;margin:-14px 0 30px;color:var(--muted);font-size:.9rem;line-height:1.75}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.feature-card{display:grid;min-height:150px;align-content:start;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);padding:20px;transition:background .16s ease}.feature-card:hover{background:var(--paper)}.feature-card-icon{display:flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid var(--line-soft);border-radius:9px;background:#fff}.feature-card-icon img{width:23px;height:23px;-o-object-fit:contain;object-fit:contain}.feature-card h3{margin:13px 0 0;color:var(--ink);font-size:.94rem;font-weight:600}.feature-card p{display:-webkit-box;margin:5px 0 0;overflow:hidden;color:var(--muted);font-size:.73rem;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.services-section{background:var(--surface-tint)}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;min-height:112px;align-items:center;grid-template-columns:58px minmax(0,1fr) 142px 100px;gap:22px;border-bottom:1px solid var(--line);transition:background .16s ease}.service-row:hover{background:hsla(0,0%,100%,.6)}.service-number{color:var(--accent);font-size:.72rem;font-weight:600;letter-spacing:.12em}.service-copy h3{margin:0;color:var(--ink);font-size:1.08rem;font-weight:600;line-height:1.35}.service-copy p{max-width:650px;margin:5px 0 0;color:var(--muted);font-size:.78rem;line-height:1.5}.service-price span,.service-price strong{display:block}.service-price span{color:var(--muted);font-size:.68rem}.service-price strong{margin-top:3px;color:var(--ink);font-size:.94rem;font-weight:600}.service-link{display:inline-flex;min-height:44px;align-items:center;justify-content:flex-end;gap:8px;color:var(--ink);font-size:.78rem;font-weight:500}.service-link svg{transition:transform .16s ease}.service-link:hover svg{transform:translateX(4px)}.about-section{background:var(--ink);color:#fff}.about-section .section-wrap{padding-bottom:34px}.contact-panel{display:grid;align-items:end;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:80px;padding-bottom:70px;border-bottom:1px solid hsla(0,0%,100%,.16)}.contact-panel .section-eyebrow{color:#ff8b94}.contact-intro h2{margin:0;color:#fff;font-size:clamp(3rem,5.4vw,5rem);font-weight:500;letter-spacing:-.045em;line-height:1.04}.contact-cta{margin-top:30px}.contact-details>p{margin:0 0 30px;color:hsla(0,0%,100%,.68);font-size:.94rem;line-height:1.8}.contact-details dl{margin:0}.contact-message-builder{margin-top:34px;padding-top:26px;border-top:1px solid hsla(0,0%,100%,.14)}.contact-message-heading h3{margin:0;color:#fff;font-size:1rem;font-weight:500}.contact-message-heading p,.contact-message-hint{margin:6px 0 0;color:hsla(0,0%,100%,.58);font-size:.76rem;line-height:1.6}.contact-message-label{display:block;margin:18px 0 7px;color:#ff8b94;font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.contact-message-select,.contact-message-textarea{width:100%;border:1px solid hsla(0,0%,100%,.2);border-radius:9px;background:hsla(0,0%,100%,.08);color:#fff;font:inherit;font-size:.8rem}.contact-message-select{min-height:44px;padding:0 12px}.contact-message-select option{color:var(--ink)}.contact-message-textarea{min-height:106px;resize:vertical;padding:11px 12px;line-height:1.6}.contact-message-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.contact-message-button{min-height:44px;padding:0 14px;font-size:.78rem}.contact-message-actions .button-secondary{border-color:hsla(0,0%,100%,.25);color:#fff}.contact-message-actions .button-secondary:hover{border-color:#fff}.contact-message-hint{margin-top:10px;font-size:.7rem}.contact-details dl div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:20px;padding:13px 0;border-top:1px solid hsla(0,0%,100%,.14)}.contact-details dt{color:#ff8b94;font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.contact-details dd{margin:0;color:hsla(0,0%,100%,.78);font-size:.82rem}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:80px;padding:58px 0}.about-copy h2{margin:0 0 22px;color:#fff;font-size:1.5rem;font-weight:500}.about-copy p{margin:0 0 13px;color:hsla(0,0%,100%,.6);font-size:.82rem;line-height:1.75}.about-copy strong{color:hsla(0,0%,100%,.88);font-weight:500}.about-links{display:flex;flex-direction:column}.about-link{display:flex;min-height:52px;align-items:center;justify-content:space-between;border-bottom:1px solid hsla(0,0%,100%,.16);color:hsla(0,0%,100%,.78);font-size:.82rem;transition:color .16s ease}.about-link:first-child{border-top:1px solid hsla(0,0%,100%,.16)}.about-link:hover{color:#fff}.site-footer-note{display:flex;align-items:center;justify-content:space-between;padding-top:25px;border-top:1px solid hsla(0,0%,100%,.16);color:hsla(0,0%,100%,.5);font-size:.72rem}.footer-brand{display:inline-flex;align-items:center;gap:9px;color:hsla(0,0%,100%,.82);font-size:.82rem;font-weight:500}.footer-brand img{width:34px;height:34px;border-radius:7px;-o-object-fit:contain;object-fit:contain;background:#fff}@media (max-width:1023px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(340px,.82fr);gap:36px}.hero-title{font-size:3.65rem}.hero-image-frame{min-height:300px}.feature-grid,.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-row{grid-template-columns:42px minmax(0,1fr) 120px 82px;gap:16px}}@media (max-width:820px){.desktop-nav{display:none}.mobile-nav{display:block}.hero-grid{grid-template-columns:1fr;gap:46px;padding:70px 0 76px}.hero-copy,.hero-media{max-width:650px}.hero-media{width:100%}.hero-image-frame{min-height:360px}.section-heading-row{grid-template-columns:1fr;gap:20px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-card-featured{grid-template-columns:1fr 1fr}.product-card:not(.product-card-featured):last-child{grid-column:span 2}.feature-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid,.contact-panel{grid-template-columns:1fr;gap:44px}}@media (max-width:640px){.hero-grid,.nav-inner,.section-wrap{width:min(100% - 32px,560px)}.nav-inner{min-height:66px}.brand-logo{width:38px;height:38px}.brand-name{font-size:.9rem}.mobile-menu-panel{top:57px}.hero-grid{gap:34px;padding:54px 0 64px}.hero-kicker,.section-eyebrow{margin-bottom:16px}.hero-title{font-size:clamp(2.9rem,14vw,3.65rem)}.hero-lead{margin-top:22px;font-size:.94rem;line-height:1.75}.hero-actions{display:grid;grid-template-columns:1fr;margin-top:26px}.button-primary,.button-secondary{width:100%}.nav-cta{width:auto}.hero-proof{gap:10px;margin-top:32px}.hero-proof span{font-size:.7rem;line-height:1.45}.hero-media{border-radius:20px}.hero-media-topline{height:52px;padding:0 16px}.hero-image-frame{min-height:250px;margin:14px}.hero-media-caption{padding:0 14px 14px}.section-wrap{padding:72px 0}.section-heading-row{margin-bottom:30px}.section-heading{font-size:2.45rem}.product-grid{grid-template-columns:1fr}.product-card,.product-card-featured,.product-card:not(.product-card-featured):last-child{display:flex;min-height:0;grid-column:auto}.product-card-featured .product-card-media,.product-card-media{min-height:210px;order:1;margin:10px 10px 0;padding:18px}.product-card-featured .product-card-media img,.product-card-media img{height:190px}.product-card-copy,.product-card-featured .product-card-copy{order:2;padding:22px}.product-card-featured .product-card-title{font-size:1.45rem}.project-grid{grid-template-columns:1fr}.project-card{min-height:128px;flex-direction:row}.project-card img{width:118px;height:auto;min-height:128px;flex:0 0 118px}.project-card-content{min-width:0;min-height:0;padding:14px}.project-card-content .project-tags{margin-bottom:8px}.project-card-content .project-tags span:nth-child(n+2){display:none}.feature-intro{margin-top:-8px}.feature-card{min-height:126px;padding:15px}.feature-card p{-webkit-line-clamp:1}.service-row{min-height:0;grid-template-columns:34px minmax(0,1fr) auto;gap:13px;padding:20px 0}.service-copy{grid-column:2/-1}.service-price{grid-column:2}.service-link{grid-column:3}.service-link span{display:none}.about-section .section-wrap{padding-top:72px}.contact-panel{gap:38px;padding-bottom:52px}.contact-intro h2{font-size:2.9rem}.about-grid{gap:32px;padding:46px 0}.site-footer-note{align-items:flex-start;flex-direction:column;gap:14px}}@media (max-width:390px){.feature-grid{grid-template-columns:1fr 1fr}.feature-card p{display:none}.feature-card{min-height:100px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}