@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){animation:marching-ants 1s;background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;animation-play-state:running;animation-timing-function:linear;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media(pointer:coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}.admin-root{min-height:100vh;background:#f5f5f5;font-family:system-ui,-apple-system,sans-serif;color:#111;font-size:.95rem}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 24px;height:56px;background:#fff;border-bottom:1px solid #e5e5e5;position:sticky;top:0;z-index:10}.admin-header-actions{display:flex;align-items:center;gap:8px}.admin-logo{font-size:.9rem;font-weight:700;color:#111;text-decoration:none;letter-spacing:-.01em}.admin-main{max-width:860px;margin:0 auto;padding:32px 24px 80px}.admin-login-wrap{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 56px);padding:32px 16px}.admin-login-card{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:36px;width:100%;max-width:380px;box-shadow:0 4px 24px #0000000f}.admin-login-title{font-size:1.5rem;font-weight:700;margin:0 0 4px}.admin-login-form{display:flex;flex-direction:column;gap:12px;margin-top:20px}.admin-dashboard{display:flex;flex-direction:column;gap:24px}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-page-title{font-size:1.4rem;font-weight:700;margin:0}.admin-loading{color:#888;padding:48px 0;text-align:center}.admin-empty{padding:48px 0;text-align:center}.admin-project-list{display:flex;flex-direction:column;gap:12px}.admin-project-card{display:grid;grid-template-columns:120px 1fr auto;gap:16px;align-items:start;background:#fff;border:1px solid #e5e5e5;border-radius:10px;padding:16px}@media(max-width:600px){.admin-project-card{grid-template-columns:80px 1fr auto;gap:12px}}.admin-project-thumb{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:6px;background:#f0f0f0}.admin-project-thumb-empty{aspect-ratio:4 / 3;background:#f0f0f0;border-radius:6px}.admin-project-info{display:flex;flex-direction:column;gap:4px;min-width:0}.admin-project-eyebrow{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.05em}.admin-project-title{font-size:.95rem;font-weight:700;line-height:1.3}.admin-project-body{font-size:.84rem;color:#555;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.admin-project-bullets{list-style:disc;padding-left:16px;margin:0;font-size:.82rem;color:#555;display:flex;flex-direction:column;gap:2px}.admin-image-count{font-size:.78rem;color:#aaa;margin-top:4px}.admin-project-actions{display:flex;flex-direction:column;gap:6px;align-items:flex-end;flex-shrink:0}.admin-order-btns{display:flex;gap:4px}.admin-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:7px;font-size:.875rem;font-weight:600;cursor:pointer;border:1px solid transparent;white-space:nowrap;transition:background .15s,border-color .15s,opacity .15s;line-height:1}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-btn-primary{background:#111;color:#fff;border-color:#111}.admin-btn-primary:hover:not(:disabled){background:#333;border-color:#333}.admin-btn-ghost{background:transparent;color:#555;border-color:#ddd}.admin-btn-ghost:hover:not(:disabled){background:#f5f5f5;border-color:#ccc}.admin-btn-danger{background:#dc2626;color:#fff;border-color:#dc2626}.admin-btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.admin-btn-sm{padding:5px 11px;font-size:.8rem}.admin-btn-full{width:100%}.admin-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:1px solid #ddd;background:transparent;color:#555;font-size:.85rem;cursor:pointer;transition:background .15s}.admin-icon-btn:hover:not(:disabled){background:#f5f5f5}.admin-icon-btn:disabled{opacity:.3;cursor:not-allowed}.admin-icon-btn-danger{color:#dc2626;border-color:#fca5a5}.admin-icon-btn-danger:hover:not(:disabled){background:#fef2f2}.admin-field{display:flex;flex-direction:column;gap:6px}.admin-field label{font-size:.82rem;font-weight:600;color:#444}.admin-required{color:#dc2626}.admin-field input,.admin-field textarea,.admin-login-form input{padding:9px 12px;border:1px solid #ddd;border-radius:7px;font-size:.9rem;font-family:inherit;background:#fff;color:#111;width:100%;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.admin-field input:focus,.admin-field textarea:focus,.admin-login-form input:focus{outline:none;border-color:#111;box-shadow:0 0 0 2px #00000014}.admin-field textarea{resize:vertical;min-height:80px}.admin-bullets{display:flex;flex-direction:column;gap:8px}.admin-bullet-row{display:flex;gap:8px;align-items:center}.admin-bullet-row input{flex:1}.admin-no-images{font-size:.85rem;margin:0 0 8px}.admin-image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.admin-image-card{position:relative;border-radius:8px;overflow:hidden;border:1px solid #e5e5e5;background:#f5f5f5;aspect-ratio:4 / 3}.admin-image-card img{width:100%;height:100%;object-fit:cover;display:block}.admin-image-card-pending{border-color:#fbbf24;box-shadow:0 0 0 2px #fbbf2440}.admin-image-remove{position:absolute;top:5px;right:5px;width:22px;height:22px;border-radius:50%;background:#000000a6;color:#fff;border:none;cursor:pointer;font-size:.7rem;display:flex;align-items:center;justify-content:center;line-height:1;transition:background .15s}.admin-image-remove:hover{background:#dc2626d9}.admin-image-pending-badge{position:absolute;bottom:5px;left:5px;background:#fbbf24;color:#78350f;font-size:.65rem;font-weight:700;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.04em}.admin-image-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;aspect-ratio:4 / 3;border:2px dashed #ddd;border-radius:8px;background:transparent;cursor:pointer;color:#999;font-size:.8rem;transition:border-color .15s,color .15s}.admin-image-add:hover{border-color:#aaa;color:#555}.admin-image-add-icon{font-size:1.5rem;line-height:1}.admin-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.admin-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px;z-index:100;overflow-x:hidden;overflow-y:auto}.admin-modal-backdrop-top{z-index:200}.admin-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;width:100%;max-width:580px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden}.admin-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 24px 16px;border-bottom:1px solid #f0f0f0;flex-shrink:0}.admin-modal-header h2{font-size:1.1rem;font-weight:700;margin:0}.admin-modal-close{background:none;border:none;cursor:pointer;color:#888;font-size:1rem;padding:2px 4px;line-height:1;transition:color .15s;flex-shrink:0}.admin-modal-close:hover{color:#111}.admin-modal-body{padding:20px 24px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:16px}.admin-modal-footer{padding:14px 24px;border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;gap:8px;flex-shrink:0}.admin-project-modal{max-width:640px}.admin-confirm-modal{max-width:400px}.admin-confirm-modal .admin-modal-body p{margin:0;color:#555;font-size:.9rem;line-height:1.5}.admin-crop-modal{max-width:760px}.admin-crop-hint{margin:4px 0 0;font-size:.82rem}.admin-crop-container{padding:16px 24px;overflow:auto;flex:1;display:flex;align-items:center;justify-content:center;background:#1a1a1a}.admin-crop-image{max-height:60vh;max-width:100%;display:block}.admin-muted{color:#888;font-size:.85rem;margin:0}.admin-error{background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;padding:10px 14px;border-radius:7px;font-size:.85rem}.admin-error-banner{margin-bottom:8px}.admin-success{background:#f0fdf4;border:1px solid #86efac;color:#15803d;padding:10px 14px;border-radius:7px;font-size:.85rem}.admin-settings-modal{max-width:420px}.admin-settings-modal .admin-modal-body p{margin:0;color:#555;font-size:.9rem}.admin-field-divider{padding-top:16px;border-top:1px solid #f0f0f0;margin-top:4px}/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.start{inset-inline-start:var(--spacing)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.hidden{display:none}}:root{--background:#f7f7f7;--foreground:#181818;--primary:#b98422;--primary-foreground:#0b0b0b;--secondary:#eee;--secondary-foreground:#181818;--muted-bg:#eee;--destructive:#9f2b2b;--destructive-foreground:#fff;--ink:#181818;--ink-strong:#050505;--muted:#666;--line:#dedede;--paper:#f7f7f7;--surface:#fff;--surface-warm:#eee;--navy:#050505;--navy-soft:#2b2b2b;--gold:#b98422;--gold-dark:#7a5318;--safety:#d9a441;--shadow:0 22px 60px #00000024;--radius:18px;--nav-h:68px;--transition:.18s ease}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Manrope,sans-serif;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{list-style:none}.container{width:min(1160px,100% - 40px);margin-inline:auto}.section{padding:104px 0}h1,h2,h3{color:var(--ink-strong);line-height:1.06}h1,h2{letter-spacing:0;text-transform:none;font-family:Manrope,sans-serif;font-weight:800}h1{max-width:780px;font-size:clamp(2.65rem,5.2vw,4.6rem)}h2{font-size:clamp(2rem,3.6vw,3.4rem)}h3{font-size:1.05rem;font-weight:800}.eyebrow{color:var(--gold-dark);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:10px;font-size:.78rem;font-weight:800;display:inline-flex}.eyebrow:before{content:"";background:var(--safety);width:34px;height:3px}.btn{min-height:50px;transition:transform var(--transition),background var(--transition),color var(--transition),border-color var(--transition);border-radius:999px;justify-content:center;align-items:center;padding:0 24px;font-size:.92rem;font-weight:800;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--gold);color:#0b0b0b;box-shadow:0 12px 30px #b9842233}.btn-primary:hover{background:var(--safety)}.btn-secondary{border:1px solid var(--line);color:var(--navy);background:#fff}.btn-small{background:var(--navy);color:#fff;min-height:42px;padding-inline:18px}.text-link{color:var(--gold-dark);border-bottom:2px solid var(--gold);margin-top:26px;font-weight:800;display:inline-flex}.site-header{z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f7f7eb;border-bottom:1px solid #dededee6;position:sticky;top:0}.site-header.scrolled{box-shadow:0 12px 30px #00000014}.nav-inner{min-height:var(--nav-h);justify-content:space-between;align-items:center;gap:26px;display:flex}.brand img{width:138px;height:auto}.nav-links{color:var(--navy);align-items:center;gap:30px;font-size:.92rem;font-weight:800;display:flex}.nav-links a:not(.btn){position:relative}.nav-links a:not(.btn):after{content:"";background:var(--gold);transform-origin:0;height:2px;transition:transform var(--transition);position:absolute;bottom:-8px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover:after{transform:scaleX(1)}.nav-toggle{border:1px solid var(--line);width:44px;height:44px;color:var(--ink);cursor:pointer;background:#fff;border-radius:12px;justify-content:center;align-items:center;padding:0;display:none;position:relative}.nav-toggle svg{stroke-width:2px;width:22px;height:22px;transition:opacity .18s,transform .22s;display:block;position:absolute}.nav-toggle-close{opacity:0;transform:rotate(-90deg)scale(.7)}.nav-toggle[aria-expanded=true] .nav-toggle-menu{opacity:0;transform:rotate(90deg)scale(.7)}.nav-toggle[aria-expanded=true] .nav-toggle-close{opacity:1;transform:rotate(0)scale(1)}.nav-mobile{background:var(--paper);border-top:1px solid var(--line);flex-direction:column;gap:2px;padding:0 20px 20px;display:none}.nav-mobile a{border-bottom:1px solid var(--line);padding:13px 0;font-weight:800}.nav-mobile.open{display:flex}.hero{--hero-x:72%;--hero-y:34%;--hero-hover:0;background:#f7f7f7;min-height:650px;padding:78px 0 126px;position:relative;overflow:hidden}.hero:before{content:"";filter:blur(3px)saturate(.98)contrast(1.04);opacity:.78;pointer-events:none;background:url(/assets/home/hero-shader.webp) 50%/cover;position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;transform:scale(1.015)}.hero:after{content:"";-webkit-backdrop-filter:blur();backdrop-filter:blur();pointer-events:none;background-color:#0000;background-image:linear-gradient(#0000 68%,#f7f7f7b8 86%,#f7f7f7fa),linear-gradient(90deg,#f7f7f7f5,#f7f7f7e0 36%,#f7f7f75c,#00000038),radial-gradient(circle at 72% 20%,#ffffff85,#0000 16%),radial-gradient(circle at 68% 76%,#d9a4413d,#0000 26%),linear-gradient(90deg,#fff3 1px,#0000 1px),linear-gradient(0deg,#ffffff24 1px,#0000 1px);background-position:0 0,0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto,36px 36px,36px 36px;background-attachment:scroll,scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box,border-box;position:absolute;top:0;right:0;bottom:0;left:0}.hero-grid-highlight{z-index:1;-webkit-mask-image:radial-gradient(circle 170px at var(--hero-x) var(--hero-y),black 0%,#000000bf 42%,transparent 76%);mask-image:radial-gradient(circle 170px at var(--hero-x) var(--hero-y),black 0%,#000000bf 42%,transparent 76%);opacity:var(--hero-hover);pointer-events:none;background:linear-gradient(90deg,#ffffffa3 1px,#0000 1px) 0 0/36px 36px,linear-gradient(0deg,#ffffff7a 1px,#0000 1px) 0 0/36px 36px;transition:opacity .16s;position:absolute;top:0;right:0;bottom:0;left:0}.hero-grid{z-index:2;grid-template-columns:minmax(0,680px) 1fr;align-items:center;min-height:486px;display:grid;position:relative}.hero-copy{padding:18px 0 28px}.hero-copy h1{max-width:640px;margin-top:12px;font-size:clamp(2.5rem,4.7vw,4.2rem);line-height:1.04}.hero-h1-sub{color:var(--muted);letter-spacing:-.01em;margin-top:6px;font-size:.72em;font-weight:700;display:block}.hero-lead{max-width:640px;color:var(--muted);margin-top:20px;font-size:1.12rem}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:28px;display:flex}.trust-strip{z-index:3;color:#fff;background:0 0;margin-top:-54px;padding:0 0 22px;position:relative}.trust-strip:before{content:"";-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;background:linear-gradient(#f7f7f700,#f7f7f7b8);height:138px;position:absolute;inset:-84px 0 auto;-webkit-mask-image:linear-gradient(#0000 0%,#000 46%,#0000 100%);mask-image:linear-gradient(#0000,#000 46%,#0000)}.trust-grid{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#050505f5;border:1px solid #ffffff1f;border-radius:30px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:relative;overflow:hidden;box-shadow:0 22px 60px #00000038}.trust-grid div{color:#ffffffe6;letter-spacing:0;border-left:1px solid #ffffff21;align-items:center;gap:12px;padding:24px 22px;font-size:.88rem;font-weight:900;display:flex}.trust-grid svg{width:22px;height:22px;color:var(--safety);fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;flex:none}.trust-grid span{min-width:0;line-height:1.25}.trust-grid div:last-child{border-right:0}.trust-grid div:first-child{border-left:0}.section-kicker{grid-template-columns:.9fr 1fr;align-items:end;gap:16px 48px;margin-bottom:44px;display:grid}.section-kicker h2,.section-kicker strong{grid-column:1/-1}.section-kicker strong,.process-header strong,.projects-preview-wrap strong,.why-copy strong{color:var(--ink-strong);font-size:clamp(1.15rem,1.8vw,1.55rem);font-weight:800;line-height:1.25;display:block}.section-kicker p{max-width:540px;color:var(--muted);font-size:1.02rem}.services{background:var(--surface)}.services-grid{border:1px solid var(--line);border-radius:26px;grid-template-columns:repeat(6,minmax(0,1fr));display:grid;overflow:hidden}.service-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:230px;transition:background var(--transition),transform var(--transition);background:#fff;grid-column:span 2;padding:34px}.service-card:nth-child(3){border-right:0}.service-card:nth-child(4){grid-column:1/4}.service-card:nth-child(5){border-right:0;grid-column:4/7}.service-card:nth-child(n+4){border-bottom:0}.service-card:hover{background:#f1f1f1;transform:translateY(-2px)}.service-number{color:var(--gold-dark);margin-bottom:42px;font-family:Barlow Condensed,sans-serif;font-size:1.6rem;font-weight:700;display:inline-flex}.service-icon{width:46px;height:46px;color:var(--gold-dark);background:#f4ead7;border-radius:12px;place-items:center;margin-bottom:34px;display:inline-grid}.service-icon svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:25px;height:25px}.service-card h3{letter-spacing:0;margin-bottom:12px}.service-card p{color:var(--muted);font-size:.94rem}.section-divider{background:linear-gradient(180deg,var(--surface) 0%,var(--paper) 100%);padding:18px 0}.section-divider span{background:linear-gradient(90deg,#0000,#05050533,#0000);width:min(1160px,100% - 40px);height:1px;margin-inline:auto;display:block}.section-cta{justify-content:center;margin-top:34px;display:flex}.projects,.projects-page,.projects-preview{background:var(--surface)}.projects-preview-wrap{border:1px solid var(--line);background:#fff;border-radius:24px;grid-template-columns:minmax(0,1fr) minmax(360px,.55fr);align-items:center;gap:34px;padding:42px;display:grid;box-shadow:0 14px 38px #0000000f}.projects-preview-wrap h2{max-width:760px;margin-top:14px}.projects-preview-wrap strong{margin-top:12px}.projects-preview-wrap p{max-width:620px;color:var(--muted);margin-top:12px}.projects-preview-media{justify-items:start;gap:16px;display:grid}.projects-preview-media img{aspect-ratio:1.55;object-fit:cover;border-radius:16px;width:100%}.project-summary{border:1px solid var(--line);background:#fff;border-radius:20px;padding:30px;box-shadow:0 14px 38px #0000000f}.project-summary span,.project-tile span{color:var(--gold-dark);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;font-size:.72rem;font-weight:900;display:block}.project-summary strong{color:var(--ink-strong);font-size:1.18rem;line-height:1.3;display:block}.project-type-list{gap:10px;display:grid}.project-type-list li{border:1px solid var(--line);background:var(--paper);color:var(--ink-strong);border-radius:10px;padding:12px 12px 12px 34px;font-weight:800;position:relative}.project-type-list li:before{content:"";background:var(--gold);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.project-list{gap:34px;display:grid}.project-work-layout{grid-template-columns:minmax(0,1fr) minmax(250px,.28fr);align-items:start;gap:28px;display:grid}.project-feature{border:1px solid var(--line);background:#fff;border-radius:24px;grid-template-columns:minmax(0,1.04fr) minmax(320px,.96fr);align-items:center;gap:34px;padding:28px;display:grid;box-shadow:0 14px 38px #0000000f}.project-feature img,.project-tile img{object-fit:cover;border-radius:14px;width:100%}.project-feature img{aspect-ratio:1.45}.project-feature h2{margin-top:16px}.project-feature p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:18px;display:-webkit-box;overflow:hidden}.project-list-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.project-tile{border:1px solid var(--line);background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 14px 38px #0000000f}.project-tile img{aspect-ratio:1.25;border-radius:0}.project-tile div{padding:24px}.project-tile h3{letter-spacing:0;margin-bottom:10px;font-weight:900}.project-tile p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.94rem;display:-webkit-box;overflow:hidden}.sectors{background:var(--surface-warm)}.sector-panel{grid-template-columns:1.08fr .92fr;align-items:center;gap:54px;margin-bottom:64px;display:grid}.sector-panel:last-child{margin-bottom:0}.sector-panel-reverse .sector-image{order:2}.sector-image img{aspect-ratio:1.36;object-fit:cover;width:100%;box-shadow:var(--shadow);border-radius:26px}.sector-copy{padding:20px 0}.sector-copy h2{margin-top:16px}.sector-copy p{color:var(--muted);margin-top:20px;font-size:1.02rem}.check-list{gap:13px;margin-top:26px;display:grid}.check-list li{color:var(--navy);padding-left:32px;font-weight:800;position:relative}.check-list li:before{content:"";background:var(--gold);border-radius:50%;width:17px;height:17px;position:absolute;top:.36em;left:0;box-shadow:inset 0 0 0 5px #eee}.why-us{background:var(--paper)}.why-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:54px;display:grid}.why-media img{aspect-ratio:1.32;object-fit:cover;width:100%;box-shadow:var(--shadow);border-radius:22px}.why-copy{max-width:620px}.why-copy p{color:var(--muted);margin-top:14px;font-size:1.02rem}.why-copy strong{margin-top:12px}.why-points{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.why-points div{border:1px solid var(--line);background:#fff;border-radius:16px;gap:8px;padding:18px;display:grid}.why-points strong{color:var(--ink-strong);font-size:.96rem}.why-points span{color:var(--muted);font-size:.9rem}.pillars-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.pillar{border:1px solid var(--line);background:#fff;border-radius:22px;min-height:190px;padding:30px;box-shadow:0 14px 38px #0000000f}.pillar h3{color:var(--navy);margin-bottom:12px}.pillar p{color:var(--muted);font-size:.94rem}.process-section,.process-page-section{background:var(--surface)}.process-header{grid-template-columns:minmax(0,.9fr) minmax(320px,.6fr);align-items:end;gap:34px;display:grid}.process-header strong{margin-top:12px}.process-header p{color:var(--muted);font-size:1.02rem}.process-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:34px;display:grid}.compact-process-steps{gap:12px;margin-top:28px}.process-card{border:1px solid var(--line);background:#fff;border-radius:16px;gap:12px;min-height:210px;padding:20px;display:grid;box-shadow:0 14px 38px #0000000f}.process-card-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.process-number{color:var(--gold-dark);letter-spacing:.12em;font-size:.78rem;font-weight:900}.process-icon{border:1px solid var(--line);background:var(--paper);width:42px;height:42px;color:var(--gold-dark);border-radius:12px;place-items:center;display:inline-grid}.process-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.process-card h3{color:var(--ink-strong);margin-top:2px}.process-card p{color:var(--muted);font-size:.94rem}.contact{background:linear-gradient(135deg,#050505f5,#2b2b2bf2),var(--navy);color:#fff}.contact h2{color:#fff}.contact .eyebrow{color:var(--safety)}.contact-wrap{grid-template-columns:1fr minmax(360px,.72fr);align-items:center;gap:54px;display:grid}.contact-copy p{color:#ffffffbd;max-width:650px;margin-top:22px;font-size:1.05rem}.contact-card{color:var(--ink);background:#fff;border-radius:24px;padding:34px;box-shadow:0 24px 64px #00000038}.contact-row{border-bottom:1px solid var(--line);gap:7px;padding:18px 0;display:grid}.contact-row:first-child{padding-top:0}.contact-row span{color:var(--muted);letter-spacing:.04em;text-transform:none;font-size:.78rem;font-weight:900}.contact-row a{color:var(--navy);overflow-wrap:anywhere;font-size:1.08rem;font-weight:900}.contact-button{width:100%;margin-top:26px}.contact-cta{background:linear-gradient(135deg,#050505f5,#2b2b2bf2),var(--navy);color:#fff}.contact-cta h2{color:#fff}.contact-cta .eyebrow{color:var(--safety)}.contact-cta-wrap{justify-content:space-between;align-items:center;gap:34px;display:flex}.contact-cta-wrap p{color:#ffffffbd;max-width:620px;margin-top:16px;font-size:1.04rem}.page-hero{background:linear-gradient(90deg,#f7f7f7fa,#f7f7f7e6 52%,#e8e8e8c2),radial-gradient(circle at 12% 18%,#d9a44129,#0000 30%);padding:72px 0}.services-hero .eyebrow{font-size:.86rem}.page-hero-grid{grid-template-columns:minmax(0,1fr) minmax(340px,.48fr);align-items:center;gap:54px;display:grid}.page-hero h1{margin-top:12px}.page-hero p{max-width:680px;color:var(--muted);margin-top:20px;font-size:1.1rem}.contact-page-section{background:var(--surface)}.contact-page-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.45fr);align-items:start;gap:42px;display:grid}.enquiry-form{border:1px solid var(--line);background:#fff;border-radius:24px;gap:20px;padding:34px;display:grid;box-shadow:0 14px 38px #0000000f}.form-status{color:var(--ink-strong);background:#d9a44124;border:1px solid #b9842257;border-radius:12px;margin-bottom:18px;padding:16px 18px;font-weight:800}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.enquiry-form label{gap:8px;display:grid}.enquiry-form label span,.form-label{color:var(--ink-strong);letter-spacing:.04em;text-transform:none;font-size:.78rem;font-weight:900}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fff;border-radius:10px;padding:12px 14px}.enquiry-form textarea{resize:vertical}.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--gold);outline:2px solid #b9842242}.enquiry-form button{cursor:pointer;border:0;justify-self:start}.file-upload-field{gap:8px;display:grid}.file-upload input[type=file]{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.file-upload-dropzone{background:var(--paper);cursor:pointer;min-height:150px;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition);border:1px dashed #b9b9b9;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;padding:22px;display:grid}.file-upload-dropzone:hover,.file-upload-dropzone:focus-visible,.file-upload.is-dragging .file-upload-dropzone,.file-upload-dropzone.is-dragging{border-color:var(--gold);background:#d9a4411a;outline:0;box-shadow:0 0 0 4px #b984221f}.file-upload-icon{width:54px;height:54px;color:var(--gold-dark);border:1px solid var(--line);background:#fff;border-radius:16px;place-items:center;display:inline-grid}.file-upload-icon svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:28px;height:28px}.file-preview-placeholder{aspect-ratio:1.2;background:var(--paper);width:100%;color:var(--muted);place-items:center;display:grid}.file-preview-placeholder svg,.file-preview-meta svg{width:14px;height:14px}.file-upload-dropzone strong{color:var(--ink-strong);font-size:1rem;display:block}.file-upload-dropzone p{color:var(--muted);margin-top:4px}.file-upload-dropzone small{color:var(--muted);margin-top:6px;font-weight:700;display:block}.file-upload-errors{color:#9f2b2b;font-size:.86rem;font-weight:700}.file-upload-errors ul{gap:4px;margin-top:8px;display:grid}.file-upload-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.file-preview-item{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.file-preview-item img{aspect-ratio:1.2;object-fit:cover;width:100%}.file-preview-meta{gap:4px;padding:10px;display:grid}.file-preview-meta span{color:var(--ink-strong);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:800;overflow:hidden}.file-preview-meta small{color:var(--muted);font-size:.76rem}.file-preview-meta button{color:var(--gold-dark);cursor:pointer;font:inherit;background:0 0;border:0;justify-self:start;align-items:center;gap:5px;padding:0;font-size:.78rem;font-weight:900;display:inline-flex}.contact-aside{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:34px;position:sticky;top:150px}.contact-aside h2{margin-top:16px;font-size:clamp(1.65rem,2.3vw,2.2rem);line-height:1.15}.contact-aside p{color:var(--muted);margin:20px 0 26px}.footer{color:var(--muted);border-top:1px solid var(--line);background:#fff}.footer-inner{justify-content:space-between;align-items:center;gap:34px;min-height:150px;padding:38px 0;display:flex}.footer-brand img{width:150px}.footer-summary{gap:6px;max-width:420px;display:grid}.footer-summary strong{color:var(--gold-dark);font-size:.94rem;font-weight:900}.footer-summary p{max-width:420px;color:var(--muted);font-size:.92rem}.footer-links{color:var(--ink-strong);gap:18px;font-size:.9rem;font-weight:800;display:flex}.footer-bottom{border-top:1px solid var(--line);text-align:center;padding:18px 20px;font-size:.82rem}.footer-credit{text-align:center;opacity:.7;padding:0 20px 18px;font-size:.76rem}.footer-credit a{color:inherit;text-decoration:none}.footer-credit a:hover{text-decoration:underline}.reveal{opacity:0;transition:opacity .52s,transform .52s;transform:translateY(20px)}.reveal.visible{opacity:1;transform:translateY(0)}.services-grid .reveal:nth-child(2),.pillars-grid .reveal:nth-child(2){transition-delay:70ms}.services-grid .reveal:nth-child(3),.pillars-grid .reveal:nth-child(3){transition-delay:.14s}.services-grid .reveal:nth-child(4),.pillars-grid .reveal:nth-child(4){transition-delay:.21s}.services-grid .reveal:nth-child(5){transition-delay:.28s}.services-grid .reveal:nth-child(6){transition-delay:.35s}.project-list-grid .reveal:nth-child(2){transition-delay:70ms}.project-list-grid .reveal:nth-child(3){transition-delay:.14s}.services-page-section{background:var(--surface)}.services-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.service-detail-card{border:1px solid var(--line);background:#fff;border-radius:24px;padding:34px;box-shadow:0 14px 38px #0000000f}.service-detail-card h3{margin:14px 0 10px;font-size:1.18rem}.service-detail-card>p{color:var(--muted);font-size:.96rem}.service-works-list{border-top:1px solid var(--line);gap:9px;margin-top:20px;padding-top:20px;display:grid}.service-works-list li{color:var(--ink);padding-left:20px;font-size:.92rem;font-weight:700;position:relative}.service-works-list li:before{content:"";background:var(--gold);border-radius:50%;width:7px;height:7px;position:absolute;top:.44em;left:0}@media(max-width:980px){.hero-grid,.section-kicker,.sector-panel,.why-grid,.contact-wrap,.page-hero-grid,.process-header,.contact-page-grid{grid-template-columns:1fr}.hero{min-height:560px;padding-top:34px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services-grid .service-card{grid-column:span 1}.services-grid .service-card:nth-child(4),.services-grid .service-card:nth-child(5){border-right:1px solid var(--line);grid-column:span 1}.process-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.project-feature,.project-work-layout,.project-list-grid,.projects-preview-wrap{grid-template-columns:1fr}.project-summary-aside{order:-1}.service-card:nth-child(3){border-right:1px solid var(--line)}.service-card:nth-child(2n){border-right:0}.service-card:nth-child(n+4){border-bottom:1px solid var(--line)}.service-card:nth-child(n+5){border-bottom:0}.sector-panel-reverse .sector-image{order:0}.contact-aside{position:static}.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.container{width:min(100% - 30px,1160px)}.section{padding:56px 0}.nav-inner{min-height:68px}.brand img{width:122px}.nav-links{display:none}.nav-toggle{display:inline-flex}.services-grid,.pillars-grid,.process-steps,.why-points{grid-template-columns:1fr}.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trust-grid div:nth-child(odd){border-left:0}.trust-grid div:nth-child(-n+2){border-bottom:1px solid #ffffff21}.trust-grid div:last-child{border-bottom:0}.service-card,.service-card:nth-child(2n),.service-card:nth-child(3n),.service-card:nth-child(n+4),.service-card:nth-child(n+5){border-right:0;border-bottom:1px solid var(--line)}.service-card:last-child{border-bottom:0}.hero{min-height:480px;padding-bottom:52px}.service-card,.service-detail-card{grid-template-columns:46px 1fr;align-items:start;gap:10px 14px;min-height:0;display:grid}.service-card .service-icon,.service-detail-card .service-icon{align-self:center;margin-bottom:0}.service-card h3,.service-detail-card h3{align-self:center}.service-card p,.service-detail-card>p,.service-works-list{grid-column:1/-1}.process-card{min-height:0}.trust-grid div{padding:16px 18px}.services-detail-grid{grid-template-columns:1fr}.footer-inner,.contact-cta-wrap{flex-direction:column;align-items:flex-start}.form-grid,.file-upload-preview{grid-template-columns:1fr}body{zoom:.9}}@media(max-width:520px){.section{padding:44px 0}h1{font-size:clamp(2.25rem,10vw,3.2rem)}.hero-actions{flex-direction:column;align-items:stretch}.btn{width:100%}.service-card,.pillar,.contact-card,.project-feature,.project-tile div,.enquiry-form,.contact-aside{padding:26px}.footer-links{flex-wrap:wrap}.file-upload-dropzone{grid-template-columns:1fr}}.project-modal-backdrop{z-index:500;background:#0000008c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden auto}.project-modal{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:1100px;max-height:calc(100vh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 72px #00000038}.project-modal-header{border-bottom:1px solid #f0f0f0;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px;display:flex}.project-modal-header h2{letter-spacing:-.01em;margin:0;font-size:1.15rem;font-weight:800}.project-modal-close{color:#555;cursor:pointer;background:#f0f0f0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s,color .15s;display:flex}.project-modal-close:hover{color:#111;background:#e0e0e0}.project-modal-body{flex:1;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);display:grid;overflow-y:auto}.project-modal-gallery{border-right:1px solid #f0f0f0;flex-direction:column;gap:10px;padding:20px;display:flex}.project-modal-main-img{aspect-ratio:4/3;object-fit:cover;border-radius:12px;width:100%;display:block}.project-modal-main-placeholder{aspect-ratio:4/3;background:#f0f0f0;border-radius:12px;width:100%}.project-modal-thumbs{flex-wrap:wrap;gap:8px;display:flex}.project-modal-thumb{object-fit:cover;cursor:pointer;opacity:.6;border:2px solid #0000;border-radius:7px;flex-shrink:0;width:60px;height:45px;transition:opacity .15s,border-color .15s}.project-modal-thumb:hover{opacity:.85}.project-modal-thumb-active{opacity:1;border-color:#111}.project-modal-info{flex-direction:column;gap:14px;padding:20px 24px;display:flex;overflow-y:auto}.project-modal-eyebrow{text-transform:uppercase;letter-spacing:.07em;color:#888;font-size:.75rem;font-weight:700}.project-modal-desc{color:#444;margin:0;font-size:.92rem;line-height:1.65}.project-modal-bullets{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.project-modal-bullets li{color:#333;align-items:flex-start;gap:8px;font-size:.9rem;display:flex}.project-modal-bullets li:before{content:"✓";color:#16a34a;flex-shrink:0;margin-top:1px;font-weight:700}.project-card-clickable{cursor:pointer}.project-card-clickable:hover{transition:box-shadow .2s,transform .2s;transform:translateY(-2px);box-shadow:0 18px 48px #0000001c}@media(max-width:640px){.project-modal-body{grid-template-columns:1fr}.project-modal-gallery{border-bottom:1px solid #f0f0f0;border-right:none}}
