/* Elements and motion copied from the two supplied Stil C HTML files; locally scoped. */
@keyframes drift{0%,100%{transform:translate(0,0)}50%{transform:translate(40px,-30px)}}
.ac-page .dr2{animation:drift 18s ease-in-out infinite reverse}
.ac-page .dk{background:#0f0f0f;border:1px solid #232323;border-radius:24px;transition:transform .3s,border-color .3s}
.ac-page .dk:hover{transform:translateY(-8px);border-color:#FFC000}
.ac-page .ab{width:44px;height:44px;border-radius:50%;background:#FFC000;color:#141414;display:inline-flex;align-items:center;justify-content:center;transition:transform .3s}
.ac-page .dk:hover .ab{transform:rotate(45deg)}
@keyframes kb{0%{transform:scale(1)}100%{transform:scale(1.08)}}
.ac-page .kb{animation:kb 24s ease-in-out infinite alternate}
@media (max-width:900px){.ac-page .hl2{font-size:40px!important}}
.ac-page .tm{position:relative;border-radius:24px;overflow:hidden;background:#0f0f0f;aspect-ratio:2/3;transition:transform .3s}
.ac-page .tm:hover{transform:translateY(-8px)}
.ac-page .tm img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.ac-page .tm:hover img{transform:scale(1.05)}
.ac-page .tm .nm2{position:absolute;left:0;right:0;bottom:0;padding:70px 20px 18px;background:linear-gradient(transparent,rgba(0,0,0,.88))}
.ac-page .tg{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.ac-page .ga{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:16px}
.ac-page .ga figure{margin:0;border-radius:24px;overflow:hidden;background:#161616}
.ac-page .ga img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s}
.ac-page .ga figure:hover img{transform:scale(1.05)}
@media (max-width:900px){.ac-page .gg{grid-template-columns:1fr!important}}
.ac-page .rvs>.card{flex:none!important;width:400px;scroll-snap-align:start}
@media (max-width:1100px){.ac-page .tg{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.ac-page .tg{grid-template-columns:repeat(2,1fr)}
.ac-page .ga{grid-template-columns:1fr 1fr;grid-auto-rows:170px}
.ac-page .ga figure{grid-column:auto!important;grid-row:auto!important}}
.ac-page a{color:inherit}
@keyframes up{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.ac-page .up{animation:up .9s cubic-bezier(.2,.7,.2,1) both}
.ac-page .card{transition:transform .3s,background .3s,color .3s}
.ac-page .card:hover{transform:translateY(-8px)}
.ac-page .btn{transition:transform .2s,box-shadow .2s}
.ac-page .btn:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(255,192,0,.45)}
.ac-page .btn span{display:inline-block;transition:transform .2s}
.ac-page .btn:hover span{transform:translateX(6px)}
@media (prefers-reduced-motion:reduce){.ac-page *{animation:none!important;transition:none!important}}
.ac-page .hl{background:linear-gradient(transparent 58%,#FFC000 58%);padding:0 4px}
.ac-page b{font-weight:400}
.ac-page h1,.ac-page h2,.ac-page h3{font-family:"Barlow",Arial,sans-serif;font-weight:400;text-transform:none;letter-spacing:0}
@keyframes pu0{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.ac-page .kc{background:#fff;border:1px solid #e2e2dc;border-radius:24px;padding:32px;display:flex;flex-direction:column;text-decoration:none;color:#141414;transition:transform .3s,border-color .3s}
.ac-page .kc:hover{transform:translateY(-8px);border-color:#FFC000}
.ac-page .kc:hover .ab{transform:rotate(45deg)}
.ac-page .kc.y{background:#FFC000;border-color:#FFC000}
.ac-page .kc.y:hover{border-color:#141414}
.ac-page .kc.y .ab{background:#141414;color:#FFC000}
.ac-page .kic{width:52px;height:52px;border-radius:16px;background:#F6F6F2;display:flex;align-items:center;justify-content:center;margin-bottom:22px}
.ac-page .kc.y .kic{background:rgba(255,255,255,.45)}
.ac-page .tmb:hover{border-color:#141414!important}
.ac-page .kg{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ac-page .kp{border-radius:32px;overflow:hidden;background:#EDEDE6;min-height:420px}
.ac-page .kp{position:relative}
.ac-page .kp>img,.ac-page .ki img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ac-page .ki{position:relative;overflow:hidden;border-radius:24px;min-height:200px}
@media (max-width:900px){.ac-page .kg{grid-template-columns:1fr}}
@font-face{font-family:Barlow;src:url('../fonts/barlow-300-latin.woff2') format('woff2');font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:Barlow;src:url('../fonts/barlow-400-latin.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
body.ac-about-page,body.ac-contact-page{margin:0;background:#F6F6F2}
.ac-page{font-family:Barlow,Arial,sans-serif;font-weight:300;font-size:18px;line-height:1.5;background:#F6F6F2;color:#141414;overflow:clip}
.ac-page *,.ac-page *::before,.ac-page *::after{box-sizing:border-box}
.ac-page h1,.ac-page h2,.ac-page h3{font-family:Barlow,Arial,sans-serif!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important}
.ac-page h1,.ac-page h2,.ac-page h3{color:inherit;text-wrap:balance}
.ac-page p{padding:0}
.ac-page img{max-width:100%;height:auto}
.ac-page svg{display:inline-block;vertical-align:middle;flex-shrink:0}
.ac-page .ac-hero-wrap{padding-top:104px!important}
.ac-page .ac-arrow{vertical-align:-3px;margin-left:8px}
.ac-page .btn{display:inline-flex!important;align-items:center;justify-content:center;white-space:nowrap;gap:4px;font-size:18px;font-weight:300;line-height:1.5;min-height:56px}
.ac-page .btn:focus-visible,.ac-page .tmb:focus-visible,.ac-page .kc:focus-visible,.ac-page .rvs:focus-visible,.ac-page a:focus-visible{outline:3px solid #FFC000;outline-offset:5px}
.ac-page .kc.y:focus-visible{outline-color:#141414}
.ac-page ::selection{background:#FFC000;color:#141414}
.ac-page a{text-underline-offset:4px}
.ac-page .rvs{scrollbar-color:#141414 #EDEDE6!important;scrollbar-width:thin}
.ac-page .up{opacity:1;animation-name:ac-up}
@keyframes ac-up{from{transform:translateY(26px)}to{transform:none}}
.ac-page .ac-motion-paused{animation-play-state:paused!important}
.ac-page #team,.ac-page #termin{scroll-margin-top:110px}
.ac-page .tm .nm2{line-height:1.3}
.ac-page .tm img{height:100%;max-width:none}
.ac-contact .tmb img{object-position:center 20%}
.ac-page .ac-trust{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;align-items:center;margin:44px auto 0;background:#fff;border-radius:16px;padding:16px 24px;width:fit-content;max-width:100%}
.ac-page .ac-trust img{width:auto;max-width:145px;height:65px;object-fit:contain;border-radius:0}
.ac-page .ac-trust img:first-child{height:96px}
.ac-page .ac-booking-panel{margin:40px auto 0;width:100%;min-width:0;background:#fff;border:1px solid #e2e2dc;border-radius:24px;padding:24px}
.ac-page .ac-booking-panel .latepoint-w,.ac-page .ac-booking-panel .latepoint-booking-form-element,.ac-page .ac-booking-panel .latepoint-form-w{width:100%;max-width:none;margin:0}
.ac-page .ac-booking-panel .latepoint-w .latepoint-booking-form-element .latepoint-form-w{flex:1 1 470px!important;min-width:0;width:auto}
.ac-page .ac-booking-panel :is(button,input,select){caret-color:#141414}
@media(max-width:1100px){.ac-page .ac-hero-copy{gap:36px!important}.ac-contact .tmb{flex-wrap:wrap}}
@media(max-width:900px){.ac-page .ac-wrap{padding:64px 28px!important}.ac-page .ac-hero-wrap{padding:104px 28px 0!important}.ac-page .ac-hero-copy{padding:64px 0!important}.ac-contact .ac-hero-copy{padding-bottom:40px!important}.ac-page .gg{gap:32px!important}.ac-contact .kp{min-height:360px!important}.ac-page .kg{padding-bottom:64px!important}.ac-page .ac-principles .gg>div:first-child{padding:32px!important}.ac-page .ac-booking-panel{padding:16px}}
@media(max-width:600px){.ac-page .ac-wrap{padding:56px 22px!important}.ac-page .ac-hero-wrap{padding:96px 22px 0!important}.ac-page .ac-hero-copy{padding:56px 0!important}.ac-page h1{font-size:42px!important;line-height:1.12!important}.ac-page h2{font-size:32px!important;line-height:1.2!important}.ac-page .btn{font-size:16px;min-height:52px;padding:14px 22px!important}.ac-page .tm .nm2{padding:50px 12px 16px}.ac-page .tm .nm2>div:first-child{font-size:19px!important}.ac-page .tm .nm2>div:last-child{font-size:14px!important}.ac-page .tg{gap:12px}.ac-page .ac-principles .dk{padding:20px!important;gap:16px!important}.ac-page .ac-principles .dk>div:first-child{width:48px!important;height:48px!important;border-radius:14px!important}.ac-page .ac-principles .dk svg{width:28px!important;height:28px!important}.ac-page .ac-principles .gg>div:first-child{padding:28px!important}.ac-page .rvs>.card{width:min(340px,calc(100vw - 52px));min-height:0!important;padding:24px!important}.ac-page .ac-trust{gap:20px}.ac-page .ac-trust img{max-width:120px;height:52px}.ac-page .ac-trust img:first-child{height:80px}.ac-contact .kp{min-height:300px!important}.ac-contact .kc{padding:26px}.ac-contact .ac-office-collage{min-height:340px!important;gap:10px!important}.ac-contact .ki{min-height:160px}.ac-contact .ac-office .dk{padding:28px!important}.ac-contact .tmb{font-size:16px;white-space:nowrap;padding-right:16px!important;gap:10px!important}.ac-contact .tmb img{width:38px!important;height:38px!important}.ac-contact .ac-booking-panel{padding:8px;border-radius:16px}.ac-contact .ac-booking .kc{padding:22px!important;gap:14px!important}.ac-contact .ac-booking .kic{width:44px;height:44px;border-radius:14px}.ac-page .ac-closing .ac-wrap{padding:64px 22px!important}}
@media(max-width:360px){.ac-page h1{font-size:36px!important}.ac-page h2{font-size:30px!important}.ac-page .tg{grid-template-columns:1fr}.ac-page .tm{aspect-ratio:3/4}.ac-page .tm .nm2{padding:70px 20px 20px}.ac-contact .tmb{flex-direction:column;padding:14px 20px!important;width:100%}.ac-contact .ac-hero-copy{gap:28px!important}.ac-page .btn{font-size:15px;padding:14px 18px!important}.ac-contact .ac-office-collage{min-height:320px!important}}
@media(prefers-reduced-motion:reduce){.ac-page *, .ac-page *::before,.ac-page *::after{animation:none!important;transition:none!important}.ac-page .up{transform:none;opacity:1}.ac-page .dk:hover,.ac-page .tm:hover,.ac-page .card:hover,.ac-page .btn:hover{transform:none}}
@media(max-width:600px){.ac-page .ac-fluid-grid{grid-template-columns:1fr!important}.ac-contact .tmb{flex-direction:column;align-items:center;padding:14px 20px!important;gap:8px!important;width:100%}.ac-contact .ac-closing>div{padding:40px 24px!important;border-radius:28px}.ac-contact .ac-closing .btn{width:100%;padding:14px 12px!important;font-size:15px}}
/* Keep complete team names and job titles on one line at readable sizes. */
.ac-page .ac-team .tg{grid-template-columns:repeat(auto-fit,minmax(min(100%,216px),1fr))}
.ac-page .ac-team .tm .nm2{padding-inline:16px}
.ac-page .ac-team .tm .nm2>div{white-space:nowrap}
.ac-page .ac-team .tm .nm2>div:last-child{font-size:14px!important}
/* The home page's exact review elements, with their local source styles. */
.ac-page .ft-review-headline-line{display:table}
.ac-page .ft-review-grid{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:10px}
.ac-page .ft-review-grid::-webkit-scrollbar{display:none}
.ac-page .ft-review{flex:0 0 clamp(310px,32vw,450px);scroll-snap-align:start;border:1px solid #e2e2dc;border-radius:24px;background:#fff;padding:26px;min-height:360px}
.ac-page .ft-review::before{content:"“";display:block;color:#FFC000;font-size:76px;line-height:.7}
.ac-page .ft-review :is(p,span.ft-review-preview){font-size:16px;font-weight:300;line-height:1.6;color:#141414;white-space:pre-line}
.ac-page .ft-review-details summary{list-style:none;cursor:pointer}
.ac-page .ft-review-details summary::-webkit-details-marker{display:none}
.ac-page .ft-review-details[open] .ft-review-preview,.ac-page .ft-review-details:not([open]) .ft-review-less,.ac-page .ft-review-details[open] .ft-review-read{display:none}
.ac-page .ft-review-expand{display:inline-block!important;margin-top:14px;color:#141414;font-size:14px;font-weight:300;text-decoration:underline;text-underline-offset:4px}
.ac-page .ft-review-details[open] .ft-review-full{margin-top:14px}
.ac-page .ft-review b,.ac-page .ft-review span{display:block}
.ac-page .ft-review b{margin-top:28px;font-size:16px;font-weight:400;line-height:1.55;color:#141414}
.ac-page .ft-review :is(.ft-review-expand,span:not(.ft-review-preview)){font-size:14px;font-weight:300;line-height:1.5;letter-spacing:0;color:#6b6b64}
.ac-page .ft-review .ft-review-expand{color:#141414}
.ac-page .ft-review-stars{display:inline-flex;gap:2px;color:#FFC000;margin-top:20px;letter-spacing:0}
.ac-page .ft-review-stars svg{display:block;width:18px;height:18px;fill:currentColor;flex:none}
.ac-page .ft-slider-controls{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}
.ac-page .ft-slider-btn{width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;line-height:1;padding:0;border:1px solid #141414;border-radius:50%;background:transparent;color:#141414;cursor:pointer;transition:background-color .25s,color .25s,transform .25s,border-color .25s}
.ac-page .ft-slider-btn svg{width:18px;height:18px;display:block;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ac-page .ft-slider-btn:hover{background:#141414;color:#fff;transform:translateY(-2px)}
.ac-page .ft-slider-btn:focus-visible,.ac-page .ft-review-details summary:focus-visible{outline:3px solid #141414;outline-offset:4px}
@media(max-width:600px){.ac-page .ft-review{flex-basis:min(310px,calc(100vw - 44px));padding:24px}.ac-page .ft-slider-btn{width:44px;height:44px}}
