@font-face{font-family:'URW Gothic';src:url('fonts/URWGothic-Book.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'URW Gothic';src:url('fonts/URWGothic-Demi.otf') format('opentype');font-weight:500 800;font-style:normal;font-display:swap}body{font-family:'URW Gothic',system-ui,sans-serif;line-height:1.75;-webkit-font-smoothing:antialiased}.hero p{font-size:17px;line-height:1.85}.service p,.about p,.step p,.contact p,details p{line-height:1.85}.btn{font-size:13px;letter-spacing:.1px}.eyebrow{letter-spacing:2px}.navlinks{font-size:13px}.brand small{letter-spacing:.7px}.service li{line-height:1.65}.brand img{width:58px}.brand strong{font-size:25px}.service h3{font-weight:500}/* The mark is flat. Only light,a forward-cast silhouette and a faint floor reflection create depth. */
.art{background:transparent;border:0;border-radius:0;box-shadow:none;perspective:none;overflow:visible;min-height:480px;display:block;isolation:isolate}.art:before,.art:after{content:none}.logo-stage{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);aspect-ratio:320/300;isolation:isolate}.logo-stage:before{content:'';position:absolute;left:15%;right:15%;top:39%;height:9%;background:radial-gradient(ellipse,#d8c29127,transparent 70%);filter:blur(12px);z-index:-1}.logo-stage:after{content:'';position:absolute;left:5%;right:5%;top:56%;height:42%;background:radial-gradient(ellipse at 50% 0,#ffffff08,transparent 64%);z-index:-1}.art .logo-stage img{position:absolute;left:7%;width:86%;max-width:none;height:auto;filter:none;transform:none;transition:none}.art .logo-stage .logo-main{top:6%;z-index:3;filter:drop-shadow(0 -2px 5px #e9d7a818)}.art .logo-stage .logo-shadow{top:54%;opacity:.62;transform:scaleY(.64) skewX(-9deg);transform-origin:50% 0;filter:brightness(0) blur(3px);mask-image:linear-gradient(#000b,transparent 86%);-webkit-mask-image:linear-gradient(#000b,transparent 86%);z-index:1}.art .logo-stage .logo-reflection{top:56%;opacity:.13;transform:scaleY(-.58);transform-origin:50% 0;filter:blur(.5px);mask-image:linear-gradient(transparent 18%,#000 100%);-webkit-mask-image:linear-gradient(transparent 18%,#000 100%);z-index:2}/* Reflection origin is the baseline of the original mark,not its bounding-box top. */
.art .logo-stage .logo-reflection{top:49%;transform:translateY(48%) scaleY(-.58)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.art:hover .logo-main{filter:drop-shadow(0 -2px 8px #e9d7a82d);transform:none}.art:hover .logo-shadow{transform:scaleY(.64) skewX(-9deg)}.art:hover .logo-reflection{transform:translateY(48%) scaleY(-.58)}}.hero>div,.aboutgrid>div,.contactgrid>div,.faq>div{min-width:0}.fields label{min-width:0}.email{overflow-wrap:anywhere}.strip{flex-wrap:wrap}.aboutfacts>div{min-width:0}.language-toggle,.menu{min-height:42px}.footerlinks a,.footerlinks button{padding:8px 0}.nav .btn{max-width:260px;text-align:center;line-height:1.5}.sectionhead p{line-height:1.85}
@media(min-width:701px) and (max-width:1050px){.hero{grid-template-columns:1.1fr .9fr;gap:25px;padding-top:65px}.hero h1{font-size:clamp(42px,5.8vw,57px)}.art{min-height:360px}.services{grid-template-columns:repeat(2,minmax(0,1fr))}.aboutgrid,.contactgrid,.faq{gap:32px}.about h2{font-size:38px}.workgrid{gap:25px}.ways{gap:20px;flex-wrap:wrap}.ways .eyebrow{white-space:normal}.nav .btn{max-width:none}.footerrow{gap:22px}.strip{gap:16px 25px}}
@media(max-width:850px){.navlinks .btn{width:100%;max-width:320px}.navlinks{max-height:calc(100dvh - 94px);overflow-y:auto}.navlinks>a{padding:7px}.brand img{width:55px}.language-toggle{min-height:42px}}
@media(max-width:700px){.hero{grid-template-columns:minmax(0,1fr);padding:42px 0 30px;gap:14px;min-height:0}.hero h1{font-size:clamp(39px,9.8vw,59px);line-height:1.12}.hero p{font-size:15px}.art{min-height:280px;max-width:450px;width:100%;margin:0 auto}.logo-stage{left:0;right:0;top:46%}.art .logo-stage img{left:10%;width:80%}.services{grid-template-columns:minmax(0,1fr)}.aboutgrid,.contactgrid,.faq{grid-template-columns:minmax(0,1fr)}.workgrid{grid-template-columns:minmax(0,1fr)}.about h2,.contact h2{font-size:clamp(34px,9vw,43px)}.navlinks{max-height:calc(100dvh - 78px)}.brand{gap:6px}.brand img{width:45px;height:35px}.brand strong{font-size:22px;line-height:1.25}.brand small{font-size:7px;letter-spacing:.25px;line-height:1.4}.nav{gap:8px}.language-toggle{padding:8px 7px;min-width:62px}.menu{padding:8px 9px;min-width:44px}.actions{gap:12px}.actions .btn{flex:1 1 160px;white-space:normal}.micro{gap:8px 15px;font-size:11px;line-height:1.5}.ways .eyebrow{white-space:normal}.footerbase{line-height:1.7}.sectionhead{margin-bottom:30px}.aboutfacts{gap:18px}.contactgrid{gap:28px}.switch button{min-height:46px}.service-icon{width:33px;height:33px}input,select,textarea{font-size:16px}.check input{flex-shrink:0}.language-choice{min-height:72px}}
@media(max-width:420px){.wrap{width:calc(100% - 28px)}.nav{gap:5px}.brand small{max-width:134px;font-size:6.8px}.brand img{width:35px}.brand strong{font-size:20px}.language-toggle{min-width:53px;padding:8px 5px;font-size:9px}.language-toggle>span[aria-hidden]{display:none}.menu{padding:8px 6px}.fields{grid-template-columns:minmax(0,1fr)}.fields .full{grid-column:1}.service{padding:23px}.hero h1{font-size:clamp(37px,10.2vw,44px)}.art{min-height:240px}.sectionhead h2{font-size:35px}.aboutfacts{display:grid;grid-template-columns:1fr}.signature{font-size:29px}.footerlinks{gap:15px}.switch button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.art .logo-stage img{transition:none!important}}.art .logo-stage .logo-shadow{top:6%;transform-origin:50% 82.222%;transform:scaleY(-1.1) skewX(-12deg);opacity:.55;mask-image:linear-gradient(transparent 12%,#000 100%);-webkit-mask-image:linear-gradient(transparent 12%,#000 100%)}.art .logo-stage .logo-reflection{top:6%;transform-origin:50% 82.222%;transform:scaleY(-.58);opacity:.13;mask-image:linear-gradient(transparent 18%,#000 100%);-webkit-mask-image:linear-gradient(transparent 18%,#000 100%)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.art:hover .logo-shadow{transform:scaleY(-1.1) skewX(-12deg)}.art:hover .logo-reflection{transform:scaleY(-.58)}}.bio-intro h2{font-size:clamp(36px,3.7vw,50px);line-height:1.18}.about .bio-role{color:#746143;font-size:13px;max-width:350px;margin-top:22px}.bio-years{display:flex;gap:16px;align-items:center;border-top:1px solid #c5c5b8;margin-top:30px;padding-top:22px;max-width:350px}.bio-years>strong{font-size:38px;line-height:1.1;white-space:nowrap;color:#75603c}.bio-years>span{font-size:11px;line-height:1.6;color:#59604f;max-width:140px}.bio-story>p:first-child{margin-top:0;font-size:17px;color:#343d2d}.bio-story>p{margin:0 0 20px}.bio-experience-head{margin-top:44px;padding-top:30px;border-top:1px solid #c6c9ba}.bio-experience-head h3{font-family:Georgia,serif;font-size:26px;font-weight:400;line-height:1.3;margin:0 0 25px}.bio-experiences{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.bio-experience{padding:23px;border:1px solid #ced0c2;border-radius:12px;background:#f4f3ec88;transition:transform .3s,border-color .3s,box-shadow .3s}.bio-index{font-family:Georgia,serif;font-size:13px;color:#897049}.bio-experience h3{font-size:15px;font-weight:500;line-height:1.45;margin:14px 0 12px}.about .bio-experience p{font-size:12px;margin:0;line-height:1.8}.bio-cta{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:35px;padding-top:25px;border-top:1px solid #c6c9ba}.bio-cta h3{font-family:Georgia,serif;font-size:25px;font-weight:400;margin:0}.about .bio-cta p{font-size:13px;margin:7px 0 0}.bio-cta .btn{flex-shrink:0}.bio-cta .btn:hover{background:#d5b985}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.bio-experience:hover{transform:translateY(-5px);border-color:#a48b59;box-shadow:0 10px 24px #343d2d12}}
@media(max-width:1050px){.bio-experiences{grid-template-columns:repeat(2,minmax(0,1fr))}.bio-intro h2{font-size:38px}}
@media(max-width:700px){.bio-intro h2{font-size:clamp(35px,9vw,43px)}.bio-years{margin-top:22px;max-width:none}.bio-experience-head{margin-top:26px}.bio-cta{align-items:flex-start;flex-direction:column;gap:20px}.bio-cta .btn{width:100%}.bio-experience-head h3{font-size:24px}.bio-story>p:first-child{font-size:16px}.bio-experiences{gap:14px}.bio-experience{padding:20px}}
@media(max-width:420px){.bio-experiences{grid-template-columns:minmax(0,1fr)}.bio-experience{padding:22px}}.bio-intro .bio-years{margin-top:23px}.bio-intro h2{font-size:clamp(34px,3.3vw,44px)}
@media(max-width:1050px){.bio-intro h2{font-size:36px}}
@media(max-width:700px){.bio-intro .bio-years{max-width:390px;margin:23px auto 0}.bio-intro h2{font-size:clamp(35px,9vw,43px)}}.hero h1{font-size:clamp(35px,4.8vw,65px);line-height:1.12;letter-spacing:-1.5px}.hero h1>span,.hero h1>em{white-space:nowrap}.hero h1>em{display:inline-block}.logo-scene{display:block;width:min(100%,390px);height:auto;margin:auto;overflow:visible}.art{display:flex;align-items:center;justify-content:center}.brand{gap:14px}.brand img{width:57px;height:61px}.brand small{font-size:11px;letter-spacing:.8px;max-width:150px;white-space:normal;line-height:1.5}.brand>span{display:block}.bio-intro h2{font-size:clamp(32px,3.1vw,42px)}.selective-care{margin-top:30px;padding:28px 30px;border:1px solid #b6ad95;border-radius:12px;background:#dedace66}.selective-care h3{font-family:Georgia,serif;font-size:27px;line-height:1.3;font-weight:400;margin:13px 0}.about .selective-care p{margin:0;font-size:14px;max-width:870px}.process-grid{gap:44px}.process-card{position:relative;border:1px solid #4b523e;border-radius:14px;background:linear-gradient(145deg,#22271d,#141811);padding:30px;min-width:0}.process-card .number{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--gold);font-size:17px;background:#c8ae770c}.process-card h3{font-size:20px;margin:22px 0 12px;line-height:1.4}.process-card p{margin:0;font-size:13px}.process-card:not(:last-child):after{content:'→';position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);font-size:25px;color:var(--gold);line-height:1}.process-card:hover{transform:none}
@media(max-width:1050px) and (min-width:701px){.hero h1{font-size:clamp(31px,4.5vw,48px)}.process-grid{gap:32px}.process-card{padding:23px}.process-card:not(:last-child):after{left:calc(100% + 7px);font-size:22px}}
@media(max-width:850px){.brand small{font-size:10px;max-width:140px}}
@media(max-width:700px){.hero h1{font-size:clamp(30px,8.5vw,53px);letter-spacing:-1px}.logo-scene{width:min(76%,320px)}.brand img{width:41px;height:48px}.brand small{font-size:8px;max-width:117px;letter-spacing:.4px}.brand{gap:8px}.process-grid{gap:44px}.process-card{padding:26px}.process-card:not(:last-child):after{content:'↓';left:50%;top:calc(100% + 9px);transform:translateX(-50%);font-size:27px}.selective-care{padding:24px}.selective-care h3{font-size:25px}}
@media(max-width:420px){.hero h1{font-size:clamp(28px,8.4vw,35px);letter-spacing:-.8px}.brand img{width:35px;height:44px}.brand small{font-size:7.5px;max-width:105px}}

/* One consistent portrait viewport at every screen size. */
.bio-photo{width:min(100%,355px);max-width:100%;margin:25px 0 0;border:1px solid #c8ae7766;border-radius:14px;overflow:hidden;background:#101211;box-shadow:0 15px 32px #20251e12}
.bio-photo-image{position:relative;display:block;width:100%;height:auto;aspect-ratio:1 / 1;padding:0;margin:0;overflow:hidden;background:#101211}
.bio-photo-image img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 0%;transform:none;mask-image:none;-webkit-mask-image:none;padding:0;margin:0}
@media(max-width:700px){.bio-photo{margin:23px auto 0}}
/* User-supplied gold logo includes its own floor and reflection. */
.art{min-height:360px;overflow:hidden}.art .provided-logo{display:block;width:100%;max-width:560px;height:auto;object-fit:contain;transform:none;filter:none;transition:none;border-radius:0;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}
.brand img{display:block;width:92px;height:49px;object-fit:contain;flex-shrink:0}.brand{gap:12px}.brand small{max-width:155px;font-size:10px;line-height:1.55}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.art:hover .provided-logo{transform:none;filter:none}}
@media(max-width:1050px){.art{min-height:280px}.brand img{width:84px;height:45px}.brand small{font-size:9px;max-width:135px}}
@media(max-width:700px){.art{min-height:210px;max-width:470px}.brand img{width:65px;height:35px}.brand small{font-size:7.5px;max-width:108px}.brand{gap:7px}}
@media(max-width:420px){.art{min-height:185px}.brand img{width:52px;height:29px}.brand small{font-size:7px;max-width:97px}.brand{gap:5px}}
/* Alpha-transparent monogram: the page itself supplies the background. */
.art .provided-logo{background:transparent;mask-image:linear-gradient(to bottom,#000 0%,#000 80%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 80%,transparent 100%)}
.brand img{background:transparent;mask-image:linear-gradient(to bottom,#000 0%,#000 80%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 80%,transparent 100%)}
@font-face{font-family:'ACY Signature';src:url('fonts/Z003-MediumItalic.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
.personal-signature{font-family:'ACY Signature',cursive;font-size:clamp(35px,4vw,48px);color:#796240;line-height:1.3;margin:16px 0 8px;overflow-wrap:normal}
.hero{grid-template-columns:.95fr 1.05fr}.hero .art{flex-direction:column;min-height:400px}.hero .art .provided-logo{width:120%;max-width:none;flex-shrink:0;filter:brightness(.9) saturate(.65)}.hero-brand-caption{color:#d3b985;font-weight:400;font-size:11px;letter-spacing:3px;text-align:center;line-height:1.6;margin-top:5px;max-width:100%;padding:0 10px}.brand img{filter:brightness(.9) saturate(.65)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.hero .art:hover .provided-logo{filter:brightness(.9) saturate(.65)}}
.bio-experience{background:#252b22;border-color:#676c58;box-shadow:0 9px 22px #20251e18}.bio-experience h3{color:#f1f0e9}.about .bio-experience p{color:#c5cbbd}.bio-experience .bio-index{color:#d0b67e}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.bio-experience:hover{background:#30372a;border-color:#b59a63;box-shadow:0 16px 28px #20251e25}}
/* Switch the navigation before tablet widths can crowd the header. */
@media(max-width:1100px){.menu{display:block;order:4}.navlinks{display:none;position:absolute;top:94px;left:0;right:0;flex-direction:column;background:var(--bg);padding:24px;border-bottom:1px solid var(--line);gap:18px;max-height:calc(100dvh - 94px);overflow-y:auto}.navlinks.open{display:flex}.navlinks>a{padding:7px}.navlinks .btn{width:100%;max-width:320px}.language-toggle{margin-left:auto}.nav{gap:12px}.hero{grid-template-columns:1fr 1fr}.hero .art{min-height:330px}.hero-brand-caption{font-size:10px;letter-spacing:2px}}
@media(max-width:850px){.aboutgrid,.contactgrid,.faq{grid-template-columns:minmax(0,1fr)}.bio-photo{margin-left:auto;margin-right:auto}.bio-role{max-width:none!important}.bio-intro h2{max-width:650px}.workgrid{grid-template-columns:minmax(0,1fr);gap:44px}.process-card:not(:last-child):after{content:'↓';left:50%;top:calc(100% + 9px);transform:translateX(-50%);font-size:27px}.sectionhead{gap:30px}.hero .art{min-height:280px}}
@media(max-width:700px){.hero{grid-template-columns:minmax(0,1fr)}.hero .art{min-height:250px;width:100%;max-width:440px}.hero .art .provided-logo{width:115%}.hero-brand-caption{font-size:10px;letter-spacing:2px;margin-top:0}.navlinks{top:78px;max-height:calc(100dvh - 78px)}.personal-signature{font-size:39px}.nav{gap:8px}}
@media(max-width:420px){.hero .art{min-height:200px}.hero-brand-caption{font-size:8px;letter-spacing:1.6px}.personal-signature{font-size:34px}.nav{gap:5px}.bio-experience h3{overflow-wrap:anywhere}}

/* Client references */
.clients-section{background:var(--bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.client-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.client-card{display:block;min-width:0;padding:30px;border:1px solid #5a5141;border-radius:14px;background:linear-gradient(145deg,#25241e,#141611);color:var(--text);text-decoration:none}
.client-logo{height:180px;display:flex;align-items:center;justify-content:center;padding:12px}
.client-logo img{display:block;max-width:100%;width:auto;height:auto;max-height:150px;object-fit:contain}
.client-details{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:24px;margin-top:16px;border-top:1px solid var(--line)}
.client-details h3{font-size:17px;margin:0;color:var(--text)}.client-details p{margin:6px 0 0;color:var(--muted);font-size:12px}.client-visit{font-size:12px;color:var(--gold)}
a.client-card:hover{border-color:var(--gold)}a.client-card:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
@media(max-width:700px){.client-grid{grid-template-columns:1fr}.client-card{padding:24px}.client-logo{height:150px}.client-logo img{max-height:125px}.client-details{flex-wrap:wrap}}
