:root{--ink:#141414;--gold:#c8a25b;--cream:#f8f5ee;--line:#dacdb6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 Arial,sans-serif}h1,h2,h3,blockquote,.brand,.price{font-family:Georgia,'Times New Roman',serif}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(40px,4.6vw,70px);line-height:1.07;font-weight:400;letter-spacing:-1.5px}h2{font-size:clamp(32px,3.2vw,48px);line-height:1.15;font-weight:400;letter-spacing:-.7px}h3{font-size:24px;line-height:1.25;font-weight:400}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.skip{position:absolute;top:-100px;left:10px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}header{background:#101010;color:#f7edda;display:flex;align-items:center;justify-content:space-between;padding:20px 5%;gap:25px;border-bottom:1px solid #b28e493b}.brand{color:var(--gold);white-space:nowrap;line-height:1.15}.brand span{display:block;font-size:28px;font-weight:bold}.brand small{font:11px Arial;letter-spacing:6px;display:block;margin-top:5px}nav{display:flex;gap:25px;align-items:center;font-size:14px}nav a:hover{color:var(--gold)}.outline{border:1px solid var(--gold);padding:10px 18px}.menu{display:none}.hero{position:relative;min-height:630px;display:flex;align-items:center;background:#141819;color:#fff3d8;overflow:hidden}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.5) 37%,transparent 75%)}.hero-inner{position:relative;z-index:1;padding:70px 6%;max-width:740px}.hero p:not(.eyebrow){color:#f5f0e7}.eyebrow{color:#977130;font-size:12px;letter-spacing:2.8px;font-weight:600;margin-bottom:20px}.hero .eyebrow,.story .eyebrow,.contact .eyebrow{color:#dbc18c}.lead{font-family:Georgia,serif;font-size:27px;line-height:1.35}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;border:1px solid var(--gold);background:linear-gradient(120deg,#dec082,#bb9148);color:#18130a;font-size:15px;font-weight:600;border-radius:2px;transition:filter .2s}.button:hover{filter:brightness(1.1)}.hero .button{margin-top:12px}.values{display:flex;justify-content:center;align-items:center;gap:40px;background:#111;color:#e7d6b5;padding:23px;font-size:12px;text-transform:uppercase;letter-spacing:4px}.values i{width:4px;height:4px;background:var(--gold);border-radius:50%}.section{padding:80px 6%;max-width:1500px;margin:auto}.heading{text-align:center;margin-bottom:44px}.heading h2{margin-bottom:15px}.heading p:last-child{color:#67625b}.services{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.services article{border:1px solid var(--line);padding:30px 25px}.services p{color:#646059;margin-bottom:0}.number{font-family:Georgia;font-size:32px;color:#ad894b;display:block;margin-bottom:26px}.story{background:#111;color:#f7eedf;position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:540px}.story-image{background:linear-gradient(90deg,transparent 60%,#111),url('assets/hero.png') 70% center/cover;grid-column:1}.story-copy{padding:70px 12% 65px 6%;align-self:center}.story h3{color:var(--gold)}.story p:not(.eyebrow){color:#c9c5bc}.story blockquote{margin:27px 0 0;border-top:1px solid #6d5733;padding-top:24px;color:#d8bc82;font-size:21px;font-style:italic}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gallery button{border:0;background:none;padding:0;overflow:hidden}.gallery img{width:100%;height:320px;object-fit:cover;transition:transform .3s}.gallery button:hover img{transform:scale(1.025)}.gallery button:first-child img{object-position:center 35%}.gallery button:nth-child(2) img{object-position:center}.gallery button:nth-child(3) img{object-position:60% center}.vehicle{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:65px;padding-top:20px}.vehicle>img{width:100%;height:380px;object-fit:cover}.vehicle-spec{color:#9b783a;font-weight:600;letter-spacing:1px}.vehicle p{color:#645e55}.text-link{display:inline-block;border-bottom:1px solid var(--gold);padding-bottom:5px;margin-top:12px}.pricing{border-top:1px solid var(--line)}.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:center}.prices article{border:1px solid var(--line);padding:38px 20px}.prices .featured{background:#efe7d8;border-top:3px solid var(--gold);padding-top:36px}.price{font-size:44px;color:#7f2825;line-height:1.3;margin:22px 0 32px}.price small{font-size:23px}.area{background:#eae1d0;text-align:center;padding:55px 20px}.area h2{margin-bottom:8px}.area p:last-child{margin-bottom:0}.area b{color:#a0814b;padding:0 12px}.questions{display:grid;grid-template-columns:1fr 1fr;gap:16px 30px}.questions details{border-bottom:1px solid var(--line);padding:15px 0}.questions summary{cursor:pointer;list-style:none;padding-right:28px;position:relative}.questions summary:after{content:'+';position:absolute;right:5px;color:#957039}.questions details[open] summary:after{content:'−'}.questions details p{color:#625e57;margin:16px 0}.contact{padding:75px 6%;background:#141414;color:#f9f0df;display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact>div{max-width:450px}.contact>div>p:not(.eyebrow){color:#c8c1b4}.contact-line{width:70px;height:1px;background:var(--gold);margin:35px 0}form{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-size:14px;color:#d9d0c0}input,textarea{width:100%;display:block;padding:12px;border:1px solid #bbb2a0;border-radius:2px;background:#fbf8f1;color:#161616;margin-top:6px;min-width:0}textarea{resize:vertical}.wide{grid-column:1/-1}.form-note{font-size:12px;color:#b6ada0;text-align:center;margin:0}#form-result{border:1px solid var(--gold);padding:20px;font-size:14px}#form-result a{display:block;color:#eed5a2;text-decoration:underline;margin-top:10px}footer{padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#090909;color:#a69f93}footer p{font-size:14px;margin:0}footer button{background:none;color:#c1b8aa;border:0;font-size:14px}dialog{border:1px solid var(--gold);background:#141414;color:#f8f0de;padding:26px;max-width:90vw;max-height:92vh}dialog::backdrop{background:#000c}dialog img{display:block;max-width:80vw;max-height:76vh;object-fit:contain}.close{display:block;margin:0 0 15px auto;background:none;color:#ead5ab;border:0;padding:5px}#privacy-dialog{max-width:600px;padding:30px}
@media(min-width:1550px){.hero{min-height:740px}.hero-inner{margin-left:calc((100vw - 1450px)/2)}}@media(max-width:1050px){nav{gap:15px;font-size:12px}.brand span{font-size:24px}.services{gap:15px}.services article{padding:25px 18px}.story-copy{padding:50px 8%}.contact{gap:40px}.gallery img{height:260px}}@media(max-width:800px){header{padding:20px 6%;flex-wrap:wrap}.menu{display:block;background:none;color:#e4c68c;border:1px solid #8d713f;padding:8px 15px}nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding:15px 0;font-size:16px}nav.open{display:flex}.hero{min-height:670px;align-items:flex-start}.hero>img{object-position:64% bottom}.hero:after{background:linear-gradient(180deg,#000d,#0007 50%,#0002)}.hero-inner{padding:48px 6%;width:100%}h1{font-size:47px}.hero .lead{font-size:24px}.values{gap:15px;font-size:10px;letter-spacing:2px}.section{padding:55px 6%}.services{grid-template-columns:1fr 1fr}.story{grid-template-columns:1fr}.story-image{display:none}.story-copy{padding:55px 6%}.gallery{gap:12px}.gallery img{height:220px}.vehicle{grid-template-columns:1fr;gap:28px}.vehicle>img{height:auto}.prices{grid-template-columns:1fr;gap:16px}.prices article{padding:28px}.prices .featured{padding-top:26px}.price{margin:15px 0 25px}.questions{grid-template-columns:1fr}.contact{grid-template-columns:1fr;padding:55px 6%;gap:25px}.contact>div{max-width:none}footer{flex-wrap:wrap}.area b{padding:0 4px}.area p:last-child{line-height:2.2}}@media(max-width:480px){h1{font-size:40px;letter-spacing:-.7px}.hero{min-height:610px}.services{grid-template-columns:1fr 1fr;gap:12px}.services h3{font-size:21px}.services p{font-size:14px}.services article{padding:22px 14px}.gallery{grid-template-columns:1fr}.gallery img{height:300px;object-fit:contain;background:#eee5d6}.number{font-size:25px;margin-bottom:16px}form{grid-template-columns:1fr}form label{grid-column:1/-1}.values{gap:10px;letter-spacing:1.5px}.lead{font-size:23px}footer .brand span{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original brand artwork and numbered service photographs */
.brand{position:relative;display:block;flex-shrink:0;width:150px;height:110px;overflow:hidden;background:#050504}.brand .brand-logo{position:absolute;width:210px;max-width:none;height:auto;left:-30px;top:-91px}header{padding-top:6px;padding-bottom:6px}.services article{padding:0 0 27px;overflow:hidden}.service-visual{position:relative;margin-bottom:27px}.service-visual img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.service-visual .number{position:absolute;bottom:-17px;left:22px;margin:0;background:#141414;color:#e5c27d;border:1px solid #c8a25b;width:45px;height:40px;display:flex;align-items:center;justify-content:center;font-size:23px;line-height:1}.services article h3,.services article>p{margin-left:22px;margin-right:22px}footer{padding-top:18px;padding-bottom:18px}@media(max-width:600px){.services{grid-template-columns:1fr}.service-visual img{aspect-ratio:16/9}.services article h3{font-size:25px}.services article>p{font-size:16px}.services article{padding-bottom:26px}.brand{width:140px}header{padding-top:4px;padding-bottom:4px}}

/* Requested photo framing and spacious vehicle presentation */
.gallery button:first-child img{object-fit:contain;object-position:center;background:#eee5d6}
.gallery button:first-child:hover img{transform:none}
.vehicle{display:flex;flex-direction:column;align-items:stretch;gap:28px}
.vehicle>div{max-width:850px}
.vehicle>img{display:block;width:100%;height:auto;object-fit:contain}
.price{font-size:clamp(30px,3.2vw,44px)}
@media(max-width:800px){.hero{display:flex;flex-direction:column;min-height:0;background:#111}.hero>img{position:relative;order:2;width:100%;height:auto;object-fit:contain}.hero:after{display:none}.hero-inner{order:1;padding-bottom:32px}.vehicle{gap:20px}}

/* Compact vehicle copy, selectable text and uncropped replacement portrait */
.vehicle{gap:0}
.vehicle>.vehicle-intro{max-width:none;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:32px;position:relative;z-index:1}
.vehicle-intro h2{margin-bottom:0}.vehicle-intro .eyebrow{margin-bottom:10px}
.vehicle-description p{margin-bottom:8px}.vehicle-description .text-link{margin-top:0}
.vehicle>img{margin-top:0}
.gallery button:first-child img{display:block;object-fit:contain;width:100%;height:320px}
@media(max-width:800px){.vehicle>.vehicle-intro{grid-template-columns:1fr;gap:12px}.vehicle{gap:0}.vehicle-intro h2{font-size:32px}.gallery button:first-child img{height:220px}}
@media(max-width:480px){.gallery button:first-child img{height:auto;aspect-ratio:990/703}}

/* Consistent gallery cards and seamless black branding */
.gallery button{aspect-ratio:4/3;background:#000}
.gallery button img,.gallery button:first-child img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.gallery button:hover img,.gallery button:first-child:hover img{transform:scale(1.025)}
header,footer,.brand{background:#000}
.brand .brand-logo{filter:contrast(1.12);mix-blend-mode:screen}
.contact a[href^="mailto:"]{overflow-wrap:anywhere;color:#e5c27d}

.contact .phone-link{display:inline-block;color:#e5c27d;font-size:24px;padding:6px 0;text-decoration:underline;text-underline-offset:5px}footer a[href^="tel:"]{color:#e5c27d;white-space:nowrap}

/* Phone remains visible when the mobile menu is closed. */
header{flex-wrap:wrap}.header-phone{color:#e5c27d;font-size:18px;font-weight:600;white-space:nowrap;padding:10px 0;text-decoration:underline;text-underline-offset:5px}@media(max-width:1050px) and (min-width:801px){header nav{width:100%;justify-content:center;padding-bottom:10px}}@media(max-width:480px){header{column-gap:12px}.header-phone{font-size:16px;margin-left:auto}.menu{margin-left:auto}}
