/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@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%;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;-webkit-text-decoration:inherit;-webkit-text-decoration: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]){appearance:button}::file-selector-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}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.flex{display:flex}.hidden{display:none}.table{display:table}.resize{resize:both}.blur{--tw-blur:blur(8px);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,)}}:root{--ink:#111412;--paper:#f3f0e9;--gold:#c69b55;--muted:#8c8c84}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.nav{z-index:30;color:#fff;border-bottom:1px solid #ffffff2a;justify-content:space-between;align-items:center;height:96px;padding:0 4.5vw;display:flex;position:absolute;top:0;left:0;right:0}.brand img{object-fit:contain;filter:drop-shadow(0 2px 8px #000);width:150px;height:80px}.nav-links{text-transform:uppercase;letter-spacing:.16em;align-items:center;gap:2.5rem;font-size:12px;display:flex}.nav-links>a:not(.nav-cta){opacity:.82;transition:all .25s}.nav-links>a:hover{opacity:1;color:#e0bc7f}.nav-cta{border-left:1px solid #ffffff32;padding:1rem 0 1rem 2.5rem}.nav-cta span{color:var(--gold);margin-left:1rem;font-size:18px}.menu{background:0 0;border:0;display:none}.hero{color:#fff;background:#101311;height:100vh;min-height:820px;max-height:1080px;position:relative;overflow:hidden}.hero-image{opacity:0;background-position:50%;background-size:cover;transition:opacity 1.4s,transform 6s;position:absolute;inset:0;transform:scale(1.05)}.hero-image.active{opacity:1;transform:scale(1)}.hero-grid{background-image:linear-gradient(90deg,#0000 calc(25% - 1px),#ffffff13 25%,#0000 calc(25% + 1px) calc(50% - 1px),#ffffff13 50%,#0000 calc(50% + 1px) calc(75% - 1px),#ffffff13 75%,#0000 calc(75% + 1px));position:absolute;inset:0}.hero-content{max-width:950px;position:absolute;top:50%;left:8vw;transform:translateY(-44%)}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.24em;font-size:11px;font-weight:600}.eyebrow{color:#ded9ce;align-items:center;gap:14px;display:flex}.eyebrow span{background:var(--gold);width:48px;height:1px}h1,h2,blockquote{font-family:Georgia,Times New Roman,serif;font-weight:400}h1{letter-spacing:-.055em;margin:28px 0;font-size:clamp(62px,7.5vw,122px);line-height:.9}em{color:var(--gold);font-weight:400}.hero-copy{color:#e3e1da;max-width:500px;font-size:16px;line-height:1.8}.round-link{text-transform:uppercase;letter-spacing:.14em;text-align:center;border:1px solid #ffffff69;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:136px;height:136px;font-size:10px;transition:all .3s;display:flex;position:absolute;bottom:-32px;left:62vw}.round-link:hover{background:var(--gold);border-color:var(--gold);color:#111;transform:translateY(-5px)}.round-link b{margin-top:8px;font-size:22px}.slide-meta{letter-spacing:.14em;align-items:center;gap:12px;font-size:10px;display:flex;position:absolute;bottom:4.5vw;right:5vw}.progress{background:#ffffff4a;width:120px;height:1px}.progress i{background:var(--gold);height:1px;transition:all .5s;display:block}.slide-meta p{letter-spacing:0;min-width:220px;margin-left:20px;font-family:Georgia,serif;font-size:17px}.slide-meta small{color:#ffffffa6;text-transform:uppercase;letter-spacing:.16em;margin-top:7px;font-family:Arial,sans-serif;font-size:8px;display:block}.section{padding:120px 8vw}.section-label{text-transform:uppercase;letter-spacing:.22em;color:#66685f;align-items:center;gap:16px;min-width:180px;font-size:10px;display:flex}.section-label span{color:var(--gold)}.section-label:after{content:"";background:#c7c2b7;width:56px;height:1px}.intro{grid-template-columns:22% 1fr;display:grid}.kicker{color:#9c7d4d}.intro h2,.section-head h2,.services h2,.contact h2{letter-spacing:-.045em;margin:20px 0 50px;font-size:clamp(48px,5.7vw,88px);line-height:.98}.intro-columns{color:#67685f;grid-template-columns:1fr 1fr;gap:7vw;max-width:900px;font-size:15px;line-height:1.8;display:grid}.stats{border-top:1px solid #d5d0c4;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:80px;padding-top:30px;display:grid}.stats strong{font-family:Georgia,serif;font-size:48px;font-weight:400;display:block}.stats span{color:#73746c;text-transform:uppercase;letter-spacing:.13em;font-size:11px}.projects{color:#fff;background:#181b19}.section-head{grid-template-columns:22% 1fr 30%;align-items:end;display:grid}.section-head h2{margin:0}.section-head p,.services-heading p{color:#a7aaa4;max-width:420px;font-size:14px;line-height:1.75}.filters{flex-wrap:wrap;gap:8px;margin:70px 0 28px 22%;display:flex}.filters button{color:#aaa;cursor:pointer;text-transform:uppercase;letter-spacing:.12em;background:0 0;border:1px solid #ffffff20;padding:9px 14px;font-size:9px;transition:all .25s}.filters button:hover,.filters button.active{background:var(--gold);color:#171917;border-color:var(--gold)}.project-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.project-card{color:#fff;text-align:left;cursor:pointer;background:#222;border:0;height:440px;padding:0;position:relative;overflow:hidden}.project-card.wide{grid-column:span 2}.project-card img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.project-shade{background:linear-gradient(#0000 45%,#080a09c9 100%);position:absolute;inset:0}.project-card:hover img{transform:scale(1.045)}.project-info{position:absolute;bottom:26px;left:28px}.project-info small{color:#d0c8bc;text-transform:uppercase;letter-spacing:.15em;margin-bottom:10px;font-size:8px;display:block}.project-info strong{font:400 26px Georgia,serif}.project-arrow{opacity:0;border:1px solid #fff5;border-radius:50%;place-items:center;width:42px;height:42px;transition:all .3s;display:grid;position:absolute;top:22px;right:25px;transform:translateY(8px)}.project-card:hover .project-arrow{opacity:1;transform:none}.services{background:#eeeae1}.services-heading{grid-template-columns:1fr 36%;align-items:end;margin-left:22%;display:grid}.service-list{border-top:1px solid #c9c4b8;margin-top:70px}.service{border-bottom:1px solid #c9c4b8;grid-template-columns:8% 34% 1fr 40px;align-items:center;padding:30px 0;transition:all .3s;display:grid}.service:hover{background:#e8e2d6;padding-left:18px}.service>span{color:var(--gold);font-size:11px}.service h3{margin:0;font:400 30px Georgia,serif}.service p{color:#6c6e67;max-width:530px;font-size:13px;line-height:1.7}.service b{border:1px solid #bab5a9;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.quote{color:#fff;place-items:center;height:760px;display:grid;position:relative;overflow:hidden}.quote img{object-fit:cover;filter:brightness(.43);width:100%;height:100%;position:absolute;inset:0}.quote blockquote{z-index:1;text-align:center;margin:0;font-size:clamp(40px,5vw,75px);line-height:1.12;position:relative}.contact{color:#fff;background:#141715}.light{color:#999d97}.contact-grid{grid-template-columns:1fr 1fr;gap:10vw;margin-top:70px;display:grid}.contact-copy h2{margin:18px 0 34px}.contact-copy>p{color:#aaada7;max-width:560px;line-height:1.8}.contact-details{letter-spacing:.08em;flex-direction:column;gap:12px;margin-top:50px;font-size:12px;display:flex}.contact-details a{color:#e6c68e}form{flex-direction:column;gap:25px;display:flex}.field-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}label{color:#a6aaa3;text-transform:uppercase;letter-spacing:.15em;font-size:9px}input,select,textarea{color:#fff;text-transform:none;letter-spacing:0;background:0 0;border:0;border-bottom:1px solid #4b4d49;border-radius:0;outline:0;width:100%;margin-top:9px;padding:14px 0;font-size:14px}input:focus,select:focus,textarea:focus{border-color:var(--gold)}select option{color:#111}textarea{resize:vertical}.submit{background:var(--gold);color:#171917;cursor:pointer;text-transform:uppercase;letter-spacing:.16em;border:0;justify-content:space-between;margin-top:10px;padding:18px 22px;font-size:10px;display:flex}.form-error{color:#e99;font-size:12px}footer{color:#b6b8b2;background:#0c0f0d;padding:65px 8vw 30px}.footer-top{border-bottom:1px solid #2d302e;grid-template-columns:1fr 1.6fr .65fr;align-items:start;gap:6vw;padding-bottom:55px;display:grid}.footer-brand{flex-direction:column;align-items:flex-start;display:flex}.footer-brand img{width:180px}.footer-brand p{font:400 24px/1.4 Georgia,serif}.footer-contact h3{color:#f0eee8;margin:8px 0 26px;font:400 27px Georgia,serif}.footer-contact-item{grid-template-columns:36px 1fr;gap:13px;margin-bottom:20px;display:grid}.contact-icon{width:32px;height:32px;color:var(--gold);border:1px solid #3e433f;border-radius:50%;place-items:center;font-size:15px;display:grid}.footer-contact-item div{text-transform:none;letter-spacing:0;flex-direction:column;align-items:flex-start;gap:5px;font-size:12px;display:flex}.footer-contact-item strong{color:#80847e;text-transform:uppercase;letter-spacing:.16em;font-size:8px}.footer-contact-item a{color:#d5d7d1}.footer-contact-item>div>span{color:#a1a49e;line-height:1.5}.footer-links{text-transform:uppercase;letter-spacing:.14em;flex-direction:column;align-items:flex-end;gap:12px;padding-top:12px;font-size:10px;display:flex}.footer-bottom{text-transform:uppercase;letter-spacing:.14em;color:#666a65;justify-content:space-between;padding-top:26px;font-size:9px;display:flex}.whatsapp{z-index:35;color:#fff;background:#25d366;border-radius:50%;place-items:center;width:54px;height:54px;font-size:12px;font-weight:800;display:grid;position:fixed;bottom:25px;right:25px;box-shadow:0 8px 28px #0005}.whatsapp>img{filter:brightness(0)invert();width:27px;height:27px}.whatsapp span{color:#222;opacity:0;pointer-events:none;background:#fff;width:max-content;padding:9px 12px;font-size:10px;font-weight:400;transition:all .25s;position:absolute;right:65px;transform:translate(5px)}.whatsapp:hover span{opacity:1;transform:none}.lightbox{z-index:100;color:#fff;background:#050605f2;place-items:center;padding:5vw;animation:.3s fade;display:grid;position:fixed;inset:0}.lightbox img{object-fit:contain;max-width:90vw;max-height:78vh}.lightbox button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:42px;position:absolute;top:28px;right:34px}.lightbox div{position:absolute;bottom:28px;left:5vw}.lightbox h3{margin:7px 0;font:400 30px Georgia,serif}.lightbox small{text-transform:uppercase;letter-spacing:.16em;color:#aaa}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (width<=900px){.nav{height:78px;padding:0 22px}.brand img{width:115px;height:65px}.menu{z-index:3;width:40px;height:40px;display:block;position:relative}.menu span{background:#fff;width:24px;height:1px;margin:7px;display:block}.nav-links{background:#111412;flex-direction:column;justify-content:center;font-size:14px;transition:all .4s;position:fixed;inset:0;transform:translate(100%)}.nav-links.open{transform:none}.nav-cta{border:0;padding:1rem}.hero{min-height:720px}.hero-content{top:44%;left:7vw;right:7vw}.round-link{width:105px;height:105px;bottom:-160px;left:7vw}.slide-meta{bottom:28px;right:7vw}.slide-meta p{display:none}.section{padding:85px 7vw}.intro,.section-head,.contact-grid{grid-template-columns:1fr;gap:45px}.intro-body{margin-top:40px}.intro-columns{grid-template-columns:1fr;gap:10px}.stats{grid-template-columns:1fr 1fr;margin-top:50px}.stats strong{font-size:38px}.section-head p{margin-top:0}.filters{margin:45px 0 22px}.project-grid{grid-template-columns:1fr}.project-card,.project-card.wide{grid-column:span 1;height:370px}.services-heading{grid-template-columns:1fr;margin:40px 0 0}.service{grid-template-columns:40px 1fr 35px}.service p{grid-column:2}.quote{height:560px}.field-row{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr;gap:35px}.footer-links{align-items:flex-start}.footer-bottom{flex-direction:column;gap:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.admin-shell{background:#ece8df;grid-template-columns:260px 1fr;min-height:100vh;display:grid}.admin-aside{color:#fff;background:#111412;height:100vh;padding:35px 28px;position:sticky;top:0}.admin-aside img{object-fit:contain;width:155px;height:100px}.admin-aside>p{color:#777c76;text-transform:uppercase;letter-spacing:.2em;margin:5px 0 55px;font-size:9px}.admin-aside nav{flex-direction:column;gap:8px;display:flex}.admin-aside nav a{color:#8f938d;text-transform:uppercase;letter-spacing:.15em;border-left:2px solid #0000;padding:14px 16px;font-size:10px}.admin-aside nav a:hover,.admin-aside nav a.active{color:#fff;border-color:var(--gold);background:#ffffff08}.admin-main{min-width:0;padding:55px 6vw 90px}.admin-main>header{border-bottom:1px solid #cbc6bb;justify-content:space-between;align-items:end;padding-bottom:28px;display:flex}.admin-main>header small,.admin-card>div>small{letter-spacing:.2em;color:#8c724a;font-size:9px}.admin-main h1{color:var(--ink);letter-spacing:-.03em;margin:8px 0 0;font:400 44px Georgia,serif}.admin-login{gap:8px;display:flex}.admin-login input{color:#111;background:#f7f4ed;border:1px solid #c6c0b4;min-width:220px;margin:0;padding:12px}.admin-login button{color:#fff;cursor:pointer;background:#1b1e1c;border:0;padding:0 18px}.admin-status{color:#53462f;background:#dcd3bf;margin:22px 0 -22px;padding:12px 16px;font-size:12px}.admin-card{background:#f8f5ee;grid-template-columns:35% 1fr;gap:7vw;margin-top:55px;padding:45px;display:grid;box-shadow:0 12px 40px #1b1e1c0b}.admin-card h2{color:var(--ink);margin:12px 0 18px;font:400 34px Georgia,serif}.admin-card>div>p{color:#71736d;font-size:13px;line-height:1.7}.admin-card input,.admin-card select,.admin-card textarea{color:#171917;border-color:#c9c3b8}.admin-card select{background:#f8f5ee}.upload-box{cursor:pointer;border:1px dashed #aaa296;flex-direction:column;justify-content:center;align-items:center;min-height:135px;display:flex}.upload-box input{border:0;width:auto;padding:8px}.upload-box span{text-transform:none;letter-spacing:0;color:#8b8c86}.check{text-transform:none;letter-spacing:0;color:#61635d;align-items:center;gap:9px;font-size:12px;display:flex}.check input{width:auto;margin:0}.enquiries{grid-template-columns:22% 1fr}.enquiry-list article{border-bottom:1px solid #d4cec2;grid-template-columns:24% 1fr 24%;gap:22px;padding:22px 0;display:grid}.enquiry-list article strong{font:400 18px Georgia,serif;display:block}.enquiry-list article small{color:#97988f;text-transform:uppercase;font-size:9px}.enquiry-list article p{color:#5f625c;margin:0;font-size:13px;line-height:1.6}.enquiry-list article>div:last-child{color:#96743f;flex-direction:column;gap:7px;font-size:11px;display:flex}.empty{color:#898b85}@media (width<=850px){.admin-shell{grid-template-columns:1fr}.admin-aside{align-items:center;gap:20px;height:auto;padding:20px;display:flex;position:static}.admin-aside img{width:100px;height:60px}.admin-aside>p{display:none}.admin-aside nav{flex-direction:row;margin-left:auto}.admin-aside nav a{padding:10px 6px;font-size:8px}.admin-main{padding:35px 5vw}.admin-main>header{flex-direction:column;align-items:flex-start;gap:24px}.admin-login{width:100%}.admin-login input{flex:1;min-width:0}.admin-card,.enquiries{grid-template-columns:1fr;padding:25px}.enquiry-list article{grid-template-columns:1fr;gap:10px}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
