:root{--bg:#171716;--panel:#20201e;--cream:#eee9df;--muted:#a9a69e;--red:#da2827;--wood:#c6a583}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--bg);color:var(--cream);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:6px}header{height:95px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff20;background:#171716f5;position:sticky;top:0;z-index:5}.brand{font-size:25px;font-weight:800;letter-spacing:2px}.brand span{display:block;font-size:9px;letter-spacing:3px;margin-top:7px}nav{display:flex;gap:30px;font-size:13px}nav a:last-child{color:var(--wood)}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:680px}.hero-copy{padding:75px 7% 25px 10%;display:flex;flex-direction:column}.eyebrow{font-size:11px;letter-spacing:2.5px;color:var(--wood);font-weight:700;margin:0 0 30px}h1{font-size:clamp(43px,5.1vw,78px);font-weight:400;line-height:1.08;letter-spacing:-3px;margin:0 0 30px}em{font-family:Georgia,serif;font-weight:400;color:var(--wood)}.hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--muted)}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:24px}.button{border:0;background:var(--red);color:white;padding:19px 23px;display:inline-block;font-size:13px;cursor:pointer}.button:hover{background:#b51f1e}.text-link{font-size:13px;border-bottom:1px solid #88796a;padding-bottom:7px}.hero-foot{margin-top:auto;padding-top:70px;display:flex;justify-content:space-between;gap:15px;font-size:9px;letter-spacing:1px;color:var(--muted)}.hero-image{position:relative;overflow:hidden;background:#28231f}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:95% center;position:absolute}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent 45%)}.hero-image>span{position:absolute;bottom:30px;left:30px;z-index:1;font-size:9px;letter-spacing:2px}.section{padding:100px 7%;scroll-margin-top:15px}h2{font-size:clamp(31px,3.5vw,51px);font-weight:400;line-height:1.18;letter-spacing:-1.5px;margin:0 0 25px}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--cream);color:#252522}.about .eyebrow{color:#8a6448}.about em{color:#916b4e}.about-copy p{line-height:1.85;font-size:15px;color:#615e58}.about-copy .lead{font-size:23px;color:#292825;margin-top:0}.values{display:flex;justify-content:space-between;border-top:1px solid #bcb5a8;padding-top:25px;margin-top:35px}.values span{font-size:37px}.values small{display:block;font-size:11px;margin-top:8px;color:#6d665e}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:40px}.section-heading>p{max-width:330px;font-size:14px;line-height:1.8;color:var(--muted)}.service-list article{display:grid;grid-template-columns:50px 1fr 1fr 35px;align-items:center;gap:20px;border-top:1px solid #ffffff24;padding:28px 0}.service-list article:last-child{border-bottom:1px solid #ffffff24}.service-list article>span{color:var(--wood);font-size:12px}.service-list h3{font-size:23px;font-weight:400;margin:0}.service-list p{font-size:14px;color:var(--muted);line-height:1.6;margin:0}.service-list article>a{font-size:25px}.gallery{background:#22221f}.gallery-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:28px}.visual{border:0;background:none;color:inherit;padding:0;text-align:left;cursor:pointer}.visual img{display:block;width:100%;height:540px;object-fit:cover;object-position:top}.logo-visual img{object-fit:contain;background:#141414}.visual span{display:flex;justify-content:space-between;padding:20px 0;border-bottom:1px solid #ffffff26;font-size:17px}.visual b{font-size:23px;font-weight:400}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:60px}.steps>div{border-top:1px solid #ffffff30;padding-top:25px}.steps span{font-size:12px;color:var(--wood)}.steps h3{font-weight:400;font-size:24px}.steps p{font-size:14px;line-height:1.8;color:var(--muted)}.contact{background:#eae4d9;color:#262522;display:grid;grid-template-columns:1.1fr 1fr;gap:9%}.contact .eyebrow{color:#936646}.contact em{color:#916b4e}.contact>div>p{font-size:14px;line-height:1.8}.phone{display:block;font-size:27px;margin:28px 0 15px}.phone.second{font-size:21px;margin-top:10px}.email{display:inline-block;margin:12px 0 20px;font-size:16px;border-bottom:1px solid #999}label{display:block;font-size:12px;margin-bottom:25px}input,select,textarea{width:100%;padding:14px 0;border:0;border-bottom:1px solid #aca69b;background:transparent;color:#262522;border-radius:0;margin-top:8px;font-size:14px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note{font-size:12px;line-height:1.7;color:#6e675e}.map-wrap{height:280px;background:repeating-linear-gradient(35deg,#252520,#252520 2px,#292923 2px,#292923 40px);display:flex;align-items:center;justify-content:center}.map-wrap button{border:1px solid #a89b85;background:var(--bg);color:var(--cream);padding:25px;cursor:pointer}.map-wrap small{display:block;font-size:11px;color:var(--muted);margin-top:12px}.map-wrap iframe{width:100%;height:100%;border:0}footer{padding:45px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p{font-size:10px;line-height:2;color:var(--muted)}footer>a:last-child{font-size:12px}dialog{border:0;padding:0;background:#141414;max-width:95vw;max-height:95vh}dialog::backdrop{background:#000d}dialog img{display:block;max-width:90vw;max-height:88vh;object-fit:contain}#close-lightbox{position:fixed;right:4%;top:4%;border:1px solid #999;background:#171716;color:white;width:45px;height:45px;cursor:pointer}#form-status{font-size:12px;line-height:1.6}@media(max-width:800px){header{height:auto;min-height:85px;flex-wrap:wrap;padding:18px 6%;gap:18px}.brand{font-size:21px}nav{gap:18px;font-size:11px;flex-wrap:wrap}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 7% 25px}.hero-image{height:360px}.hero-foot{padding-top:45px}h1{font-size:56px}.section{padding:65px 7%}.about,.contact{grid-template-columns:1fr;gap:35px}.section-heading{display:block}.service-list article{grid-template-columns:25px 1fr 25px;gap:12px}.service-list h3{font-size:20px}.service-list p{grid-column:2;grid-row:2}.service-list article>a{grid-column:3;grid-row:1}.gallery-grid{grid-template-columns:1fr}.visual img{height:auto;max-height:650px;object-fit:contain}.steps{gap:25px}.steps h3{font-size:19px}footer{flex-wrap:wrap}.hero-copy>p:not(.eyebrow){font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Refined visual identity: original artwork always retains its proportions. */
:root{--bg:#141412;--panel:#1d1d19;--cream:#eee9df;--muted:#aaa69b;--red:#ad2423;--wood:#c3ad8b}body{background:radial-gradient(ellipse at 85% 10%,#2c291f66,transparent 45%),var(--bg)}header{height:150px;background:#121211fa;padding:0 6%;border-bottom:1px solid #c3ad8b30}.brand-logo{display:block;flex-shrink:0}.brand-logo .logo-window{position:relative;display:block;overflow:hidden;width:310px;height:135px;margin:0;letter-spacing:normal}.logo-window img{position:absolute;width:350px;height:350px;max-width:none;left:-20px;top:-60px}.hero{display:block;min-height:0;padding:0 6% 55px;background:linear-gradient(125deg,#20201988,#141412 70%)}.hero-copy{padding:65px 0 45px;display:grid;grid-template-columns:1.15fr 1fr;column-gap:8%}.hero-copy .eyebrow{grid-column:1/-1;margin-bottom:30px}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,5.3vw,80px);letter-spacing:-2.5px;font-weight:400;grid-column:1;grid-row:2/5;margin:0;line-height:1.13}h1 em{color:#c3ad8b}.hero-copy>p:not(.eyebrow){grid-column:2;align-self:end;margin:15px 0;line-height:2;font-size:15px}.actions{grid-column:2;align-self:start;margin-top:22px;gap:22px}.hero-foot{grid-column:1/-1;padding-top:45px;font-size:9px}.hero-image{margin:0;overflow:visible;background:none;position:relative;height:auto}.hero-image img{position:static;display:block;width:100%;height:auto;object-fit:contain;aspect-ratio:2033/774;border:1px solid #c3ad8b25}.hero-image:after{display:none}.hero-image figcaption{font-size:9px;letter-spacing:2px;color:var(--muted);padding:18px 0 0;text-align:right}h2{font-family:Georgia,'Times New Roman',serif;line-height:1.25}.section{padding-top:110px;padding-bottom:110px}.eyebrow{letter-spacing:2px}.button{background:#ac2422;letter-spacing:.2px;padding:18px 22px}.about{background:#e9e3d6}.about-copy .lead{font-family:Georgia,serif;font-size:27px}.services{background:#171714}.service-list article{padding:32px 0}.service-list h3{font-family:Georgia,serif;font-size:25px}.gallery{background:#22221c}.gallery-grid{align-items:start;grid-template-columns:1fr 1fr;gap:45px}.visual{padding:20px;background:#141412;border:1px solid #c3ad8b24}.visual img{display:block;position:static;width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:auto}.logo-visual img{background:none}.visual span{font-family:Georgia,serif;border-bottom:0;padding-bottom:0}.process{background:linear-gradient(120deg,#24231d,#151512)}.contact{background:#e9e3d6}.contact form{border-top:1px solid #b7aa94;padding-top:25px}.map-wrap{background:#25251f}footer{border-top:1px solid #c3ad8b25;padding-top:45px;padding-bottom:45px}footer .brand{font-size:20px}dialog img{width:auto;height:auto;aspect-ratio:auto}@media(min-width:1500px){main,footer,header{padding-left:max(6%,calc((100vw - 1500px)/2));padding-right:max(6%,calc((100vw - 1500px)/2))}.section{padding-left:7%;padding-right:7%}main{padding:0}}
@media(max-width:900px){header{height:auto;min-height:145px;justify-content:center;padding:8px 5% 18px;gap:10px}nav{justify-content:center;font-size:12px;gap:22px}.brand-logo .logo-window{width:270px;height:115px}.logo-window img{width:300px;height:300px;left:-15px;top:-51px}.hero{padding:0 6% 35px}.hero-copy{display:block;padding:45px 0 30px}h1{font-size:clamp(43px,8vw,66px);line-height:1.16;margin-bottom:25px}.hero-copy>p:not(.eyebrow){max-width:530px}.hero-foot{padding-top:35px;line-height:1.6}.hero-image{height:auto}.hero-image img{height:auto;width:100%;object-fit:contain}.hero-image figcaption{font-size:8px;letter-spacing:1px;text-align:left}.section{padding-top:65px;padding-bottom:65px}.gallery-grid{gap:25px}.visual img{height:auto;max-height:none}.visual{padding:12px}.service-list h3{font-size:21px}}
@media(max-width:520px){header{position:relative}nav{gap:15px;font-size:11px}.gallery-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr;gap:25px;margin-top:35px}.steps h3{margin:14px 0}.steps p{margin-bottom:0}.form-row{grid-template-columns:1fr;gap:0}.email{font-size:14px}.hero-copy>p:not(.eyebrow) br{display:none}.actions{gap:24px}.hero-foot{font-size:8px;gap:20px}footer .brand{font-size:19px}}
/* Requested identity, story palette and service presentation update. */
.brand-logo .logo-window{width:310px;height:auto;overflow:visible;line-height:0}
.logo-window img{position:static;display:block;width:100%;height:auto;max-width:100%;aspect-ratio:1356/636;object-fit:contain}
header{height:165px}
.about{background:linear-gradient(120deg,#302c26,#24231f);color:var(--cream);border-top:1px solid #c3ad8b30;border-bottom:1px solid #c3ad8b25}
.about .eyebrow{color:#c8b18d}.about em{color:#c8b18d}.about-copy p{color:#c0b9ac}.about-copy .lead{color:#f1ebe0}.values{border-color:#c3ad8b45}.values span{color:#e5d2b5}.values small{color:#b9b2a5}
.service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.service-list article,.service-list article:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:34px 30px 28px;min-height:300px;border:1px solid #c3ad8b30;background:linear-gradient(145deg,#292820,#1e1e19);position:relative;transition:background .2s,border-color .2s}
.service-list article:hover,.service-list article:focus-within{border-color:#c3ad8b85;background:linear-gradient(145deg,#343027,#24231d)}
.service-icon{width:44px;height:44px;margin-bottom:32px;color:#c8b18d}.service-icon svg{display:block;width:100%;height:100%}
.service-list h3{font-size:25px;margin:0 0 16px;line-height:1.2}.service-list p{font-size:14px;line-height:1.8;max-width:34ch;margin:0 0 28px}.service-list article>a{margin-top:auto;align-self:flex-end;font-size:24px;color:#d0b996;width:38px;height:38px;display:grid;place-items:center;border:1px solid #c3ad8b40;border-radius:50%}.service-list article>a:after{content:'';position:absolute;inset:0}
.gallery-grid{grid-template-columns:minmax(0,700px);justify-content:center}.gallery-grid .visual{width:100%}
@media(max-width:1000px){.service-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){header{height:auto}.brand-logo .logo-window{width:270px;height:auto}.logo-window img{width:100%;height:auto;position:static}.service-list article{padding:28px 24px;min-height:290px}}
@media(max-width:560px){.service-list{grid-template-columns:1fr;gap:16px}.service-list article{min-height:0;padding:28px}.service-icon{margin-bottom:22px}.service-list h3{font-size:26px}.service-list p{max-width:none}.brand-logo .logo-window{width:260px}}
@media(prefers-reduced-motion:reduce){.service-list article{transition:none}}
/* Bespoke process section: unnumbered, centered editorial composition. */
.process{background:radial-gradient(ellipse at 50% 0,#39342655,transparent 65%),#181815;text-align:center;border-top:1px solid #c3ad8b20;border-bottom:1px solid #c3ad8b20}
.process>.eyebrow{font-size:10px;letter-spacing:2.5px;margin-bottom:22px}
.process>h2{margin:0;font-size:clamp(34px,3.5vw,52px)}
.process .steps{gap:0;margin:64px auto 0;max-width:1120px;position:relative;isolation:isolate}
.process .steps:before{content:'';position:absolute;height:1px;background:linear-gradient(90deg,transparent,#c3ad8b60 20%,#c3ad8b60 80%,transparent);top:39px;left:15%;right:15%;z-index:-1}
.process .steps>div{border:0;padding:0 35px;display:flex;flex-direction:column;align-items:center}
.process-symbol{display:grid;place-items:center;width:80px;height:80px;border:1px solid #c3ad8b60;border-radius:50%;background:#201f1a;box-shadow:0 0 0 12px #1b1b17;margin-bottom:29px;color:#cfb997}
.process-symbol svg{display:block;width:34px;height:34px}
.process .steps h3{font-family:Georgia,'Times New Roman',serif;font-size:28px;line-height:1.3;font-weight:400;letter-spacing:-.4px;margin:0 0 17px;color:#eee9df}
.process .steps p{font-size:14px;line-height:1.95;color:#b7b0a2;max-width:28ch;margin:0}
@media(max-width:800px){.process .steps>div{padding:0 18px}.process .steps h3{font-size:23px}.process .steps p{font-size:13px}}
@media(max-width:560px){.process .steps{display:flex;flex-direction:column;gap:42px;margin-top:42px}.process .steps:before{display:none}.process .steps>div{padding:0 12px}.process-symbol{width:72px;height:72px;margin-bottom:23px;box-shadow:none}.process .steps h3{font-size:28px;margin:0 0 12px}.process .steps p{font-size:14px;max-width:32ch}}
/* Updated hospitality hero artwork, displayed at its natural proportions. */
.hero-image img{aspect-ratio:1916/821;height:auto;object-fit:contain}
.hero-copy h1{grid-row:2}
.hero-copy>p:not(.eyebrow){grid-row:2;align-self:center}
/* Contact palette aligned with the site's warm charcoal and champagne. */
.contact{background:linear-gradient(120deg,#302c26,#24231f);color:#eee9df;border-top:1px solid #c3ad8b30;border-bottom:1px solid #c3ad8b25}
.contact .eyebrow,.contact em{color:#c8b18d}
.contact>div>p{color:#c0b9ac}
.contact .phone{color:#f1ebe0}
.contact .email{color:#e5d2b5;border-bottom-color:#c3ad8b60}
.contact .text-link{color:#e5d2b5;border-bottom-color:#c3ad8b60}
.contact form{border-top-color:#c3ad8b45}
.contact label{color:#e8dfd0}
.contact input,.contact select,.contact textarea{color:#eee9df;border-bottom-color:#a79a826e;background:transparent;color-scheme:dark}
.contact input::placeholder,.contact textarea::placeholder{color:#aaa294;opacity:1}
.contact select option{background:#292720;color:#eee9df}
.contact .form-note,.contact #form-status{color:#bfb6a6}
.contact input:focus,.contact select:focus,.contact textarea:focus{outline-color:#c8b18d;border-bottom-color:#c8b18d}
/* Restore reading text size while reducing heading emphasis independently. */
h1{font-size:clamp(42px,4.5vw,68px);letter-spacing:-1.8px}
h2{font-size:clamp(29px,3vw,43px);letter-spacing:-1px}
.service-list h3{font-size:22px}
.steps h3{font-size:22px}
.process>h2{font-size:clamp(29px,3vw,44px)}
.process .steps h3{font-size:24px}
@media(max-width:900px){h1{font-size:clamp(38px,6.8vw,56px)}h2{font-size:30px}.service-list h3{font-size:20px}}
@media(max-width:800px){.process .steps h3{font-size:21px}}
@media(max-width:560px){.service-list h3{font-size:23px}.process .steps h3{font-size:24px}}
/* Review adjustments: compact scrolling header, stacked hero, brand-red accents. */
header{position:static;height:112px;min-height:0;padding-top:8px;padding-bottom:8px}
.brand-logo .logo-window{width:205px;height:auto}
html{scroll-padding-top:20px}
.hero-copy{display:block;padding:48px 0 36px}
.hero-copy .eyebrow{margin-bottom:24px}
.hero-copy h1{font-size:clamp(28px,3.6vw,58px);line-height:1.2;letter-spacing:-1.2px;white-space:nowrap;margin:0 0 20px}
.hero-copy>p:not(.eyebrow){margin:0;max-width:800px;line-height:1.9}


.service-icon{color:#e2564f}



.process-symbol{color:#eb625b}

@media(max-width:900px){header{height:auto;min-height:90px;justify-content:space-between;gap:20px;padding-top:10px;padding-bottom:10px}.brand-logo .logo-window{width:185px}.hero-copy{padding:38px 0 30px}.hero-copy h1{font-size:clamp(24px,3.65vw,36px)}}
@media(max-width:600px){header{justify-content:center;gap:12px}.brand-logo .logo-window{width:175px}nav{width:100%;padding-bottom:8px}.hero-copy h1{white-space:normal;font-size:clamp(30px,7.3vw,40px);line-height:1.2}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-copy .eyebrow{font-size:10px;letter-spacing:1.5px}}
/* Two supplied collages, equal natural proportions and responsive layout. */
.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.gallery-grid .visual img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
@media(max-width:700px){.gallery-grid{grid-template-columns:1fr;gap:28px}}
/* Brand-red line accents for the selected statistics and contact sections. */
.about .values{position:relative}
.about .values:before{content:'';position:absolute;top:-1px;left:0;width:64px;height:2px;background:#c3332c}
.contact form{border-top-color:#ad3932;position:relative}
.contact form:before{content:'';position:absolute;top:-1px;left:0;width:64px;height:2px;background:#dd443a}
.contact input,.contact select,.contact textarea{border-bottom-color:#ad3932a6}
.contact .email,.contact .text-link{border-bottom-color:#ad3932b3}
.contact input:focus,.contact select:focus,.contact textarea:focus{border-bottom-color:#ec6156;outline-color:#ec6156}

/* Natural proportions of the supplied hero artwork. */
.hero-image img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
/* Refined contact details, scoped to the left-hand panel. */
.contact-details h2{font-size:clamp(29px,2.9vw,42px);line-height:1.3;margin-bottom:18px}
.contact-details .contact-intro{margin:0 0 34px;color:#bfb7a9;font-size:15px;line-height:1.8}
.contact-methods{border-top:1px solid #c3ad8b35;position:relative}
.contact-methods:before{content:'';position:absolute;top:-1px;left:0;width:55px;height:2px;background:#c3332c}
.contact-method{display:grid;grid-template-columns:40px minmax(0,1fr);gap:18px;padding:24px 0;border-bottom:1px solid #c3ad8b25}
.contact-icon{width:37px;height:37px;display:grid;place-items:center;border:1px solid #c3ad8b30;border-radius:50%;color:#e05a50;margin-top:2px}
.contact-icon svg{width:19px;height:19px}
.contact-label{display:block;font-size:9px;letter-spacing:2px;color:#b5a68f;margin-bottom:12px;font-weight:700}
.contact-method a{display:block;font-size:21px;line-height:1.6;color:#eee9df;width:fit-content}
.contact-method a+a{margin-top:5px}
.contact-method a>span{display:inline-block;font-size:15px;color:#cc6960;margin-left:8px}
.contact-method a:hover{color:#d7bea0}
.contact-method a.contact-mail{font-size:16px;overflow-wrap:anywhere}
.contact-method p{font-size:15px;line-height:1.8;color:#cec6b8;margin:0 0 12px}
.contact-method a.contact-map{font-size:12px;color:#d2bfa1}
@media(max-width:560px){.contact-method{gap:13px;grid-template-columns:34px minmax(0,1fr);padding:22px 0}.contact-icon{width:32px;height:32px}.contact-method a{font-size:20px}.contact-method a.contact-mail{font-size:14px}.contact-details h2{font-size:30px}}
