:root { --ink: #000; --paper: #fff; --accent: #b300ff; --line: #ddd; --muted: #6a6a6a; --max: 1320px; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { margin: 0px; font-family: Arial, Helvetica, sans-serif; color: var(--ink); background: var(--paper); -webkit-font-smoothing: antialiased; }
body.modal-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button, a, input, textarea, summary { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }
button { cursor: pointer; }
button:disabled { cursor: default; }
img { display: block; max-width: 100%; }
svg { display: block; }
::selection { background: var(--accent); color: white; }
.wrap { width: min(var(--max),calc(100% - 104px)); margin: auto; }
.skip { position: fixed; left: 20px; top: -90px; z-index: 100; background: white; color: black; padding: 15px; }
.skip:focus { top: 12px; }
.site-header { height: 96px; background: rgb(0, 0, 0); color: rgb(255, 255, 255); border-bottom: 1px solid rgba(255, 255, 255, 0.15); position: relative; z-index: 30; }
.header-inner { height: 100%; display: flex; align-items: center; gap: 32px; }
.brand { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.brand img { width: 44px; height: 44px; object-fit: contain; }
.wordmark { font-size: 24px; font-weight: 700; letter-spacing: -1.2px; }
.wordmark span { color: var(--accent); }
.main-nav { display: flex; align-items: center; gap: 29px; margin-left: auto; font-size: 14px; }
.main-nav a { padding: 10px 0px; }
.main-nav a:hover { color: rgb(217, 139, 255); }
.header-actions { display: flex; align-items: center; gap: 22px; font-size: 13px; }
.client-link { color: rgb(183, 183, 183); }
.small-cta { background: white; color: black; padding: 14px 18px; font-weight: 700; display: flex; gap: 25px; align-items: center; }
.small-cta:hover { background: var(--accent); color: white; }
.arrow { font-size: 20px; font-weight: 400; }
.menu-toggle { display: none; border: 1px solid rgb(85, 85, 85); background: none; color: white; padding: 9px 12px; }
.hero { background: rgb(0, 0, 0); color: rgb(255, 255, 255); padding: 58px 0px 34px; }
.eyebrow { font-size: 11px; letter-spacing: 1.8px; text-transform: uppercase; font-weight: 700; display: flex; align-items: center; gap: 11px; }
.eyebrow .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--accent); }
.hero-grid { display: grid; grid-template-columns: 1.24fr 1fr; gap: 64px; align-items: center; padding: 34px 0px 56px; }
.hero h1 { font-size: clamp(68px, 7.2vw, 104px); line-height: 0.99; font-weight: 700; letter-spacing: -6px; margin: 0px 0px 30px; }
.hero h1 em { font-style: normal; color: var(--accent); }
.hero-copy { max-width: 460px; color: rgb(189, 189, 189); font-size: 17px; line-height: 1.65; margin: 0px 0px 30px; }
.button-row { display: flex; align-items: center; flex-wrap: wrap; gap: 25px; }
.btn { display: inline-flex; align-items: center; justify-content: space-between; gap: 32px; min-height: 52px; padding: 14px 20px; border: 1px solid transparent; background: var(--accent); color: white; font-size: 14px; font-weight: 700; transition: background 0.18s, transform 0.18s; }
.btn:hover { background: rgb(138, 0, 199); transform: translateY(-2px); }
.btn.secondary { background: white; border-color: rgb(221, 221, 221); color: black; }
.btn.secondary:hover { background: rgb(241, 241, 241); }
.text-link { font-size: 14px; display: inline-flex; gap: 18px; align-items: center; border-bottom: 1px solid; padding-bottom: 6px; }
.media-slot { position: relative; overflow: hidden; background: rgb(244, 244, 244); isolation: isolate; }
.hero-media { height: 486px; background: rgb(17, 17, 17); outline: rgb(54, 54, 54) solid 1px; outline-offset: -1px; }
.hero-media::before { content: ""; position: absolute; width: 310px; height: 310px; left: 50%; top: 50%; transform: translate(-50%, -50%); border: 1px solid rgba(179, 0, 255, 0.5); border-radius: 50%; z-index: -1; }
.hero-media::after { content: ""; position: absolute; inset: 32px; border: 1px solid rgba(255, 255, 255, 0.07); z-index: -1; }
.frame-mark { position: absolute; width: 20px; height: 20px; border-color: var(--accent); border-style: solid; z-index: 2; }
.frame-mark.tl { top: 16px; left: 16px; border-width: 2px 0px 0px 2px; }
.frame-mark.br { bottom: 16px; right: 16px; border-width: 0px 2px 2px 0px; }
.slot-top { position: absolute; left: 26px; top: 26px; right: 26px; display: flex; justify-content: space-between; align-items: center; color: rgb(165, 165, 165); font-size: 10px; letter-spacing: 1.3px; text-transform: uppercase; }
.slot-top .live { display: flex; align-items: center; gap: 7px; }
.slot-top .live::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: var(--accent); }
.slot-center { position: absolute; inset: 0px; display: flex; align-items: center; justify-content: center; flex-direction: column; text-align: center; padding: 45px; z-index: 1; pointer-events: none; }
.slot-center .plus { font-size: 62px; font-weight: 400; line-height: 1; color: var(--accent); margin-bottom: 14px; }
.slot-center strong { font-weight: 400; font-size: 22px; line-height: 1.35; color: rgb(255, 255, 255); }
.slot-center small { color: rgb(136, 136, 136); font-size: 11px; margin-top: 12px; }
.slot-action { position: absolute; left: 26px; bottom: 24px; border: 0px; background: rgb(255, 255, 255); color: rgb(0, 0, 0); padding: 11px 14px; font-size: 11px; font-weight: 700; z-index: 4; display: flex; gap: 24px; align-items: center; }
.slot-action:hover { background: var(--accent); color: white; }
.media-slot > img.uploaded { position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
.media-slot.has-image .slot-center, .media-slot.has-image .slot-top { display: none; }
.media-slot.has-image .slot-action { opacity: 0; transition: opacity 0.2s; }
.media-slot.has-image:hover .slot-action, .media-slot.has-image:focus-within .slot-action { opacity: 1; }
.hero-bottom { display: flex; justify-content: space-between; gap: 25px; border-top: 1px solid rgba(255, 255, 255, 0.15); padding-top: 22px; color: rgb(153, 153, 153); font-size: 11px; letter-spacing: 0.5px; }
.hero-bottom .scroll { display: flex; gap: 16px; color: white; }
.section { padding: 108px 0px; }
.section-label { display: flex; gap: 14px; align-items: center; font-size: 11px; font-weight: 700; letter-spacing: 1.8px; text-transform: uppercase; margin-bottom: 29px; }
.section-label .number { color: var(--accent); font-size: 12px; }
.section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; margin-bottom: 50px; }
.section h2 { font-size: clamp(34px, 4.3vw, 60px); letter-spacing: -2.7px; line-height: 1.05; margin: 0px; font-weight: 600; }
.section h2 .light { color: rgb(133, 133, 133); }
.section-head p { max-width: 350px; font-size: 15px; line-height: 1.7; color: rgb(102, 102, 102); margin: 0px; }
.services-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgb(204, 204, 204); }
.service { padding: 30px 26px 29px 0px; border-bottom: 1px solid rgb(204, 204, 204); position: relative; min-height: 207px; }
.service:not(:nth-child(3n+1)) { padding-left: 27px; border-left: 1px solid rgb(204, 204, 204); }
.service-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 31px; }
.service-num { font-size: 11px; color: rgb(119, 119, 119); }
.service-arrow { display: flex; align-items: center; justify-content: center; width: 29px; height: 29px; border: 1px solid rgb(204, 204, 204); border-radius: 50%; font-size: 16px; transition: 0.2s; }
.service h3 { font-size: 23px; line-height: 1.18; letter-spacing: -0.65px; margin: 0px 0px 12px; }
.service p { max-width: 290px; font-size: 13px; line-height: 1.65; color: rgb(102, 102, 102); margin: 0px; }
.service:hover .service-arrow { background: var(--accent); border-color: var(--accent); color: white; transform: rotate(45deg); }
.works { background: rgb(245, 245, 245); }
.works-head-note { max-width: 330px; font-size: 13px; color: rgb(102, 102, 102); line-height: 1.6; }
.work-grid { display: grid; grid-template-columns: 1.25fr 1fr; gap: 36px; align-items: start; }
.work-card:nth-child(2) { margin-top: 85px; }
.work-card .media-slot { height: 405px; background: rgb(229, 229, 229); }
.work-card:nth-child(2) .media-slot { height: 320px; background: rgb(218, 218, 218); }
.work-card .slot-center strong { color: rgb(119, 119, 119); font-size: 20px; }
.work-card .slot-center small { color: rgb(119, 119, 119); }
.work-card .slot-action { left: 20px; bottom: 20px; }
.work-card .slot-top { color: rgb(119, 119, 119); left: 20px; top: 20px; }
.work-meta { display: flex; justify-content: space-between; gap: 20px; padding-top: 20px; }
.work-meta h3 { margin: 0px; font-size: 22px; letter-spacing: -0.6px; font-weight: 500; }
.work-meta p { font-size: 12px; color: rgb(119, 119, 119); margin: 8px 0px 0px; }
.work-meta > span { font-size: 20px; color: rgb(119, 119, 119); }
.work-footer { display: flex; justify-content: flex-end; margin-top: 35px; }
.studio-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start; }
.studio h2 { font-size: clamp(34px, 4vw, 56px); max-width: 510px; }
.studio-copy { padding-top: 40px; }
.studio-copy > p { font-size: 18px; line-height: 1.7; letter-spacing: -0.2px; margin: 0px 0px 25px; }
.studio .placeholder-note { font-size: 12px; line-height: 1.7; color: rgb(119, 119, 119); border-left: 2px solid var(--accent); padding-left: 17px; margin: 29px 0px; }
.studio-links { display: flex; gap: 30px; flex-wrap: wrap; }
.process { background: rgb(0, 0, 0); color: white; }
.process .section-head p { color: rgb(153, 153, 153); }
.steps { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 55px; }
.step { padding: 0px 24px 0px 0px; border-right: 1px solid rgba(255, 255, 255, 0.19); }
.step:not(:first-child) { padding-left: 24px; }
.step:last-child { border: 0px; }
.step-num { display: block; color: var(--accent); font-size: 14px; margin-bottom: 30px; }
.step h3 { font-size: 22px; letter-spacing: -0.7px; margin: 0px 0px 15px; }
.step p { color: rgb(170, 170, 170); font-size: 13px; line-height: 1.7; margin: 0px; }
.process-foot { border-top: 1px solid rgba(255, 255, 255, 0.19); margin-top: 48px; padding-top: 25px; display: flex; align-items: center; justify-content: space-between; gap: 25px; color: rgb(170, 170, 170); font-size: 13px; }
.process-foot a { color: white; }
.knowledge-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 26px; }
.knowledge-item { padding: 25px 0px; border-top: 1px solid rgb(204, 204, 204); }
.knowledge-item > span { color: rgb(102, 102, 102); font-size: 10px; letter-spacing: 1px; text-transform: uppercase; }
.knowledge-item h3 { font-size: 23px; letter-spacing: -0.6px; line-height: 1.25; margin: 27px 0px 22px; max-width: 330px; }
.knowledge-item small { color: rgb(119, 119, 119); font-size: 12px; }
.faq-layout { display: grid; grid-template-columns: 0.7fr 1fr; gap: 100px; }
.faq-list { border-top: 1px solid rgb(204, 204, 204); }
.faq-list details { border-bottom: 1px solid rgb(204, 204, 204); padding: 23px 0px; }
.faq-list summary { list-style: none; cursor: pointer; font-size: 17px; display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.faq-list summary::after { content: "+"; font-size: 25px; color: var(--accent); line-height: 1; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list p { color: rgb(102, 102, 102); line-height: 1.7; font-size: 14px; padding-right: 35px; margin: 17px 0px 0px; }
.contact { background: var(--accent); color: white; padding: 82px 0px; }
.contact-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 80px; align-items: end; }
.contact h2 { font-size: clamp(44px, 5.7vw, 78px); letter-spacing: -3.7px; line-height: 1.02; margin: 0px 0px 30px; font-weight: 600; }
.contact p { font-size: 15px; line-height: 1.7; max-width: 400px; margin: 0px 0px 25px; color: rgb(255, 255, 255); }
.contact .btn { background: white; color: black; min-width: 220px; }
.contact .btn:hover { background: rgb(0, 0, 0); color: white; }
.contact-label { font-size: 11px; letter-spacing: 1.5px; text-transform: uppercase; font-weight: 700; margin-bottom: 32px; }
.contact-data { padding: 22px 0px 0px; border-top: 1px solid rgba(255, 255, 255, 0.44); font-size: 12px; line-height: 1.7; color: white; }
.site-footer { background: black; color: white; padding: 48px 0px 20px; }
.footer-top { display: flex; justify-content: space-between; align-items: start; gap: 50px; padding-bottom: 45px; }
.footer-links { display: flex; gap: 45px; font-size: 12px; }
.footer-links div { display: flex; flex-direction: column; gap: 14px; }
.footer-links a { color: rgb(170, 170, 170); }
.footer-links a:hover { color: white; }
.footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.15); padding-top: 20px; display: flex; justify-content: space-between; color: rgb(136, 136, 136); font-size: 10px; gap: 30px; line-height: 1.5; }
.preview-pill { position: fixed; bottom: 18px; right: 18px; z-index: 50; display: flex; align-items: center; gap: 12px; padding: 10px 14px; background: white; color: black; border: 1px solid rgb(221, 221, 221); box-shadow: rgba(0, 0, 0, 0.067) 0px 4px 20px; font-size: 11px; }
.preview-pill button { background: none; border: 0px; color: rgb(107, 0, 153); font-size: 11px; font-weight: 700; padding: 3px; }
.preview-pill::before { content: ""; width: 6px; height: 6px; background: var(--accent); border-radius: 50%; }
dialog { border: 1px solid rgb(221, 221, 221); padding: 0px; max-width: 600px; width: calc(100% - 36px); max-height: 85vh; overflow: auto; color: black; background: white; }
dialog::backdrop { background: rgba(0, 0, 0, 0.733); backdrop-filter: blur(5px); }
.dialog-inner { padding: 38px; }
.dialog-close { position: absolute; right: 14px; top: 10px; border: 0px; background: none; font-size: 27px; }
.dialog-inner h2 { font-size: 30px; letter-spacing: -1px; margin: 12px 0px 18px; }
.dialog-inner p, .dialog-inner li { font-size: 14px; line-height: 1.7; color: rgb(102, 102, 102); }
.dialog-inner ul { padding-left: 20px; }
.dialog-inner .btn { margin-top: 18px; }
.field { display: block; margin: 19px 0px; font-size: 13px; font-weight: 700; }
.field input, .field textarea { display: block; width: 100%; margin-top: 8px; padding: 12px; border: 1px solid rgb(204, 204, 204); border-radius: 0px; background: white; color: black; font-size: 14px; }
.dialog-note { background: rgb(245, 245, 245); padding: 14px; border-left: 2px solid var(--accent); font-size: 12px !important; }
.status-message { font-size: 12px; color: rgb(85, 85, 85); max-width: 500px; }
.sub-hero { background: black; color: white; padding: 35px 0px 76px; }
.breadcrumbs { display: flex; gap: 12px; flex-wrap: wrap; color: rgb(170, 170, 170); font-size: 12px; margin-bottom: 62px; }
.breadcrumbs a { color: white; }
.sub-hero h1 { font-size: clamp(44px, 6.5vw, 88px); letter-spacing: -4px; line-height: 1.04; margin: 0px 0px 30px; max-width: 1000px; }
.sub-hero p { max-width: 670px; color: rgb(187, 187, 187); font-size: 18px; line-height: 1.7; }
.sub-layout { display: grid; grid-template-columns: 2fr 1fr; gap: 100px; }
.sub-copy h2 { font-size: 34px; letter-spacing: -1.2px; margin: 50px 0px 18px; }
.sub-copy h2:first-child { margin-top: 0px; }
.sub-copy p, .sub-copy li { font-size: 16px; line-height: 1.8; color: rgb(85, 85, 85); }
.sub-copy ul { padding-left: 20px; }
.sub-copy a { color: rgb(115, 0, 165); text-decoration: underline; }
.sub-aside { border-top: 3px solid var(--accent); padding-top: 24px; height: max-content; position: sticky; top: 40px; }
.sub-aside h2 { font-size: 24px; letter-spacing: -0.5px; }
.sub-aside p { font-size: 14px; line-height: 1.7; color: rgb(102, 102, 102); }
.sub-aside a { display: block; padding: 13px 0px; border-bottom: 1px solid rgb(221, 221, 221); font-size: 14px; }
.related-links { display: flex; flex-wrap: wrap; gap: 15px; }
.related-links a { font-size: 13px; }
.file-input { display: none; }
@media (min-width: 1600px) {
  .hero-grid { padding: 48px 0px 65px; }
  .hero-media { height: 530px; }
  .hero { padding-top: 75px; }
}
@media (max-width: 1150px) {
  .wrap { width: calc(100% - 64px); }
  .main-nav { gap: 17px; }
  .header-actions { gap: 15px; }
  .client-link { display: none; }
  .hero-grid { gap: 36px; }
  .hero h1 { font-size: 83px; letter-spacing: -4.7px; }
  .hero-media { height: 450px; }
  .service h3 { font-size: 21px; }
  .studio-grid { gap: 50px; }
  .faq-layout { gap: 65px; }
}
@media (max-width: 900px) {
  .site-header { height: 80px; }
  .header-inner { gap: 20px; }
  .main-nav { display: none; position: absolute; top: 80px; left: 0px; right: 0px; background: black; padding: 25px 32px; border-top: 1px solid rgb(51, 51, 51); flex-direction: column; align-items: stretch; gap: 10px; }
  .main-nav.is-open { display: flex; }
  .menu-toggle { display: block; margin-left: auto; }
  .header-actions { margin-left: 0px; }
  .hero-grid { gap: 30px; grid-template-columns: 1.1fr 1fr; }
  .hero h1 { font-size: 68px; letter-spacing: -4px; }
  .hero-copy { font-size: 15px; }
  .hero-media { height: 400px; }
  .hero-bottom { font-size: 10px; }
  .section { padding: 78px 0px; }
  .section-head { gap: 30px; }
  .section h2 { font-size: 44px; }
  .services-grid { grid-template-columns: repeat(2, 1fr); }
  .service:not(:nth-child(3n+1)) { padding-left: 0px; border-left: 0px; }
  .service:nth-child(2n) { padding-left: 25px; border-left: 1px solid rgb(204, 204, 204); }
  .work-grid { gap: 25px; }
  .work-card .media-slot { height: 335px; }
  .work-card:nth-child(2) .media-slot { height: 275px; }
  .work-meta h3 { font-size: 19px; }
  .studio-grid { gap: 40px; }
  .steps { grid-template-columns: 1fr 1fr; gap: 35px; }
  .step:nth-child(2) { border: 0px; }
  .step:nth-child(3) { padding-left: 0px; }
  .step-num { margin-bottom: 20px; }
  .knowledge-item h3 { font-size: 20px; }
  .faq-layout { grid-template-columns: 1fr; gap: 35px; }
  .contact-grid { gap: 40px; }
  .contact h2 { font-size: 60px; }
  .sub-layout { gap: 50px; }
}
@media (max-width: 650px) {
  html { scroll-padding-top: 25px; }
  .wrap { width: calc(100% - 40px); }
  .site-header { height: 74px; }
  .header-inner { gap: 15px; }
  .brand img { width: 35px; height: 35px; }
  .wordmark { font-size: 21px; letter-spacing: -1px; }
  .header-actions { display: none; }
  .main-nav { top: 74px; padding: 25px 20px; }
  .menu-toggle { font-size: 12px; border-color: rgb(85, 85, 85); }
  .hero { padding: 33px 0px 25px; }
  .eyebrow { font-size: 9px; letter-spacing: 1.2px; gap: 8px; }
  .hero-grid { grid-template-columns: 1fr; gap: 35px; padding: 27px 0px 30px; }
  .hero h1 { font-size: clamp(64px, 16.5vw, 95px); letter-spacing: -4px; line-height: 1.02; margin-bottom: 25px; }
  .hero-copy { font-size: 15px; line-height: 1.7; max-width: 370px; margin-bottom: 25px; }
  .button-row { gap: 24px; }
  .btn { font-size: 13px; min-height: 50px; padding: 13px 16px; gap: 24px; }
  .text-link { font-size: 12px; gap: 13px; }
  .hero-media { height: 350px; }
  .hero-media::before { width: 245px; height: 245px; }
  .slot-center strong { font-size: 21px; }
  .hero-bottom { flex-direction: column; gap: 17px; line-height: 1.6; }
  .hero-bottom .scroll { display: none; }
  .section { padding: 60px 0px; }
  .section-label { font-size: 10px; letter-spacing: 1.4px; margin-bottom: 23px; }
  .section-head { display: block; margin-bottom: 33px; }
  .section h2 { font-size: 39px; letter-spacing: -1.8px; line-height: 1.08; }
  .section-head p { font-size: 14px; max-width: 350px; margin-top: 23px; }
  .services-grid { grid-template-columns: 1fr; }
  .service { min-height: 0px; display: grid; grid-template-columns: 1fr 1fr; column-gap: 20px; padding: 23px 0px !important; border-left: 0px !important; }
  .service-top { grid-column: 1 / -1; margin-bottom: 17px; }
  .service h3 { font-size: 21px; line-height: 1.2; margin: 0px; }
  .service p { font-size: 12px; line-height: 1.65; }
  .work-grid { grid-template-columns: 1fr; gap: 35px; }
  .work-card:nth-child(2) { margin: 0px; }
  .work-card .media-slot { height: 300px; }
  .work-card:nth-child(2) .media-slot { height: 265px; }
  .work-meta h3 { font-size: 20px; }
  .work-footer { margin-top: 27px; }
  .studio-grid { grid-template-columns: 1fr; gap: 0px; }
  .studio-copy { padding-top: 30px; }
  .studio-copy > p { font-size: 16px; }
  .studio-links { gap: 25px; }
  .steps { gap: 27px 20px; margin-top: 35px; }
  .step { padding-right: 15px; }
  .step:not(:first-child) { padding-left: 0px; border: 0px; }
  .step:first-child, .step:nth-child(3) { border-right: 1px solid rgb(51, 51, 51); }
  .step h3 { font-size: 19px; letter-spacing: -0.5px; }
  .step p { font-size: 12px; }
  .step-num { margin-bottom: 18px; }
  .process-foot { display: block; font-size: 12px; margin-top: 35px; }
  .process-foot a { margin-top: 18px; }
  .knowledge-grid { grid-template-columns: 1fr; gap: 0px; }
  .knowledge-item { display: grid; grid-template-columns: 1fr auto; gap: 10px; padding: 22px 0px; }
  .knowledge-item > span { grid-column: 1 / -1; }
  .knowledge-item h3 { margin: 8px 0px; font-size: 22px; max-width: 320px; }
  .knowledge-item small { grid-column: 1 / -1; }
  .faq-layout { gap: 30px; }
  .faq-list summary { font-size: 16px; line-height: 1.4; }
  .faq-list p { font-size: 13px; padding-right: 15px; }
  .contact { padding: 60px 0px; }
  .contact-grid { grid-template-columns: 1fr; gap: 30px; }
  .contact h2 { font-size: 53px; letter-spacing: -2.8px; }
  .contact p { font-size: 14px; }
  .contact-label { font-size: 10px; margin-bottom: 24px; }
  .footer-top { display: block; padding-bottom: 35px; }
  .footer-links { margin-top: 35px; justify-content: space-between; gap: 25px; }
  .footer-bottom { flex-direction: column; gap: 10px; padding-bottom: 35px; }
  .preview-pill { bottom: 10px; right: 10px; padding: 8px 11px; font-size: 10px; gap: 8px; }
  .preview-pill button { font-size: 10px; }
  .dialog-inner { padding: 30px 23px; }
  .sub-hero { padding: 25px 0px 50px; }
  .breadcrumbs { font-size: 11px; margin-bottom: 38px; }
  .sub-hero h1 { font-size: 49px; letter-spacing: -2.7px; }
  .sub-hero p { font-size: 16px; }
  .sub-layout { grid-template-columns: 1fr; gap: 40px; }
  .sub-copy h2 { font-size: 29px; margin-top: 36px; letter-spacing: -1px; }
  .sub-copy p, .sub-copy li { font-size: 15px; }
  .sub-aside { position: static; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, ::before, ::after { animation: auto ease 0s 1 normal none running none !important; transition: none !important; }
}
.plain-info { background: none; color: rgb(170, 170, 170); border: 0px; padding: 0px; font-size: 10px; text-align: left; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0px; margin: -1px; overflow: hidden; clip: rect(0px, 0px, 0px, 0px); white-space: nowrap; border: 0px; }
.people { border-top: 1px solid rgb(221, 221, 221); }
.people-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.person-photo { height: 360px; background: rgb(240, 240, 240); }
.person-photo .slot-center strong { color: rgb(119, 119, 119); font-size: 18px; }
.person-photo .slot-center small { color: rgb(119, 119, 119); }
.person-photo .slot-action { left: 18px; bottom: 18px; }
.person-meta { display: flex; gap: 15px; padding-top: 24px; align-items: baseline; }
.person-index { font-size: 10px; color: rgb(129, 0, 184); }
.person-meta h3 { font-size: 23px; font-weight: 500; letter-spacing: -0.6px; margin: 0px; }
.person-meta p { font-size: 12px; color: rgb(119, 119, 119); margin: 9px 0px 0px; }
.person-detail { border-top: 1px solid rgb(221, 221, 221); font-size: 12px; color: rgb(119, 119, 119); line-height: 1.7; margin: 20px 0px 0px; padding-top: 15px; }
.people-note { display: flex; align-items: center; gap: 11px; margin-top: 35px; font-size: 11px; color: rgb(119, 119, 119); }
.people-note .dot { width: 5px; height: 5px; border-radius: 50%; background: var(--accent); flex-shrink: 0; }
@media (max-width: 900px) {
  .people-grid { gap: 22px; }
  .person-photo { height: 285px; }
  .person-meta h3 { font-size: 20px; }
}
@media (max-width: 650px) {
  .people-grid { grid-template-columns: 1fr; gap: 35px; }
  .person-photo { height: 350px; }
  .person-meta h3 { font-size: 23px; }
  .people-note { align-items: start; line-height: 1.7; }
  .people-note .dot { margin-top: 6px; }
}
.portfolio-index { border-top: 1px solid rgb(204, 204, 204); padding: 20px 0px 30px; display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.portfolio-index > span, .project-type { font-size: 10px; letter-spacing: 1.3px; }
.project-gallery { grid-template-columns: 1fr 1fr; gap: 64px 36px; }
.project-gallery .work-card:nth-child(n) { margin: 0px; min-width: 0px; }
.project-gallery .work-card:nth-child(n) .media-slot { height: auto; aspect-ratio: 4 / 3; background: rgb(227, 227, 227); }
.project-gallery .work-card:nth-child(4n+2) .media-slot { background: rgb(217, 217, 217); }
.project-gallery .work-card:nth-child(2n) { padding-top: 70px; }
.project-type { display: flex; justify-content: space-between; gap: 15px; padding-bottom: 14px; text-transform: uppercase; }
.project-type > span:first-child { color: rgb(121, 0, 173); }
.work-meta h3 a { display: flex; justify-content: space-between; gap: 20px; }
.work-meta h3 a:hover { color: rgb(121, 0, 173); }
.project-context { font-size: 13px; line-height: 1.65; color: rgb(102, 102, 102); max-width: 400px; margin: 15px 0px; }
.project-service { font-size: 11px; border-bottom: 1px solid rgb(170, 170, 170); padding-bottom: 5px; display: inline-flex; gap: 18px; }
.project-service:hover { color: rgb(121, 0, 173); }
.expanded-works .work-footer { margin-top: 55px; }
.project-story { background: rgb(0, 0, 0); color: white; }
.story-heading { display: grid; grid-template-columns: 1.3fr 1fr; gap: 60px; align-items: end; margin-bottom: 45px; }
.story-heading > p { font-size: 15px; color: rgb(170, 170, 170); line-height: 1.7; max-width: 350px; justify-self: end; }
.project-story .light { color: rgb(136, 136, 136); }
.project-story figure, .studio-photo { margin: 0px; min-width: 0px; }
.story-main .media-slot { height: auto; aspect-ratio: 2.2 / 1; background: rgb(22, 22, 22); }
.project-story .media-slot .slot-center strong { color: rgb(170, 170, 170); }
.project-story figcaption { font-size: 11px; color: rgb(136, 136, 136); line-height: 1.6; margin-top: 13px; }
.story-details { display: grid; grid-template-columns: 1.05fr 1fr 1fr; gap: 32px; margin-top: 45px; }
.story-details .media-slot { height: auto; aspect-ratio: 3 / 4; background: rgb(22, 22, 22); }
.story-details .slot-center { padding: 25px; }
.story-details .slot-center strong { font-size: 18px; }
.story-details .slot-top { left: 17px; right: 17px; top: 17px; }
.story-details .slot-action { left: 17px; bottom: 17px; gap: 12px; }
.story-kicker { font-size: 9px; letter-spacing: 1.6px; color: rgb(188, 70, 239); }
.story-brief h3 { font-size: 32px; letter-spacing: -1px; font-weight: 500; line-height: 1.1; margin: 24px 0px 30px; }
.story-brief dl { margin: 0px 0px 25px; }
.story-brief dl > div { border-top: 1px solid rgb(51, 51, 51); padding: 14px 0px; display: grid; grid-template-columns: 64px 1fr; gap: 13px; }
.story-brief dt { font-size: 11px; color: rgb(170, 170, 170); }
.story-brief dd { font-size: 12px; line-height: 1.6; margin: 0px; color: rgb(204, 204, 204); }
.story-brief .text-link { font-size: 12px; }
.studio-photo { grid-column: 1 / -1; margin-top: 10px; }
.studio-photo .media-slot { height: auto; aspect-ratio: 2.5 / 1; background: rgb(239, 239, 239); }
.studio-photo .slot-center strong { color: rgb(119, 119, 119); }
.studio-photo figcaption { font-size: 11px; color: rgb(119, 119, 119); margin-top: 13px; line-height: 1.6; }
.case-notice { font-size: 10px; letter-spacing: 1px; border-left: 2px solid var(--accent); background: rgb(244, 244, 244); padding: 17px; margin-bottom: 35px; }
.sub-copy > .media-slot { height: auto; aspect-ratio: 4 / 3; margin: 35px 0px; background: rgb(238, 238, 238); }
.sub-copy > .media-slot .slot-center strong { color: rgb(119, 119, 119); }
.case-overview { display: grid; grid-template-columns: 1fr 1fr; gap: 35px 20px; margin-bottom: 65px; }
.case-overview .media-slot { height: auto !important; aspect-ratio: 4 / 3; }
.case-overview .work-card { margin: 0px !important; }
.case-overview .slot-center { padding: 15px; }
.case-overview .slot-center strong { font-size: 15px; }
.case-overview .work-meta h3 { font-size: 18px; margin: 0px; }
.case-overview .work-meta h3 a { text-decoration: none; color: rgb(0, 0, 0); }
.case-overview .slot-action { left: 12px; bottom: 12px; font-size: 10px; padding: 9px; gap: 10px; }
.case-overview .slot-top { top: 12px; left: 12px; right: 12px; font-size: 8px; }
.case-overview .project-service { font-size: 10px; }
.case-overview .project-type { font-size: 9px; }
@media (max-width: 900px) {
  .project-gallery { gap: 45px 25px; }
  .project-gallery .work-card:nth-child(2n) { padding-top: 40px; }
  .story-heading { gap: 35px; }
  .story-details { grid-template-columns: 1fr 1fr; gap: 25px; }
  .story-brief { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 35px; }
  .story-brief .story-kicker { grid-column: 1 / -1; }
  .story-brief h3 { margin: 12px 0px; }
  .story-brief dl { grid-area: 2 / 2 / 4; }
  .studio-photo { margin-top: 15px; }
  .studio-photo .media-slot { aspect-ratio: 2 / 1; }
}
@media (max-width: 650px) {
  .portfolio-index { align-items: start; flex-direction: column; padding-bottom: 25px; gap: 20px; }
  .project-gallery { grid-template-columns: 1fr; gap: 40px; }
  .project-gallery .work-card:nth-child(n) { padding-top: 0px; }
  .project-gallery .work-card:nth-child(n) .media-slot { aspect-ratio: 4 / 3; }
  .project-type { font-size: 9px; }
  .project-context { font-size: 12px; }
  .work-meta h3 a { line-height: 1.3; }
  .story-heading { grid-template-columns: 1fr; gap: 18px; margin-bottom: 28px; }
  .story-heading > p { justify-self: start; font-size: 14px; margin: 0px; max-width: 100%; }
  .story-main .media-slot { aspect-ratio: 4 / 3; }
  .story-details { gap: 30px 14px; margin-top: 30px; }
  .story-details .media-slot { aspect-ratio: 3 / 4; }
  .story-details .slot-center strong { font-size: 14px; }
  .story-details .slot-center small, .story-details .slot-top { display: none; }
  .story-details .slot-center .plus { font-size: 42px; }
  .story-details .slot-action { left: 8px; right: 8px; bottom: 10px; font-size: 9px; justify-content: space-between; padding: 9px; gap: 4px; }
  .story-brief { display: block; }
  .story-kicker { font-size: 9px; }
  .story-brief h3 { font-size: 30px; margin: 20px 0px; }
  .story-brief dl > div { grid-template-columns: 65px 1fr; }
  .studio-photo { margin-top: 35px; }
  .studio-photo .media-slot { aspect-ratio: 4 / 3; }
  .case-overview { grid-template-columns: 1fr; }
  .project-service { font-size: 11px; }
}
.brands { padding: 58px 0px 64px; background: rgb(255, 255, 255); border-bottom: 1px solid rgb(221, 221, 221); }
.brands-heading { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 32px; }
.brands-kicker { font-size: 9px; letter-spacing: 1.8px; font-weight: 700; color: rgb(121, 0, 173); }
.brands-heading h2 { font-size: 27px; font-weight: 500; letter-spacing: -0.9px; line-height: 1.2; margin: 14px 0px 0px; }
.brands-note { font-size: 11px; color: rgb(119, 119, 119); line-height: 1.6; }
.brand-logos { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); border-top: 1px solid rgb(221, 221, 221); border-left: 1px solid rgb(221, 221, 221); }
.logo-slot { aspect-ratio: 2.5 / 1; background: white; border-right: 1px solid rgb(221, 221, 221); border-bottom: 1px solid rgb(221, 221, 221); display: flex; align-items: center; justify-content: center; min-width: 0px; }
.logo-placeholder { font-size: 20px; letter-spacing: 3px; font-weight: 700; color: rgb(187, 187, 187); padding-bottom: 10px; }
.logo-slot .slot-action { background: transparent; bottom: 12px; left: 50%; transform: translateX(-50%); padding: 5px 8px; gap: 12px; color: rgb(119, 119, 119); font-size: 10px; white-space: nowrap; }
.logo-slot .slot-action:hover { color: rgb(121, 0, 173); background: rgb(247, 239, 251); }
.logo-slot > img.uploaded { object-fit: contain; padding: 26px 40px; }
.logo-slot.has-image .logo-placeholder { display: none; }
.logo-slot.has-image .slot-action { background: white; border: 1px solid rgb(221, 221, 221); bottom: 8px; z-index: 4; }
.logo-slot.has-image:focus-within .slot-action, .logo-slot.has-image:hover .slot-action { opacity: 1; }
@media (max-width: 900px) {
  .logo-slot > img.uploaded { padding: 22px 24px; }
  .logo-slot { aspect-ratio: 2 / 1; }
  .brands-heading h2 { font-size: 24px; }
}
@media (max-width: 650px) {
  .brands { padding: 38px 0px 42px; }
  .brands-heading { display: block; margin-bottom: 25px; }
  .brands-heading h2 { font-size: 25px; max-width: 300px; }
  .brands-note { display: block; margin-top: 15px; font-size: 10px; }
  .brand-logos { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .logo-slot { aspect-ratio: 1.9 / 1; }
  .logo-placeholder { font-size: 17px; letter-spacing: 2px; }
  .logo-slot > img.uploaded { padding: 20px; }
  .logo-slot .slot-action { bottom: 7px; font-size: 9px; }
}
.brands-controls { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 0px 0px 18px; }
.brands-scroll-note { font-size: 11px; color: rgb(119, 119, 119); }
.brands-buttons { display: flex; gap: 8px; }
.brands-buttons button { border: 1px solid rgb(221, 221, 221); background: white; color: rgb(0, 0, 0); height: 36px; min-width: 36px; padding: 0px 12px; font-size: 12px; }
.brands-buttons button:hover { border-color: rgb(121, 0, 173); color: rgb(121, 0, 173); }
.brands-buttons [data-brands="pause"] { min-width: 90px; }
.brand-logos { display: flex; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: rgb(179, 0, 255) rgb(238, 238, 238); border-right: 1px solid rgb(221, 221, 221); padding-bottom: 9px; touch-action: pan-x pan-y; }
.brand-logos .logo-slot { flex: 0 0 calc(25% - 1px); min-width: 200px; aspect-ratio: 2.5 / 1; }
.brand-logos:focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }
@media (max-width: 900px) {
  .brand-logos .logo-slot { flex-basis: 32%; min-width: 190px; }
}
@media (max-width: 650px) {
  .brands-controls { gap: 12px; align-items: center; }
  .brands-scroll-note { font-size: 10px; max-width: 130px; line-height: 1.6; }
  .brands-buttons { gap: 5px; }
  .brands-buttons button { height: 34px; min-width: 30px; padding: 0px 8px; font-size: 10px; }
  .brands-buttons [data-brands="pause"] { min-width: 75px; }
  .brand-logos .logo-slot { flex-basis: 65%; min-width: 180px; aspect-ratio: 2.1 / 1; }
}
.brand-logos { scrollbar-width: none; padding-bottom: 0px; }
.brand-logos::-webkit-scrollbar { display: none; width: 0px; height: 0px; }
@media (prefers-reduced-motion: reduce) {
  .brand-logos { overflow-x: visible; flex-wrap: wrap; }
  .brand-logos .logo-slot { flex: 1 0 24%; }
}
@media (max-width: 650px) and (prefers-reduced-motion: reduce) {
  .brand-logos .logo-slot { flex-basis: 49%; min-width: 0px; }
}
.brand-logos, .brand-logos .logo-slot { border: 0px; }
.photography-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 55px 35px; }
.photo-category { min-width: 0px; }
.photo-category > .media-slot { aspect-ratio: 4 / 3; background: rgb(237, 237, 237); }
.photo-category .slot-center strong { color: rgb(119, 119, 119); }
.photo-category-copy { padding-top: 24px; }
.photo-category-num { font-size: 10px; color: rgb(121, 0, 173); letter-spacing: 1.5px; }
.photo-category-copy h2 { font-size: 30px; letter-spacing: -1px; line-height: 1.15; margin: 16px 0px; }
.photo-category-copy h2 a { display: flex; align-items: start; justify-content: space-between; gap: 30px; }
.photo-category-copy h2 a:hover { color: rgb(121, 0, 173); }
.photo-category-copy p { font-size: 14px; color: rgb(102, 102, 102); line-height: 1.75; max-width: 530px; margin-bottom: 22px; }
.photo-category:last-child { grid-column: 1 / -1; display: grid; grid-template-columns: 1.2fr 1fr; gap: 45px; border-top: 1px solid rgb(221, 221, 221); padding-top: 45px; }
.photo-category:last-child .photo-category-copy { align-self: center; padding-top: 0px; }
.photo-category:last-child > .media-slot { aspect-ratio: 4 / 3; }
.photo-overview-contact { display: flex; align-items: center; justify-content: space-between; gap: 50px; }
.photo-overview-contact h2 { font-size: 40px; }
.photo-overview-contact p { font-size: 15px; line-height: 1.7; color: rgb(102, 102, 102); max-width: 650px; }
.photo-overview-contact .btn { flex-shrink: 0; }
.photo-question { border-top: 1px solid rgb(221, 221, 221); border-bottom: 1px solid rgb(221, 221, 221); padding: 20px 0px; }
.photo-question summary { cursor: pointer; font-size: 16px; line-height: 1.5; }
.photo-question p { font-size: 14px !important; }
@media (max-width: 900px) {
  .photo-category-copy h2 { font-size: 25px; }
  .photo-category:last-child { gap: 28px; }
  .photo-overview-contact { display: block; }
  .photo-overview-contact .btn { margin-top: 15px; }
}
@media (max-width: 650px) {
  .photography-grid { grid-template-columns: 1fr; gap: 40px; }
  .photo-category:last-child { display: block; grid-column: auto; padding-top: 0px; border-top: 0px; }
  .photo-category:last-child .photo-category-copy { padding-top: 24px; }
  .photo-category-copy h2 { font-size: 28px; }
  .photo-category-copy p { font-size: 14px; }
  .photo-overview-contact h2 { font-size: 34px; }
}
.main-nav { height: 100%; }
.services-dropdown { height: 100%; display: flex; align-items: center; }
.services-trigger { display: flex; align-items: center; gap: 8px; padding: 10px 0px; background: none; border: 0px; color: inherit; font-size: inherit; }
.services-trigger:hover, .services-trigger[aria-expanded="true"] { color: rgb(217, 139, 255); }
.services-trigger > span { transition: transform 0.15s; }
.services-trigger[aria-expanded="true"] > span { transform: rotate(180deg); }
.services-panel[hidden] { display: none !important; }
.services-panel { position: absolute; left: 50%; transform: translateX(-50%); top: calc(100% - 1px); width: min(1120px, 100% - 64px); background: white; color: black; border-top: 3px solid var(--accent); box-shadow: rgba(0, 0, 0, 0.133) 0px 18px 35px; padding: 27px 32px 33px; z-index: 40; }
.services-panel-top { display: flex; justify-content: space-between; align-items: center; gap: 20px; border-bottom: 1px solid rgb(221, 221, 221); padding-bottom: 20px; margin-bottom: 25px; }
.services-panel-top > span { font-size: 9px; letter-spacing: 1.6px; color: rgb(121, 0, 173); font-weight: 700; }
.services-panel-top > a { font-size: 11px !important; padding: 0px !important; }
.services-panel-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 30px; }
.services-panel-group { min-width: 0px; }
.services-panel-group:not(:first-child) { border-left: 1px solid rgb(221, 221, 221); padding-left: 28px; }
.main-nav .services-panel a { color: black; line-height: 1.4; }
.main-nav .services-panel a:hover { color: rgb(121, 0, 173); }
.main-nav .services-group-title { display: flex; justify-content: space-between; align-items: center; font-size: 25px; font-weight: 600; letter-spacing: -0.8px; padding: 0px; }
.photography-nav > p { font-size: 12px; line-height: 1.6; color: rgb(119, 119, 119); margin: 12px 0px 20px; }
.photography-nav-links { display: grid; grid-template-columns: 1fr; gap: 2px; }
.main-nav .photography-nav-links a { font-size: 13px; padding: 9px 12px; background: rgb(247, 247, 247); border-left: 2px solid transparent; }
.main-nav .photography-nav-links a:hover { background: rgb(245, 233, 251); border-left-color: var(--accent); }
.main-nav .services-all-photo { display: flex; align-items: center; justify-content: space-between; font-size: 11px; margin-top: 17px; padding: 4px 0px; }
.services-group-label { margin: 3px 0px 24px; font-size: 9px; letter-spacing: 1.5px; color: rgb(119, 119, 119); font-weight: 700; }
.main-nav .services-category-link { display: block; padding: 0px 0px 21px; margin-bottom: 20px; border-bottom: 1px solid rgb(238, 238, 238); }
.services-category-link strong { display: block; font-size: 16px; font-weight: 600; letter-spacing: -0.3px; }
.services-category-link > span { display: block; font-size: 11px; color: rgb(119, 119, 119); line-height: 1.7; margin-top: 8px; }
.services-panel-group .services-category-link:last-child { margin-bottom: 0px; border-bottom: 0px; padding-bottom: 0px; }
@media (max-width: 900px) {
  .main-nav { height: auto; max-height: calc(100dvh - 80px); overflow-y: auto; }
  .services-dropdown { display: block; height: auto; }
  .services-trigger { width: 100%; justify-content: space-between; padding: 10px 0px; font-size: 14px; }
  .services-panel { position: static; transform: none; width: 100%; box-shadow: none; padding: 22px 20px; margin: 12px 0px 18px; }
  .services-panel-grid { grid-template-columns: 1fr 1fr; gap: 25px; }
  .photography-nav { grid-column: 1 / -1; }
  .services-panel-group:not(:first-child) { padding: 23px 0px 0px; border-left: 0px; border-top: 1px solid rgb(221, 221, 221); }
  .photography-nav-links { grid-template-columns: 1fr 1fr; gap: 5px; }
  .services-panel-top { align-items: start; gap: 15px; }
  .services-panel-top > span { font-size: 8px; line-height: 1.6; }
  .main-nav .services-panel-top > a { font-size: 10px !important; flex-shrink: 0; }
  .services-panel-group > p.services-group-label { font-size: 9px; margin-bottom: 20px; }
  .main-nav .services-group-title { font-size: 25px; }
}
@media (max-width: 650px) {
  .main-nav { max-height: calc(100dvh - 74px); }
  .services-panel { padding: 20px 15px; }
  .services-panel-grid { grid-template-columns: 1fr; gap: 24px; }
  .photography-nav { grid-column: auto; }
  .photography-nav-links { grid-template-columns: 1fr; }
  .main-nav .photography-nav-links a { padding: 11px 10px; }
  .services-panel-top > span { max-width: 130px; }
  .services-category-link strong { font-size: 16px; }
  .services-panel-top { margin-bottom: 22px; }
  .services-trigger { font-size: 14px; }
}
.service-catalog-nav { display: grid; grid-template-columns: 245px minmax(0px, 1fr); gap: 35px; }
.service-tabs { display: flex; flex-direction: column; gap: 4px; border-right: 1px solid rgb(221, 221, 221); padding-right: 25px; }
.service-tab { display: flex; align-items: center; justify-content: space-between; gap: 15px; border: 0px; background: rgb(247, 247, 247); color: rgb(34, 34, 34); text-align: left; padding: 13px 12px; font-size: 13px; line-height: 1.4; }
.service-tab > span:last-child { font-size: 9px; color: rgb(136, 136, 136); white-space: nowrap; }
.service-tab[aria-selected="true"] { background: rgb(0, 0, 0); color: white; }
.service-tab[aria-selected="true"] > span:last-child { color: rgb(217, 139, 255); }
.service-tab:hover { background: rgb(241, 227, 248); color: rgb(121, 0, 173); }
.service-tab[aria-selected="true"]:hover { background: rgb(0, 0, 0); color: white; }
.service-category-panel[hidden] { display: none !important; }
.service-category-panel { min-height: 340px; min-width: 0px; }
.main-nav .service-category-heading { display: flex; justify-content: space-between; font-size: 29px; font-weight: 600; letter-spacing: -1px; padding: 0px; gap: 20px; }
.service-category-panel > p { font-size: 12px; line-height: 1.75; color: rgb(119, 119, 119); margin: 14px 0px 24px; max-width: 600px; }
.service-choices { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.main-nav .service-choice { display: flex; align-items: center; justify-content: space-between; padding: 16px 15px; background: rgb(247, 247, 247); gap: 16px; min-height: 56px; font-size: 13px; line-height: 1.5; }
.service-choice strong { font-weight: 500; }
.main-nav .service-choice:hover { background: rgb(243, 229, 250); }
.main-nav .service-category-all { display: flex; justify-content: space-between; padding: 18px 0px 0px; font-size: 11px; border-top: 1px solid rgb(221, 221, 221); margin-top: 24px; }
.catalog-note { padding: 18px 22px; border-left: 2px solid var(--accent); background: rgb(246, 246, 246); font-size: 13px; line-height: 1.8; color: rgb(102, 102, 102); margin: 0px 0px 40px; }
.catalog-note a { color: rgb(121, 0, 173); text-decoration: underline; }
.catalog-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 50px 35px; }
.catalog-card { min-width: 0px; }
.catalog-card > .media-slot { aspect-ratio: 4 / 3; background: rgb(238, 238, 238); }
.catalog-card .slot-center strong { color: rgb(119, 119, 119); }
.catalog-card > div:last-child { padding-top: 24px; }
.catalog-card h2 { font-size: 30px; letter-spacing: -1px; margin: 16px 0px; line-height: 1.15; }
.catalog-card h2 a { display: flex; justify-content: space-between; gap: 20px; }
.catalog-card h2 a:hover { color: rgb(121, 0, 173); }
.catalog-card p { font-size: 14px; color: rgb(102, 102, 102); line-height: 1.8; margin: 0px 0px 22px; }
@media (max-width: 900px) {
  .service-catalog-nav { grid-template-columns: 190px minmax(0px, 1fr); gap: 20px; }
  .service-tabs { padding-right: 15px; }
  .service-tab { font-size: 12px; padding: 12px 9px; }
  .service-choices { grid-template-columns: 1fr; }
  .service-category-panel { min-height: 0px; }
  .main-nav .service-category-heading { font-size: 25px; }
  .main-nav .service-choice { padding: 13px; font-size: 12px; }
  .catalog-card h2 { font-size: 26px; }
}
@media (max-width: 650px) {
  .service-catalog-nav { display: block; }
  .service-tabs { display: grid; grid-template-columns: 1fr 1fr; border-right: 0px; border-bottom: 1px solid rgb(221, 221, 221); padding: 0px 0px 20px; margin-bottom: 23px; gap: 6px; }
  .service-tab { font-size: 11px; min-height: 44px; padding: 10px; gap: 8px; }
  .service-tab > span:last-child { font-size: 8px; }
  .main-nav .service-category-heading { font-size: 25px; }
  .service-category-panel > p { font-size: 12px; margin: 12px 0px 20px; }
  .service-choices { grid-template-columns: 1fr; }
  .catalog-grid { grid-template-columns: 1fr; gap: 38px; }
  .catalog-card h2 { font-size: 28px; }
  .catalog-note { font-size: 12px; padding: 15px 17px; }
}

.company-contact-links{display:flex;flex-direction:column;margin:0 0 30px}.company-contact-links>a{display:grid;grid-template-columns:1fr auto;gap:8px 18px;padding:22px 0;border-bottom:1px solid currentColor}.company-contact-links>a>span:first-child{font-size:10px;letter-spacing:1.3px;text-transform:uppercase;grid-column:1/-1}.company-contact-links strong{font-size:clamp(20px,2.2vw,31px);font-weight:500;letter-spacing:-.6px;overflow-wrap:anywhere}.company-contact-links>a>span:last-child{font-size:24px}.contact-address-short{padding-bottom:25px}.contact-address-short>span{display:block;font-size:11px;line-height:1.7}.contact-address-short address{font-style:normal;line-height:1.6;font-size:18px;margin:12px 0}.contact-address-short>span:last-child{font-size:10px;opacity:.9}.footer-company{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;border-top:1px solid #333;padding:30px 0;color:#aaa;font-size:11px;line-height:1.8}.footer-company strong{color:white;font-size:13px}.footer-company p{max-width:470px;margin:10px 0 0}.footer-company>div:nth-child(2){display:flex;flex-direction:column;gap:10px}.footer-company a{color:white;overflow-wrap:anywhere}.footer-company address{font-style:normal;color:white;margin-bottom:13px}.company-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.company-page-grid>div{min-width:0}.company-page-grid .company-contact-links{margin-top:30px}.company-page-card{padding:35px;background:#f5f5f5}.company-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.3px;color:#666;line-height:1.6}.company-legal-name p{font-size:19px;line-height:1.6;margin:15px 0 28px}.company-numbers{display:flex;gap:45px;border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:20px 0;margin:0 0 28px}.company-numbers dt{font-size:10px;letter-spacing:1px;color:#666;margin-bottom:8px}.company-numbers dd{margin:0;font-size:17px}.company-address address{font-size:18px;font-style:normal;line-height:1.7;margin:15px 0 20px}.company-address address>span{font-size:12px;color:#666}.company-admin-note{font-size:10px!important;line-height:1.7!important;color:#777;overflow-wrap:anywhere}.company-admin-note a{text-decoration:underline;color:#7900ad}.contact-page-hint{font-size:12px;color:#666;line-height:1.8;margin-top:20px;max-width:380px}@media(max-width:900px){.company-page-grid{gap:35px}.company-page-card{padding:25px}.company-contact-links strong{font-size:25px}.footer-company{gap:25px;grid-template-columns:1.3fr 1fr}.footer-company>div:last-child{grid-column:1/-1}}@media(max-width:650px){.company-page-grid{grid-template-columns:1fr;gap:40px}.company-page-card{padding:25px 20px}.company-contact-links strong{font-size:25px}.company-page-grid .company-contact-links{margin-top:20px}.footer-company{grid-template-columns:1fr;gap:23px}.footer-company>div:last-child{grid-column:auto}.company-numbers{gap:30px}.company-legal-name p{font-size:17px}.contact-address-short address{font-size:17px}}

.contact-grid>div{min-width:0}@media(max-width:650px){.contact h2{font-size:clamp(36px,10.8vw,53px)}}

@media(max-width:650px){.sub-hero h1{font-size:clamp(35px,11vw,49px)}}

/* Offer overview, quote and verified-reference slots */
.offer-family{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;padding:44px 0;border-bottom:1px solid #ddd}.offer-family:first-child{padding-top:0}.offer-family h2{font-size:clamp(28px,3.7vw,46px);line-height:1.1;margin:20px 0}.offer-family h2 a{text-decoration:none;color:inherit}.offer-family p{max-width:380px;color:#656565}.offer-specialties{display:grid;align-content:center}.offer-specialties a{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #e8e8e8;color:inherit;text-decoration:none;font-weight:600}.offer-specialties a:hover{color:#8700bf}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.guide-card{padding:30px 0;border-top:2px solid #b300ff}.guide-card h2{font-size:30px;line-height:1.15;margin:26px 0}.guide-card h2 a{color:inherit;text-decoration:none}.guide-card p{color:#656565;line-height:1.7}.quote-section{background:#f3f0f6}.quote-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.quote-layout h2{font-size:clamp(40px,5.5vw,76px);line-height:1.03;letter-spacing:-.045em;margin:0 0 24px}.quote-layout>div>p{max-width:440px;line-height:1.7;margin-bottom:30px}.quote-points{list-style:none;padding:0;margin:0 0 28px}.quote-points li{display:flex;gap:28px;padding:22px 0;border-bottom:1px solid #d9d1de}.quote-points li>span{color:#8700bf;font-size:13px}.quote-points h3{margin:0 0 8px}.quote-points p{margin:0;line-height:1.6;color:#626262}.reference-placeholder{display:flex;gap:42px;border-top:1px solid #ddd;padding-top:36px}.reference-mark{font-size:130px;line-height:1;color:#b300ff}.reference-placeholder h3{font-size:clamp(24px,3vw,36px);margin:8px 0 20px}.reference-placeholder p{max-width:650px;line-height:1.7;color:#656565}.guide-all{margin-top:32px}@media(max-width:800px){.offer-family,.quote-layout{grid-template-columns:1fr;gap:24px}.guide-grid{grid-template-columns:1fr}.reference-placeholder{gap:20px}.reference-mark{font-size:80px}.offer-family{padding:32px 0}}

.company-socials{display:flex;flex-wrap:wrap;gap:12px 24px;margin:22px 0 28px}.company-socials a{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;padding:5px 0}.company-socials a:hover{opacity:.7}.company-socials a:focus-visible{outline:2px solid currentColor;outline-offset:5px}.footer-company .company-socials{margin:5px 0 0;gap:8px 20px}.footer-company .company-socials a{font-size:11px}

/* Compact footer: all company information in one shared column. */
.site-footer{padding:38px 0 22px}.footer-top{display:grid;grid-template-columns:minmax(260px,390px) auto;gap:50px;align-items:start;padding-bottom:28px}.footer-identity{min-width:0}.footer-identity>.brand{margin-bottom:18px}.footer-company{display:flex;flex-direction:column;gap:13px;border:0;padding:0;font-size:12px;line-height:1.65;color:#b6b2bc}.footer-company p.footer-legal{max-width:350px;margin:0;font-size:11px;line-height:1.7;color:#aaa5b2}.footer-company address{margin:0;color:#d8d4dd;font-size:12px}.footer-company>.footer-registration{display:flex;flex-direction:column;gap:0;font-size:11px;color:#aaa5b2}.footer-company>.footer-contact{display:flex;flex-direction:column;gap:4px}.footer-company>.company-socials{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0}.footer-company .company-socials a{font-size:12px;border:0;padding:0;gap:10px}.footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-top:12px;font-size:12px}.footer-links div{gap:12px}.footer-bottom{padding-top:17px;gap:20px}.footer-company>div:last-child{grid-column:auto}@media(max-width:900px){.footer-top{grid-template-columns:minmax(220px,320px) 1fr;gap:35px}.footer-links{grid-template-columns:1fr 1fr;gap:25px 20px;margin:0}.footer-company{gap:13px}}@media(max-width:650px){.footer-top{grid-template-columns:1fr;gap:30px;padding-bottom:24px}.footer-links{padding-top:24px;border-top:1px solid #28242c;grid-template-columns:1fr 1fr;margin:0}.footer-company{max-width:350px;gap:12px}.footer-bottom{gap:8px;padding-bottom:35px}}
/* Editorial service families: shared site chrome, specific material slots. */
.service-hero{background:#08070a;color:white;padding:30px 0 0}.service-hero .breadcrumbs{margin-bottom:50px}.service-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:70px;align-items:center}.service-hero h1{font-size:clamp(40px,5.6vw,78px);letter-spacing:-.055em;line-height:1.04;margin:24px 0}.service-hero h1 span{color:#bc5ce5}.service-hero .eyebrow{font-size:10px}.service-lead{max-width:580px;font-size:16px;line-height:1.8;color:#aaa1b2;margin:0 0 30px}.service-hero .text-link{color:#ddd}.service-image{margin:0;min-width:0}.service-image .media-slot{min-height:0;aspect-ratio:4/3}.service-image figcaption{display:flex;justify-content:space-between;gap:15px;font-size:10px;line-height:1.5;padding-top:13px;color:#817589}.service-hero-image{transform:rotate(2deg)}.service-hero-image .media-slot{background:#19121f;aspect-ratio:4/4.4}.service-hero-image figcaption{color:#8c7c99}.service-hero-baseline{border-top:1px solid #302637;margin-top:55px;padding:18px 0;display:flex;justify-content:space-between;gap:20px;color:#8c8097;font-size:9px;letter-spacing:1px;text-transform:uppercase}.service-output-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.service-output-cards article{border-top:2px solid #b300ff;padding:25px 0 10px}.service-output-cards .eyebrow{color:#9051a9;font-size:10px}.service-output-cards h3{font-size:clamp(20px,2vw,28px);font-weight:500;line-height:1.35;letter-spacing:-.6px;margin:25px 0 0}.service-draft-note{font-size:11px;color:#948799;margin:30px 0 0}.service-gallery-section{background:#f5f2f7}.service-gallery{display:grid;grid-template-columns:1.4fr 1fr;gap:35px;align-items:end}.service-gallery .service-image:first-child .media-slot{aspect-ratio:4/3}.service-gallery .service-image:nth-child(2) .media-slot{aspect-ratio:3/4}.service-gallery .media-slot{background:#e5dfeb;color:#665171}.service-gallery .slot-center small{color:#8d7a98}.service-case-link{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:40px;padding-top:20px;border-top:1px solid #dcd2e3}.service-case-link p{font-size:13px;color:#85708f}.service-brief{background:#121015;color:white}.service-brief-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.service-brief h2{font-size:clamp(38px,4.4vw,62px);line-height:1.05;letter-spacing:-.045em;margin:25px 0}.service-brief p{color:#a99bb2;line-height:1.8;font-size:14px}.service-brief .text-link{color:white;display:inline-block;margin-top:24px}.service-brief ol{list-style:none;padding:0;margin:0}.service-brief li{display:flex;gap:30px;border-top:1px solid #382a41;padding:24px 0}.service-brief li>span{font-size:11px;color:#ce6dff;padding-top:4px}.service-brief li p{margin:0}.service-conditions{display:grid;grid-template-columns:1fr 1fr;gap:100px}.service-conditions h2,.service-related h2{font-size:clamp(34px,3.8vw,54px);line-height:1.1;letter-spacing:-.04em;margin:24px 0}.service-conditions p{font-size:14px;line-height:1.8;color:#7f6e89;max-width:500px}.service-answers details{border-top:1px solid #ded5e4;padding:20px 0}.service-answers summary{cursor:pointer;font-weight:600;font-size:15px;line-height:1.5;padding-right:15px}.service-answers p{font-size:13px}.service-answers a{color:#8500ba;text-decoration:underline}.service-related{background:#f6f3f8}.service-related-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin:25px 0 35px}.service-related-list a{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid #ddd2e4;color:#302237;font-size:16px}.service-related-list a:hover{color:#9100cf}.service-end{background:#b300ff;color:white;padding:60px 0}.service-end>.wrap{display:flex;justify-content:space-between;align-items:center;gap:40px}.service-end h2{font-size:clamp(38px,4.5vw,64px);line-height:1.05;letter-spacing:-.045em;margin:20px 0 0}.service-end .btn{background:white;color:#171019}.service-editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 40px}.service-editorial-card{min-width:0}.service-editorial-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center}.service-editorial-copy{padding-top:25px}.service-editorial-copy .eyebrow{color:#9c74ae;font-size:10px}.service-editorial-copy h3{font-size:clamp(27px,3vw,43px);letter-spacing:-.04em;line-height:1.15;margin:20px 0}.service-editorial-copy p{font-size:14px;line-height:1.8;color:#82718c;max-width:520px;margin-bottom:25px}.service-family-filmy-reklamowe .service-hero-image .media-slot{aspect-ratio:16/11}.service-family-strony-internetowe .service-hero-image{transform:rotate(-2deg)}.service-family-strony-internetowe .service-hero-image .media-slot{aspect-ratio:5/4;border-top:18px solid #35213f}.service-family-dron .service-hero-image .media-slot{aspect-ratio:1}.service-family-branding .service-hero-image{transform:rotate(-3deg)}.service-family-prowadzenie-social-media .service-hero-image .media-slot{aspect-ratio:4/5}.service-family-kampanie-reklamowe .service-hero-image .media-slot{aspect-ratio:1}@media(max-width:1000px){.service-hero-grid{gap:35px}.service-hero h1{font-size:clamp(36px,5.8vw,65px)}.service-brief-grid,.service-conditions{gap:45px}.service-output-cards{gap:22px}.service-editorial-card:first-child{gap:30px}}@media(max-width:700px){.service-hero{padding-top:24px}.service-hero .breadcrumbs{margin-bottom:30px}.service-hero-grid{grid-template-columns:1fr;gap:35px}.service-hero h1{font-size:clamp(37px,10.8vw,62px)}.service-lead{font-size:14px}.service-hero-image{transform:none;max-width:100%;width:100%}.service-hero-image .media-slot{aspect-ratio:4/3}.service-hero-baseline{margin-top:35px;flex-wrap:wrap;gap:8px 20px;font-size:8px}.service-hero-baseline span:last-child{display:none}.service-output-cards{grid-template-columns:1fr;gap:10px}.service-output-cards article{padding:20px 0}.service-output-cards h3{font-size:23px;margin-top:15px}.service-gallery{gap:25px;grid-template-columns:1fr}.service-gallery .service-image:nth-child(2){max-width:82%;margin-left:auto;width:100%}.service-gallery .service-image:nth-child(2) .media-slot{aspect-ratio:4/3}.service-case-link{align-items:start;flex-direction:column;gap:8px;margin-top:25px}.service-brief-grid,.service-conditions{grid-template-columns:1fr;gap:35px}.service-brief .text-link{margin-top:10px}.service-related-list{grid-template-columns:1fr}.service-related-list a{font-size:15px}.service-end>.wrap{align-items:start;flex-direction:column;gap:30px}.service-editorial-grid{grid-template-columns:1fr;gap:40px}.service-editorial-card:first-child{grid-column:auto;display:block}.service-editorial-copy{padding-top:20px}.service-image figcaption{font-size:9px}.service-family-branding .service-hero-image,.service-family-strony-internetowe .service-hero-image{transform:none}}

.service-hero h1 .service-name{display:block;font-size:13px;line-height:1.6;font-weight:500;letter-spacing:.04em;color:#b99ac9;margin-bottom:20px}
/* Shop and client account belong to the main AsodiumArt website. */
.main-nav>a.nav-shop{display:inline-flex;align-items:center;gap:9px;border:1px solid #b300ff;border-radius:5px;padding:7px 12px;color:#dd93ff;background:#b300ff1c}.main-nav>a.nav-shop:hover{background:#b300ff;color:white}.main-nav>a.nav-shop:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.home-shop{background:#17101f;color:white;padding:85px 0}.home-shop-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:75px;align-items:center}.home-shop h2{font-size:clamp(38px,4.7vw,66px);line-height:1.07;letter-spacing:-.045em;margin:25px 0}.home-shop h2 span{color:#cb69ff}.home-shop p{font-size:15px;line-height:1.8;color:#aa98b5;max-width:510px}.home-shop .btn{margin:18px 0 0;background:#b300ff;color:white}.home-shop-image{position:relative}.home-shop-image .media-slot{aspect-ratio:4/3;min-height:0;background:#24152f}.shop-image-label{display:block;font-size:9px;letter-spacing:1.5px;color:#937ba0;padding-top:12px}.home-shop .access-note,.access-note{font-size:11px;line-height:1.7;color:#8d7b98}.home-panel{background:#f2edf6;padding:60px 0}.home-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.home-panel h2{font-size:clamp(36px,4vw,54px);line-height:1.07;letter-spacing:-.04em;margin:20px 0}.home-panel p{font-size:14px;color:#7b6c86;max-width:480px;line-height:1.8}.home-panel-actions{display:flex;align-items:flex-start;flex-direction:column;gap:20px}.home-panel-actions .access-note{max-width:340px}.account-entry{background:#f4f0f7;padding:48px 0 80px}.account-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.account-intro .breadcrumbs{margin-bottom:65px}.account-intro h1{font-size:clamp(40px,4.5vw,66px);line-height:1.06;letter-spacing:-.045em;margin:25px 0}.account-intro>p{max-width:460px;font-size:16px;line-height:1.8;color:#80708b}.account-intro ul{list-style:none;padding:0;margin:30px 0}.account-intro li{padding:9px 0;font-size:13px;color:#63506f}.account-intro li:before{content:'\2197\FE0E';color:#a000df;margin-right:15px}.login-card{background:white;padding:36px;border:1px solid #e4dbe9;border-radius:12px;max-width:520px;width:100%;margin:25px 0}.login-card h2{font-size:32px;letter-spacing:-1px;margin:18px 0 12px}.login-card>p{font-size:13px;line-height:1.8;color:#8b7897}.login-demo-notice{font-size:11px;background:#f5ecfa;border-left:2px solid #b300ff;padding:13px 15px;line-height:1.7;color:#80528e;margin:24px 0}.login-card fieldset{padding:0;margin:0;border:0;min-width:0}.login-card label{display:flex;flex-direction:column;gap:8px;font-size:12px;margin:18px 0}.login-card input{font:inherit;border:1px solid #ded4e5;border-radius:5px;padding:12px;background:#f8f6fa;color:#9b8da5;width:100%;min-width:0}.login-card fieldset .btn{width:100%;opacity:.5;cursor:not-allowed;margin-top:5px;justify-content:center}.login-divider{border-top:1px solid #e7deed;margin:28px 0 20px;padding-top:18px;color:#b09abb;font-size:9px;letter-spacing:1.5px}.login-card>.text-link{font-size:13px}.login-card .access-note{margin-top:20px;font-size:10px}.account-entry-grid>*{min-width:0}@media(max-width:950px){.home-shop-grid{gap:35px}.account-entry-grid{gap:35px}.login-card{padding:25px}.home-panel-grid{gap:35px}}@media(max-width:650px){.home-shop{padding:55px 0}.home-shop-grid,.home-panel-grid,.account-entry-grid{grid-template-columns:1fr;gap:30px}.home-shop h2{font-size:39px}.home-shop p{font-size:14px}.home-panel{padding:45px 0}.home-panel-actions{gap:16px}.account-entry{padding:28px 0 50px}.account-intro .breadcrumbs{margin-bottom:30px}.account-intro h1{font-size:40px}.login-card{margin:0;max-width:none}.account-intro>p{font-size:14px}.main-nav>a.nav-shop{align-self:flex-start}.main-nav .nav-client-mobile{display:block}}@media(min-width:901px){.main-nav .nav-client-mobile{display:none}}

.account-intro .breadcrumbs,.account-intro .breadcrumbs a{color:#786784}.account-intro .breadcrumbs a:hover{color:#8500b8}

/* Use only the supplied A symbol as the brand mark. */
.site-header .brand,.site-footer .brand{gap:0}.site-header .brand img{width:48px;height:48px}.site-footer .brand img{width:50px;height:50px}@media(max-width:650px){.site-header .brand img{width:42px;height:42px}}

/* Decorative rotation with a stable visible offer and no layout shift between phrases. */
.hero-rotator{font-size:clamp(42px,5.8vw,80px);font-weight:650;line-height:1.04;letter-spacing:-.055em;margin:18px 0 22px}.hero-rotator-fixed{display:block}.hero-rotator-window{display:flex;align-items:flex-start;min-height:2.15em;margin-top:6px;color:#b300ff;max-width:100%;overflow:hidden}#hero-service-word{display:block;transition:opacity .2s ease,transform .2s ease;overflow-wrap:normal}#hero-service-word.is-changing{opacity:0;transform:translateY(10px)}.hero h1.hero-offer-title{font-size:clamp(16px,1.5vw,20px);font-weight:500;line-height:1.5;letter-spacing:-.02em;margin:0 0 16px;color:#e6ddea}.hero-motion-toggle{border:0;background:none;color:#998ba3;font:inherit;font-size:10px;padding:5px 0;cursor:pointer;display:flex;gap:10px;align-items:center;margin:0 0 15px}.hero-motion-toggle[hidden]{display:none}.hero-motion-toggle:hover{color:white}.hero-motion-toggle:focus-visible{outline:2px solid #b300ff;outline-offset:5px}@media(max-width:650px){.hero-rotator{font-size:clamp(42px,11.5vw,65px);margin:20px 0}.hero h1.hero-offer-title{font-size:16px}.hero-offer-title br{display:none}.hero-rotator-window{min-height:2.2em}}@media(prefers-reduced-motion:reduce){#hero-service-word{transition:none}}

/* Compact single-line service rotation, without a visible playback control. */
.hero-rotator{margin-bottom:18px}.hero-rotator-window{min-height:0;height:1.12em;align-items:center;margin-top:2px}#hero-service-word{white-space:nowrap;line-height:1.08;max-width:100%;transition:opacity .15s ease,transform .15s ease}.hero-motion-toggle{display:none}@media(max-width:650px){.hero-rotator-window{min-height:0;height:1.12em}.hero-rotator{margin-bottom:18px}}@media(prefers-reduced-motion:reduce){#hero-service-word{transition:none}}

.wp-site-blocks{padding:0}.wp-block-post-content{margin:0}.wp-site-blocks>header,.wp-site-blocks>footer{margin:0}.wp-block-asodium-layout{margin-block:0}.asodium-editor-layout{border:1px dashed #d9c6e7;padding:12px;margin:8px 0}.asodium-editor-caption{font-size:10px;color:#876093;letter-spacing:1px}.asodium-editor-text{min-height:20px}.asodium-editor-media{padding:25px;background:#f4eff7;border:1px dashed #ae83c7;text-align:center}.asodium-editor-media img{max-width:100%;max-height:350px;object-fit:contain}.wp-block-asodium-media .media-slot{min-height:220px}.asodium-media-image{position:relative;width:100%;height:100%;min-height:inherit;aspect-ratio:inherit;object-fit:cover;display:block}.media-slot:has(>.asodium-media-image){padding:0;overflow:hidden}.brand>.wp-block-asodium-logo{display:flex}.woocommerce-area{max-width:1320px;padding:60px 42px;margin:auto}.woocommerce-area h1{font-size:42px;line-height:1.1;margin:0 0 30px}.woocommerce-area .woocommerce{margin:30px 0}.account-message{border-left:3px solid #b300ff;padding:18px;background:#f6eefb;margin:25px 0}.woocommerce-area input:not([type=checkbox]){padding:12px;border:1px solid #d9ccdf}.woocommerce-area button,.woocommerce-area .button{background:#b300ff;color:white;padding:12px 18px;border:0}.woocommerce-area label{display:block}.woocommerce-area a{text-decoration:underline}.woocommerce-area .woocommerce-MyAccount-navigation ul{padding:0;list-style:none}.woocommerce-area .woocommerce-MyAccount-navigation li{padding:10px 0}.woocommerce-area .woocommerce-MyAccount-content{min-width:0}@media(max-width:650px){.woocommerce-area{padding:40px 22px}.woocommerce-area h1{font-size:34px}}

.account-shortcuts,.aa-panel-nav{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0 35px}.account-shortcuts a,.aa-panel-nav a{padding:10px 15px;background:#f1e8f8;border:1px solid #e0cde9;border-radius:6px;text-decoration:none;font-size:13px;color:#762894}.client-dashboard>section{padding:35px 0;border-top:1px solid #e6dceb}.client-dashboard h2{font-size:30px;margin:10px 0 25px}.aa-projects,.aa-assets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.aa-project-card,.aa-file{display:block;border:1px solid #e0d4e8;background:#faf7fc;padding:25px;border-radius:12px;text-decoration:none!important}.aa-project-card h2{font-size:24px}.aa-project-card p,.aa-file p{color:#82708e;font-size:13px}.aa-notice,.aa-empty{background:#f4edf8;padding:22px;border-left:3px solid #b300ff;margin:20px 0}.aa-form{margin:20px 0;max-width:750px}.aa-form label{display:flex;flex-direction:column;gap:7px;font-size:13px}.aa-form input:not([type=checkbox]),.aa-form textarea,.aa-form select{width:100%;padding:12px;border:1px solid #d7c8e0;border-radius:5px;background:white;font:inherit}.aa-form .button{background:#b300ff;color:white;padding:12px 18px;border:0;border-radius:5px}.aa-check{display:flex!important;flex-direction:row!important;gap:10px}.aa-honey{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.aa-message{background:#f7f1fa;padding:20px;margin:18px 0;border-radius:8px}.client-dashboard details{border-top:1px solid #e0d3e8;padding:20px 0}.client-dashboard summary{font-weight:600;cursor:pointer}.login-card #loginform label{font-size:12px;display:block}.login-card #loginform input:not([type=checkbox]){width:100%;padding:12px;margin-top:7px}.login-card .login-submit input{background:#b300ff;color:white;border:0;padding:12px!important;cursor:pointer}.login-card .login-remember input{width:auto}.woocommerce .products li.product{border:1px solid #e4d9eb;padding:20px!important;border-radius:10px}.woocommerce .products li.product img{object-fit:contain}.woocommerce table.shop_table{border-color:#dfd4e7;border-radius:8px}.woocommerce a.button,.woocommerce button.button{background:#b300ff!important;color:white!important}.woocommerce .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.woocommerce .woocommerce-MyAccount-navigation li a{display:block;padding:10px 12px;border-bottom:1px solid #e3d9e9}.woocommerce .woocommerce-MyAccount-content{overflow-x:auto}@media(max-width:650px){.aa-projects,.aa-assets{grid-template-columns:1fr}.client-dashboard h2{font-size:25px}}

/* Compatibility for legacy service cards 08–11 without a service-top wrapper. */
.services-grid > a.service:not(:has(> .service-top)){padding-top:90px}
.services-grid > a.service:not(:has(> .service-top)) > .service-num{position:absolute;top:39px;left:0}
.services-grid > a.service:not(:has(> .service-top)):not(:nth-child(3n + 1)) > .service-num{left:27px}
.services-grid > a.service:not(:has(> .service-top)) > span[aria-hidden="true"]:last-child{position:absolute;top:30px;right:26px;display:flex;align-items:center;justify-content:center;width:29px;height:29px;border:1px solid #ccc;border-radius:50%;font-size:16px;transition:.2s}
.services-grid > a.service:not(:has(> .service-top)):hover > span[aria-hidden="true"]:last-child{background:#b300ff;border-color:#b300ff;color:white;transform:rotate(45deg)}
@media(max-width:900px){.services-grid > a.service:not(:has(> .service-top)) > .service-num,.services-grid > a.service:not(:has(> .service-top)):not(:nth-child(3n + 1)) > .service-num{left:0}.services-grid > a.service:not(:has(> .service-top)):nth-child(2n) > .service-num{left:25px}}
@media(max-width:650px){.services-grid > a.service:not(:has(> .service-top)){padding-top:69px!important}.services-grid > a.service:not(:has(> .service-top)) > .service-num,.services-grid > a.service:not(:has(> .service-top)):nth-child(2n) > .service-num,.services-grid > a.service:not(:has(> .service-top)):not(:nth-child(3n + 1)) > .service-num{top:32px;left:0}.services-grid > a.service:not(:has(> .service-top)) > span[aria-hidden="true"]:last-child{top:23px;right:0}}

/* Client marks: originals preserved; monochrome presentation and optical sizing. */
.brand-logos .brand-client{flex:0 0 25%;min-width:240px;aspect-ratio:auto;height:184px;position:relative;overflow:hidden;background:#fff;border:0;}
.brand-client .brand-art{display:block;position:relative;overflow:hidden;flex:none;max-width:calc(100% - 42px);}
.brand-client .brand-art img{position:absolute;max-width:none!important;max-height:none!important;padding:0!important;object-fit:initial!important;opacity:.86;}
.brand-client:hover .brand-art img{opacity:1;}
@media(max-width:700px){.brand-logos .brand-client{flex-basis:65%;min-width:225px;height:170px;}}
@media(prefers-reduced-motion:reduce){.brand-logos .brand-client{flex:1 0 240px;}}

.brand-client[data-brand="gmina-darlowo"] .brand-art img,.brand-client[data-brand="dreamhouse"] .brand-art img{filter:grayscale(1) brightness(.55) contrast(20)!important;}

/* Two compact rows of partner logos, with no frames or visible scrollbar. */
.brand-logos{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,132px);grid-auto-columns:20%;gap:8px 0;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;align-items:center}
.brand-logos .brand-client{width:100%;min-width:0;height:132px;display:flex;align-items:center;justify-content:center;aspect-ratio:auto}
.brand-client .brand-art{transform:scale(.78);max-width:calc(100% - 22px)}
.brand-client .brand-art img{mix-blend-mode:multiply}
@media(max-width:900px){.brand-logos{grid-auto-columns:25%}}
@media(max-width:650px){.brand-logos{grid-auto-columns:50%;grid-template-rows:repeat(2,115px)}.brand-logos .brand-client{height:115px}.brand-client .brand-art{transform:scale(.72)}}
@media(prefers-reduced-motion:reduce){.brand-logos{grid-auto-flow:row;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-columns:auto;overflow:visible}.brand-logos .brand-client{min-width:0}@media(max-width:650px){.brand-logos{grid-template-columns:repeat(2,minmax(0,1fr))}}}

.brand-logos{grid-template-columns:none}.brand-logos .brand-client{max-width:none}

@media(min-width:901px){.brand-logos{grid-auto-columns:calc(100% / 7)}}
.brand-logos [data-brand="gmina-darlowo"] .brand-art img,.brand-logos [data-brand="dreamhouse"] .brand-art img{filter:grayscale(1) brightness(.65) contrast(20)!important}

/* Refined logo gallery: larger optical sizes and preserved tonal details. */
.brands{padding:55px 0 48px}.brands-heading{margin-bottom:26px}
.brand-logos{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-template-rows:repeat(2,145px);grid-auto-columns:20%;gap:12px 0;overflow-x:auto;overflow-y:hidden;align-items:center}
.brand-logos .brand-client{height:145px;width:100%;min-width:0;max-width:none;background:#fff;display:flex;justify-content:center;align-items:center;border:0;box-shadow:none}
.brand-client .brand-art{transform:none;max-width:calc(100% - 32px)}
.brand-client .brand-art img{opacity:.9;mix-blend-mode:multiply}
.brand-logos [data-brand="gmina-darlowo"] .brand-art img{filter:grayscale(1) brightness(.74) contrast(1.5)!important}
.brand-logos [data-brand="dreamhouse"] .brand-art img{filter:grayscale(1) brightness(.8) contrast(1.5)!important}
@media(max-width:1000px){.brand-logos{grid-auto-columns:25%}}
@media(max-width:650px){.brand-logos{grid-auto-columns:50%;grid-template-rows:repeat(2,130px);gap:5px 0}.brand-logos .brand-client{height:130px}.brand-client .brand-art{transform:scale(.88);max-width:calc(100% - 12px)}}
@media(prefers-reduced-motion:reduce){.brand-logos{grid-auto-flow:row;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-columns:auto;overflow:visible}@media(max-width:650px){.brand-logos{grid-template-columns:repeat(2,minmax(0,1fr))}}}

.brand-logos{mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent)}
@media(prefers-reduced-motion:reduce){.brand-logos{mask-image:none;-webkit-mask-image:none}}

/* No fading, shadows, or dimming on partner marks. */
.brand-logos{mask-image:none!important;-webkit-mask-image:none!important}
.brand-logos .brand-client,.brand-logos .brand-art,.brand-logos .brand-art img{box-shadow:none!important;text-shadow:none!important;opacity:1!important}
.brand-logos .brand-art img{mix-blend-mode:normal}

/* Original partner brand colors. */
.brand-logos .brand-client .brand-art img{filter:none!important;mix-blend-mode:normal!important;opacity:1!important}

/* White backdrops blend into the section; white Yasumi mark becomes dark. */
.brand-logos .brand-client .brand-art img{mix-blend-mode:multiply!important}
.brand-logos .brand-client[data-brand="yasumi-darlowo"] .brand-art img{filter:invert(1) grayscale(1) contrast(2)!important}

.brand-logos [data-brand="darlowo"] .brand-cutout{width:110px!important}.brand-logos [data-brand="kowalewice"] .brand-cutout{width:108px!important}.brand-logos [data-brand="junior-darlowo"] .brand-cutout{width:108px!important}.brand-logos [data-brand="darlovia"] .brand-cutout{width:125px!important}

/* All partner logos visible, static responsive grid. */
.brand-logos{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;gap:18px 12px;overflow:visible!important;mask-image:none!important;-webkit-mask-image:none!important;touch-action:auto}
.brand-logos .brand-client{height:112px!important;min-width:0!important;width:100%;overflow:visible}
.brand-logos .brand-client .brand-art{transform:scale(.82)!important;max-width:calc(100% - 8px)}
.brand-logos:focus-visible{outline:none}
@media(max-width:1000px){.brand-logos{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px 8px}}
@media(max-width:650px){.brand-logos{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px 3px}.brand-logos .brand-client{height:100px!important}.brand-logos .brand-client .brand-art{transform:scale(.84)!important;max-width:calc(100% - 8px)}}

/* Mobile: swipe manually through two rows; desktop stays static. */
@media(max-width:650px){
.brand-logos{grid-template-columns:none!important;grid-template-rows:repeat(2,110px)!important;grid-auto-flow:column!important;grid-auto-columns:42%!important;overflow-x:auto!important;overflow-y:hidden!important;gap:8px 6px;overscroll-behavior-x:contain;scroll-snap-type:x proximity;touch-action:pan-x pan-y;scrollbar-width:none}
.brand-logos::-webkit-scrollbar{display:none}
.brand-logos .brand-client{height:110px!important;scroll-snap-align:start}
.brand-logos:focus-visible{outline:2px solid #b300ff;outline-offset:5px}
}

.contact-meeting-note{font-size:13px;line-height:1.7;max-width:440px;margin:14px 0 18px}.footer-meeting-note{font-size:11px;line-height:1.7;color:#aaa5b2;max-width:320px;margin:0}

/* Stopka v2: cztery kolumny, ikony social i kontaktu jako maski SVG (bez emoji). */
.site-footer--v2{display:block;margin:0;background:#08070a;color:#d8d4dd;padding:70px 0 0;border-top:1px solid #1d1822}
.site-footer--v2 .footer-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr);gap:48px;padding-bottom:56px}
.site-footer--v2 .footer-about .brand{display:inline-flex}
.site-footer--v2 .footer-about .brand img{width:52px;height:52px}
.site-footer--v2 .footer-tagline{max-width:300px;margin:22px 0 26px;font-size:14px;line-height:1.75;color:#a99fb2}
.site-footer--v2 .footer-socials{display:flex;gap:12px}
.site-footer--v2 .footer-social{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;border:1px solid #3a3042;color:#fff;background:#141118;transition:background .2s,border-color .2s,transform .2s}
.site-footer--v2 .footer-social:hover,.site-footer--v2 .footer-social:focus-visible{background:#b300ff;border-color:#b300ff;transform:translateY(-2px)}
.site-footer--v2 .social-icon,.site-footer--v2 .contact-icon{display:inline-block;flex:none;background:currentColor;-webkit-mask:var(--icon) center/contain no-repeat;mask:var(--icon) center/contain no-repeat}
.site-footer--v2 .social-icon{width:20px;height:20px}
.site-footer--v2 .social-icon--facebook{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13.5 22v-8.2h2.8l.4-3.2h-3.2V8.5c0-.9.3-1.6 1.6-1.6h1.7V4.1c-.3 0-1.3-.1-2.5-.1-2.5 0-4.2 1.5-4.2 4.3v2.4H7.3v3.2h2.8V22h3.4z'/%3E%3C/svg%3E")}
.site-footer--v2 .social-icon--instagram{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4.2'/%3E%3Ccircle cx='17.4' cy='6.6' r='1' fill='black' stroke='none'/%3E%3C/svg%3E")}
.site-footer--v2 .footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-width:0}
.site-footer--v2 .footer-title{margin:0 0 8px;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#cf73ff;font-weight:700}
.site-footer--v2 .footer-col>a{color:#d8d4dd;font-size:14px;text-decoration:none;transition:color .2s}
.site-footer--v2 .footer-col>a:hover{color:#cf73ff}
.site-footer--v2 .footer-contact-link{display:flex;align-items:flex-start;gap:12px;font-style:normal;line-height:1.6;overflow-wrap:anywhere}
.site-footer--v2 .contact-icon{width:16px;height:16px;margin-top:3px;color:#b300ff}
.site-footer--v2 .contact-icon--mail{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3.5 6.5 8.5 7 8.5-7'/%3E%3C/svg%3E")}
.site-footer--v2 .contact-icon--phone{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1z'/%3E%3C/svg%3E")}
.site-footer--v2 .contact-icon--pin{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E")}
.site-footer--v2 address.footer-contact-link{color:#a99fb2;font-size:14px}
.site-footer--v2 .footer-note{margin:0;font-size:12px;line-height:1.6;color:#7f7488;max-width:260px}
.site-footer--v2 .footer-cta{margin-top:10px;background:#b300ff;color:#fff}
.site-footer--v2 .footer-cta:hover{background:#fff;color:#171019}
.site-footer--v2 .footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 30px;border-top:1px solid #241e29;padding:22px 0 28px;font-size:11px;line-height:1.6;color:#7f7488}
.site-footer--v2 .footer-bottom a{color:#a99fb2}
.site-footer--v2 .footer-bottom a:hover{color:#cf73ff}
@media(max-width:1000px){.site-footer--v2 .footer-grid{grid-template-columns:1fr 1fr;gap:44px 32px}}
@media(max-width:600px){.site-footer--v2{padding-top:50px}.site-footer--v2 .footer-grid{grid-template-columns:1fr 1fr;gap:38px 20px;padding-bottom:40px}.site-footer--v2 .footer-about,.site-footer--v2 .footer-contact-col{grid-column:1/-1}.site-footer--v2 .footer-col>a{font-size:15px}.site-footer--v2 .footer-bottom{flex-direction:column;padding-bottom:34px}}
/* Mapa obszaru działania (strona główna). Ląd: Natural Earth 1:10m, domena publiczna. */
.region{background:#08070a;color:#fff;overflow:hidden}
.region .section-label{color:#a99fb2}
.region .section-label .number{color:#cf73ff}
.region-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:60px;align-items:center}
.region h2{font-size:clamp(38px,4.6vw,64px);line-height:1.04;letter-spacing:-.045em;margin:24px 0}
.region h2 .light{color:#bc5ce5}
.region-copy>p{font-size:15px;line-height:1.8;color:#a99fb2;max-width:470px;margin:0 0 26px}
.region-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 30px;padding:0;list-style:none}
.region-stats li{border-top:2px solid #b300ff;padding-top:14px}
.region-stats strong{display:block;font-size:clamp(24px,2.4vw,34px);letter-spacing:-.04em;font-weight:600}
.region-stats span{display:block;font-size:11px;line-height:1.5;color:#8f849a;margin-top:4px}
.region-towns{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 30px}
.region-towns span{font-size:12px;border:1px solid #2f2737;border-radius:99px;padding:6px 12px;color:#d8d4dd;background:#110e14}
.region-towns span small{color:#a35bd0;margin-left:6px;font-size:11px}
.region-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px}
.region-actions .btn{background:#b300ff;color:#fff}
.region-actions .text-link{color:#ddd}
.region-map{position:relative;aspect-ratio:600/430;border-radius:18px;border:1px solid #241e29;background:radial-gradient(circle at 50.0% 50.0%,#1c1026 0,#0b0a0e 60%);overflow:hidden;isolation:isolate}
.region-map:before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 430'%3E%3Cpath fill='%2318151d' stroke='%232a2531' stroke-width='.6' d='M640 131.1L636.5 129.1L630 128.9L627.6 127.1L623.6 120.2L621.6 118.3L620 118.5L614.6 122.9L614.4 119.0L615.8 118.6L616.2 117.5L614.1 113.1L614 109.5L613.3 109.4L609.5 112.9L609.2 112.0L613.4 104.1L611.8 92.7L610.2 90.7L609.9 85.5L607.5 79.2L606.8 75.1L602.1 67.7L601.2 62.8L600.2 53.4L600.2 48.5L601.1 44.7L600.8 31.3L609.6 29.9L612.2 21.2L613.8 18.7L618.5 14.4L620.5 13.4L624.5 12.9L635.9 5.1L640 4.9ZM596.6 120.2L592.4 119.1L597.3 110.8L602.6 95.2L603.7 84.0L602.8 70.2L604.9 72.7L605.8 77.6L605.8 88.7L605.1 96.1L603 101.5L604.2 103.7L602.1 107.0L599.8 114.0L596.6 118.1L596.6 120.2ZM640 220.0L511.8 213.2L507.3 210.9L515.3 203.3L521.7 195.2L526.1 187.6L526.1 185.3L530.1 175.8L527.4 162.8L528.7 157.8L531 154.5L532.3 154.1L534.7 156.3L545.9 155.2L556.2 156.5L558.9 155.9L563.8 153.3L573.6 145.1L585.8 130.4L592.4 119.1L596.6 120.5L593.5 122.9L593.2 124.1L591.7 124.6L589.3 129.2L585.9 134.6L577.1 144.9L567.1 153.5L566.9 154.5L568.7 157.1L582 156.4L584.7 157.1L588.3 160.4L595.3 161.7L599.9 161.2L600.9 160.0L602.4 161.7L603.2 161.5L604.2 160.2L612.2 157.3L613.1 154.8L611.5 149.1L609.1 131.5L609.2 128.1L610.4 126.7L611.8 128.1L614.1 127.7L614.9 126.0L614.6 122.9L620 118.5L621.6 118.3L623.6 120.2L627.6 127.1L630 128.9L636.5 129.1L640 131.1ZM-40 470.0L-40 259.9L-38.5 260.0L-37.1 262.9L-34.8 263.6L-34.7 267.8L-31.4 268.3L-28.7 266.0L-27.2 268.3L-24.5 268.3L-22 271.8L-20.7 272.2L-19.5 267.0L-19.8 265.2L-18.1 263.8L-18.5 261.5L-16.3 259.2L-16.8 257.7L-14.6 258.4L-13.2 257.4L-12.1 254.4L-9.9 252.4L-9.9 249.5L-7.8 245.9L-5.7 244.5L-3.2 244.1L2.2 245.1L17.7 241.7L20.1 240.2L20.3 249.1L21.8 250.9L20.5 245.5L21.2 244.2L23.1 243.2L23.6 241.7L20.9 242.4L21.4 241.4L26.5 234.7L33.1 231.1L36.5 227.9L47.6 208.1L49 207.4L48.5 208.1L49.9 210.4L52.7 211.5L67.4 211.5L69.9 212.7L71.4 211.8L73.2 212.3L74 213.5L72.4 215.0L70.8 215.4L63.8 214.8L59.4 213.5L57.8 215.0L54.8 214.7L53.8 216.5L53.4 215.7L52.1 216.5L52.4 217.9L53.4 218.1L52.9 218.8L50.3 218.3L48.5 220.3L46.2 218.4L42.8 218.6L41.5 221.6L41.8 223.4L40.1 222.6L39.7 226.0L37.9 227.2L39 230.9L38.3 231.8L41.1 233.8L42.7 234.2L44.1 233.3L43.1 233.4L41 231.8L41.4 230.5L45 227.2L45.4 224.8L50.7 221.9L49.4 221.1L49.4 220.3L51.6 220.3L51.6 219.6L52.8 220.7L54.7 220.2L58.3 218.1L57.8 216.5L60 215.6L60.9 215.7L60.9 216.5L59.2 217.7L58.7 220.3L60 217.3L62 219.7L62.7 218.8L64.2 219.5L65.4 218.1L67.4 221.9L69.7 221.9L71.1 221.1L72.9 217.3L77.2 214.0L79.7 213.0L81.4 213.5L80.5 214.3L81 217.1L85.3 220.3L84.1 222.5L84.4 224.2L86.2 227.2L86.6 230.6L90.2 231.0L90.2 231.8L88.4 232.5L90.6 232.3L97.9 235.7L100 240.1L101.8 241.7L100 243.2L101.6 243.2L104 241.9L105.3 242.4L104 244.7L104.7 245.2L106.2 244.7L108.3 249.5L110.5 251.6L112 251.6L112 250.9L110.2 247.8L118.2 246.2L125.3 242.4L125.4 243.5L124.4 244.0L124.4 244.7L131.5 250.1L129.2 256.6L127.5 257.7L130.8 261.9L133.5 263.3L134.1 266.7L137.8 268.1L136.8 271.4L132.2 275.3L131.5 276.7L132.1 278.1L135 279.4L137.4 283.0L138.1 282.8L142.9 286.9L145 287.4L146.3 289.0L148.4 289.0L150.8 290.3L156 290.7L157.8 290.1L159.1 288.2L161.1 289.4L160.7 292.0L157.7 294.2L161 295.1L160.8 300.0L163.2 306.5L163.6 316.4L167.2 323.6L170 341.9L172.5 344.9L168.6 351.8L169.2 358.3L166.2 367.5L160.4 372.8L153.3 377.4L154.6 384.5L153.7 388.0L152 389.5L153.8 392.0L157.9 393.2L160 395.8L168.7 402.1L171.9 407.8L173.8 409.1L175.7 411.8L179.5 413.4L185.7 420.0L183.4 426.6L184.9 428.9L182.2 434.1L178.9 437.2L179.2 441.6L182.1 449.7L181.8 451.8L183.2 453.5L189.1 456.0L190.1 457.9L190 460.2L188.8 461.9L189.7 464.2L188.5 470.0ZM157.5 268.6L156.4 271.6L155.3 272.1L156.9 275.3L149.6 276.1L147.1 275.2L143.7 278.0L139.9 279.0L135.8 279.1L133.6 278.4L132.4 276.7L139.5 272.9L140 269.7L137.6 265.1L137.7 262.2L142.2 262.9L141.3 268.3L143.1 266.0L145.7 266.0L144.9 267.6L147.1 268.3L146.5 266.9L147.4 264.1L147.2 261.2L146.3 259.3L144.9 260.0L142.7 255.5L140.4 254.3L139.1 254.6L138.5 255.5L139.1 257.7L137.3 260.4L134.6 261.5L135.9 257.7L135.6 256.3L132.5 257.5L130.6 259.7L129.3 259.2L131.6 253.4L131.9 250.5L131.4 248.8L127.9 244.7L129.5 242.4L130.7 241.9L131.9 242.4L134.6 248.6L136.3 250.3L145 255.1L157.5 268.6ZM-26.1 263.8L-25.1 261.2L-22.8 259.2L-20.1 258.3L-18.1 259.2L-20.7 266.0L-21.5 266.1L-21.1 263.3L-22 262.0L-22 264.5L-23 265.3L-26.1 263.8ZM-16.2 253.4L-15.8 252.3L-10.5 249.3L-11.6 250.8L-14.6 253.6L-15.4 255.4L-16.2 253.4ZM-33.8 208.5L-30 215.7L-38.2 214.3L-39.4 215.0L-38.8 215.7L-40 215.8L-40 203.2L-37 204.5L-33.8 208.5ZM88.4 195.2L86.9 196.5L85.8 202.8L84 205.1L83.6 209.6L83.3 205.6L85.3 198.3L86.3 194.7L88.9 194.5L89.3 196.4L88.8 196.0L88.4 197.5L88.4 195.2ZM124.4 218.1L127.2 222.8L128.8 223.4L126.4 226.5L126 230.8L123.9 230.2L125.3 229.9L125.3 227.9L123.2 229.0L121.3 228.7L121.3 227.9L123.7 226.9L125.3 224.8L121.9 225.1L119.1 226.4L123.9 223.4L123.9 222.6L121.3 222.5L119.8 224.0L118 222.6L111.5 223.4L106.9 227.2L105.5 230.0L102.4 231.1L102.2 234.1L103.1 233.3L102.7 232.5L106.2 232.2L106.6 235.9L105.5 236.4L101.6 235.3L99.3 233.8L100.9 230.2L99.1 231.8L99.5 232.5L96.5 233.2L92.8 231.1L92.1 230.1L92.4 228.7L91.5 228.4L88.8 229.5L88.8 227.8L90.7 227.9L90.7 227.2L86.6 224.1L88.8 219.8L90.4 219.0L92.4 220.3L92.9 219.6L93.6 220.3L96.4 218.8L94.7 218.0L94.6 215.0L92.9 213.8L89.3 214.3L90.9 211.4L96 209.6L96.8 208.1L94.3 206.9L93.8 205.9L94.2 204.3L91.2 205.2L89.9 204.0L89.4 201.6L88.4 201.4L94.9 199.9L97.8 201.7L98.4 203.9L99.2 202.3L98.7 200.5L100.8 198.0L103.1 196.7L101.3 200.5L102.7 201.4L101.8 203.5L104 202.6L104.4 201.4L102.7 200.5L103.6 198.9L106.2 203.4L105.8 205.1L107 206.9L112 207.4L111.5 206.6L112.9 203.5L111.5 199.8L112.9 198.9L112.9 198.3L110.7 199.8L107.7 199.8L106.6 197.8L105 197.3L103.1 193.7L96.9 199.4L95.6 198.9L95.8 195.6L97.5 192.9L98.2 190.3L98 189.8L93.7 191.1L94.1 189.1L95.6 187.8L106.3 185.2L108 186.1L108 186.8L104.5 189.4L104 191.0L104.7 194.5L106.7 196.7L109.4 197.6L117.8 196.0L120.6 196.6L122.6 198.8L123 201.6L121.3 204.3L117 207.6L116.4 209.3L117.2 213.1L118.6 215.7L124.4 218.1ZM298 -40.0L297.5 -34.2L295.6 -33.1L293 -34.4L289.4 -32.1L287.8 -28.4L286.9 -20.5L285 -20.4L284.2 -17.2L279.6 -7.3L275.9 11.0L274.8 11.9L273.7 14.9L269.1 19.9L263.9 29.7L259.8 27.5L262.2 21.6L260.9 20.7L256.1 21.9L254.9 19.9L254.2 20.4L250.7 17.7L247 21.5L246 19.9L247.3 16.7L246.7 16.1L240.6 19.7L239.8 22.5L236.8 19.4L234.9 19.3L233.1 21.4L232.4 23.6L229.5 23.8L227.8 22.9L229.6 22.3L227.8 18.4L226.4 20.3L223.9 21.9L221.2 22.3L218.7 20.6L217.2 21.4L214.7 21.4L213.6 18.4L210.9 19.1L211.9 22.3L205.7 20.1L202.6 21.4L198.9 21.1L199 22.9L197.7 23.5L194.1 20.7L190.9 20.7L189.4 21.4L188.3 22.9L188.1 26.3L189.5 27.2L193.7 35.9L190.3 39.1L189.6 37.4L188.3 37.4L187.5 38.7L183.5 38.1L184.3 36.6L183.3 35.2L183 32.9L181.6 34.5L180.8 32.9L174.9 35.8L170.3 41.9L166.4 44.5L164.9 48.7L161.5 51.1L159.1 54.6L157.4 59.2L156.8 63.8L156.6 69.8L157.3 71.7L161.7 76.3L162.4 81.3L167.1 87.9L167.7 89.9L166.5 93.8L161.1 99.2L158.1 104.5L155.7 107.1L148.1 107.1L141.1 103.1L137.3 102.2L133.7 103.7L129.7 103.0L119.9 104.0L116.8 107.3L114 106.8L111.8 107.4L103.9 112.1L97.3 112.1L86.6 108.3L81.1 107.6L77.8 105.7L74.8 107.4L71.8 106.8L68.3 108.0L68.1 106.0L70 102.2L73 104.1L74.6 104.0L76.9 102.2L76.8 100.0L78.2 100.7L77.6 97.7L74.5 92.7L73.8 89.7L74.6 86.2L80.9 80.9L82.4 78.6L83.1 75.5L82.7 73.4L79.9 69.5L77.5 69.8L76.9 67.6L74.1 67.2L73.4 65.6L74.7 65.0L75.2 62.6L74.4 57.8L69.5 54.3L67.6 51.9L66.5 47.2L64.3 45.1L63.1 39.7L61 38.0L59.6 33.6L53.4 25.6L50.2 19.1L49.4 14.6L47.1 8.7L43.6 5.5L56.2 10.7L57.5 12.7L60 14.6L62 13.8L66 14.0L68 11.5L68.1 8.4L65.1 6.7L61.8 -0.7L56.1 -4.7L54.6 -7.3L56.9 -11.3L60.6 -12.6L68.4 -9.9L72 -11.3L74.8 -17.0L74.9 -21.5L70.8 -32.9L68.9 -33.4L64.8 -32.3L61.8 -32.6L58.4 -36.2L57.4 -40.0ZM321.2 -40.0L318.7 -32.4L317.7 -26.7L314.7 -22.9L314.8 -18.9L310.8 -5.8L310.2 0.8L305.3 12.7L302.6 15.0L301.2 15.1L300.2 13.8L300.2 9.2L299.3 6.2L300.3 -5.5L298.8 -11.7L299.3 -21.2L306.3 -40.0ZM254.4 26.4L255.8 26.2L255.7 26.8L254.1 27.6L253.8 31.1L250.9 29.3L250.3 27.7L252 25.6L254.4 26.4ZM4.4 180.3L1.9 183.0L4.4 184.1L4.2 186.5L2.1 188.9L-0.8 189.8L-10.8 187.6L-17.2 189.8L-19.7 192.1L-21.1 191.9L-38.2 180.3L-40 179.9L-40 155.8L-35.4 154.8L-33.8 155.6L-28.4 159.5L-26.5 163.8L-23.4 165.1L-11.9 171.5L-13.3 167.4L-11.9 166.2L-7.9 165.4L-8.6 162.8L-8.3 160.2L-3.4 164.6L-1.4 168.2L0.6 169.3L-0.3 170.0L0.6 172.0L4.6 175.8L5 179.0L4.4 180.3ZM41.4 147.2L47.1 148.3L49.2 150.3L50.2 154.1L49.5 156.0L46.9 156.3L39.3 154.6L37 155.0L32.5 157.8L29.1 162.5L27.8 163.2L21.8 160.8L21.8 160.2L22.8 160.2L22.7 158.1L24 157.1L22.8 155.6L24.2 154.0L25 153.6L25.8 154.1L26.3 153.3L25.8 151.7L29.4 153.3L33 151.7L32.6 149.7L33.4 147.9L30.8 145.7L30.4 144.5L31.4 143.4L32.5 143.4L33.9 145.9L36.1 146.8L41.4 147.2ZM218.5 135.7L217.6 137.2L218.1 140.9L215.6 145.6L216 148.5L213.4 151.5L207.6 150.4L199.5 146.3L194.5 144.9L188.2 139.3L189.1 136.9L189.9 124.3L193.2 116.1L199.1 122.9L204 126.5L207 126.5L208.7 129.6L214.2 133.3L217.2 134.4L218.5 135.7ZM54.3 74.0L58.1 83.7L55.8 86.2L50.4 89.3L49 87.2L48.1 81.7L51.1 77.8L53.8 72.6L54.3 74.0ZM17 162.4L20.6 161.9L25.4 168.5L18.7 174.2L15.9 180.0L11.8 184.6L12.4 198.4L11.1 198.5L5.9 188.4L6 186.1L8.6 181.5L6.3 180.6L6.8 177.6L2 172.2L1 167.8L-1.8 164.6L-2.3 158.8L-4.3 157.1L-4.3 156.3L-1.2 154.1L1.7 156.3L3.9 154.3L4.6 155.1L5.5 154.6L6.8 152.6L4.1 147.2L-1.4 144.9L-3.2 143.4L-7.3 143.2L-10.5 140.3L3.2 144.9L1.8 142.3L-2.2 139.4L-3.9 136.6L1.7 135.5L1.9 134.2L0.5 133.1L-3.2 133.3L-4.3 131.9L-2.8 129.6L-2.9 128.3L-3.9 127.4L-5.4 127.4L-8.3 130.4L-17.6 127.4L-18.5 127.8L-23 125.9L-26.5 127.4L-31 127.4L-31 128.1L-29.6 128.9L-33.5 128.2L-34.5 126.7L-34.9 123.6L-33 124.3L-31.8 122.1L-34.7 122.9L-34.7 119.6L-40 114.8L-40 113.8L-38.2 113.3L-38.1 112.1L-40 111.3L-40 108.1L-37.1 107.0L-36.5 105.6L-37.7 100.1L-40 94.5L-40 67.2L-40 71.9L-37.9 72.7L-36.3 71.7L-39 69.5L-38.1 68.6L-36.4 69.5L-34.1 69.5L-27.6 66.5L-26.8 65.5L-26.1 60.7L-27.8 57.3L-24.6 58.6L-21.7 56.5L-19.5 57.0L-17.7 53.9L-17.3 49.5L-19.5 45.9L-25.5 44.8L-30.7 42.9L-32.1 41.7L-32.7 39.7L-24.4 43.6L-22.7 43.2L-12.7 44.7L-11.6 45.8L-8.9 45.6L-0.6 42.6L0.1 43.6L-2.5 48.1L-1.8 49.3L-2.2 50.0L-4.3 49.7L-3.9 48.1L-6 48.2L-7.4 49.7L-3 58.2L-3.9 60.4L-6.9 60.0L-9.8 62.6L-11 62.6L-11 63.5L-10 63.8L-5.9 63.1L-3.7 61.7L-2.5 61.9L-1 67.2L-6.2 68.1L-7.8 69.3L-6.1 70.3L-3.2 70.1L-2 69.2L1.1 74.0L0.1 77.1L1.3 76.1L5 69.0L4.1 66.4L5.9 61.0L10.3 58.8L11.4 55.6L8.5 48.7L9 46.6L10.2 46.7L14.3 50.1L13.9 53.4L16.4 59.7L17.6 64.3L17.7 68.6L16.1 71.0L12.6 70.3L11.7 73.4L8.6 77.1L9.9 77.4L11.7 76.6L13.2 75.0L13.4 73.3L14.5 72.8L16.5 74.1L17 75.5L15 74.9L15.1 76.1L18.3 77.8L20.3 71.9L20.5 69.5L16.1 45.9L13.9 43.7L5.7 46.1L4.6 45.1L5.7 42.4L15.2 35.9L25.1 27.8L30.3 25.0L35.7 25.2L41.3 28.3L45.9 28.3L54.7 34.5L51.1 39.7L47.6 47.3L50.3 52.4L51.7 58.3L53.4 61.9L52.5 69.5L53.4 71.7L49.4 78.4L47 80.0L45.9 82.7L44.5 83.2L40.5 81.7L35.8 84.3L30.5 89.8L27.2 96.3L28.9 102.2L32.1 104.9L38.3 106.0L42.5 110.1L44.5 118.3L39.8 122.1L26.2 125.3L22.2 129.3L21.4 131.6L21.8 133.4L20.8 134.8L19.6 134.2L20.1 131.8L19.4 130.3L18 129.9L15.3 131.9L15.2 133.1L17.4 135.0L25.3 136.2L25.8 138.8L25.1 140.4L22.1 142.4L25 147.9L24.9 150.1L24 151.2L21.2 151.7L16.5 154.1L14.3 153.1L10.7 149.9L8.6 149.5L9 150.2L7.7 151.0L8 153.2L6.8 157.1L7.3 158.4L9.1 159.2L9.9 158.6L9.4 157.1L11.7 156.3L13.2 159.4L17 162.4ZM-17.2 -38.0L-16.9 -40.0L-9.8 -40.0L-12 -37.4L-12.7 -36.4L-15.2 -36.1L-17.2 -38.0Z'/%3E%3Cpath fill='%232a2034' stroke='%238a4fb0' stroke-width='1.1' d='M188.5 470.0L189.7 464.2L188.8 461.9L190 460.2L190.1 457.9L189.1 456.0L183.2 453.5L181.8 451.8L182.1 449.7L179.2 441.6L178.9 437.2L182.2 434.1L184.9 428.9L183.4 426.6L185.7 420.0L179.5 413.4L175.7 411.8L173.8 409.1L171.9 407.8L168.7 402.1L160 395.8L157.9 393.2L153.8 392.0L152 389.5L153.7 388.0L154.6 384.5L153.3 377.4L160.4 372.8L166.2 367.5L169.2 358.3L168.6 351.8L172.5 344.9L170 341.9L167.2 323.6L163.6 316.4L163.2 314.1L163.2 306.5L160.8 300.0L161 295.1L163.7 293.7L163.8 292.8L162.6 292.0L163.5 291.2L162.6 290.5L163 289.6L165.3 291.3L166.1 293.4L170.8 297.1L173.6 297.6L178.3 299.8L182.2 306.4L182.9 303.3L184.3 301.9L184.3 300.3L181.2 299.6L179.2 294.6L181.2 287.4L182 288.0L184.3 287.4L183.9 284.6L184.8 278.2L182.1 282.1L182.5 282.8L181.9 282.6L180.8 281.3L182.1 279.8L181.2 277.9L179.7 277.0L172.5 276.2L171.5 275.1L172.3 272.9L171.9 272.2L171.3 273.3L168.9 273.2L167.4 275.2L171 276.7L170.2 279.1L165.2 280.5L166 281.9L162.8 281.3L158.6 276.0L156.9 275.3L155.3 272.1L156.4 271.6L157.5 268.6L161.3 270.4L167.7 271.0L170.3 270.4L177.4 265.6L194.6 257.9L209.3 254.0L227.4 246.3L251.8 239.7L264.4 233.9L274.8 232.6L282 230.2L278 232.5L279.4 233.5L285.1 232.5L284.6 231.0L287.7 231.0L287.4 228.4L282.4 229.5L287.3 226.6L291.3 221.9L288.5 225.9L291.3 225.0L294.4 222.8L295.3 221.9L294.5 220.2L293.2 220.2L291.7 221.9L294.4 217.1L301.9 207.4L301.6 209.2L302.3 209.5L304.1 208.1L304.2 206.2L302.4 207.4L303.7 204.8L305.9 202.5L310.4 199.8L323.9 197.8L334.3 194.3L340.6 187.6L360.1 178.4L384.6 173.8L395.6 170.1L412.9 168.5L423.5 168.5L451.7 185.0L456.4 191.4L457.1 194.7L456 195.2L448.8 183.8L445.4 182.8L444.8 181.7L435.3 176.6L432.6 174.1L430.8 174.8L429.8 180.3L432 181.9L433.7 185.3L433.8 190.6L434.6 191.5L435.8 191.2L436.9 189.8L436.5 191.7L440 200.5L439.8 207.5L440.2 211.7L441.1 213.5L448 216.8L449.5 219.3L460.4 222.8L462.8 223.0L464.8 221.9L467.9 223.4L492.2 219.7L502.2 215.6L507.3 210.9L511.8 213.2L640 220.0L640 470.0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;z-index:0}
.region-map:after{content:'';position:absolute;inset:0;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:8.333% 11.628%;pointer-events:none;z-index:0}
.region-map .sea-label{position:absolute;left:24%;top:16%;font-size:10px;letter-spacing:6px;color:#3d3447;text-transform:uppercase;z-index:1}
.region-map .ring{position:absolute;left:50.0%;top:50.0%;transform:translate(-50%,-50%);border-radius:50%;border:1px dashed #b300ff66;z-index:1;pointer-events:none}
.region-map .ring--200{background:radial-gradient(circle,#b300ff14 0,#b300ff08 60%,transparent 71%);border-style:solid;border-color:#b300ff88;animation:ringPulse 6s ease-in-out infinite}
.region-map .ring span{position:absolute;top:-1px;left:50%;transform:translate(-50%,-50%);font-size:9px;letter-spacing:1px;background:#0b0a0e;color:#cf73ff;padding:2px 7px;border-radius:99px;border:1px solid #3a2347;white-space:nowrap}
.region-map .ring--50{width:16.667%;height:23.256%}
.region-map .ring--100{width:33.333%;height:46.512%}
.region-map .ring--200{width:66.667%;height:93.023%}
.region-map .pin,.region-map .work,.region-map .base{position:absolute;transform:translate(-50%,-50%);z-index:2}
.region-map .pin{width:9px;height:9px;border-radius:50%;background:#0b0a0e;border:2px solid #d8d4dd;cursor:default;outline:0}
.region-map .pin:after{content:attr(aria-label);position:absolute;top:50%;transform:translateY(-50%);left:14px;white-space:nowrap;font-size:11px;color:#d8d4dd;text-shadow:0 1px 3px #000,0 0 8px #000;opacity:0;transition:opacity .2s}
.region-map .pin.side-l:after{left:auto;right:14px}
.region-map .pin.side-b:after{left:50%;top:16px;transform:translateX(-50%)}
.region-map .pin.city:after,.region-map .pin:hover:after,.region-map .pin:focus-visible:after{opacity:1}
.region-map .pin:hover,.region-map .pin:focus-visible{border-color:#cf73ff;background:#cf73ff}
.region-map .base{width:18px;height:18px;left:50.0%;top:50.0%;border-radius:50%;background:#b300ff;box-shadow:0 0 0 5px #b300ff40,0 0 30px #b300ff;z-index:3}
.region-map .base:before{content:'';position:absolute;inset:-6px;border-radius:50%;border:2px solid #b300ff;animation:basePing 2.4s ease-out infinite}
.region-map .base-label{position:absolute;left:50.0%;top:50.0%;transform:translate(calc(-100% - 16px),-50%);text-align:right;z-index:3;font-size:13px;font-weight:700;letter-spacing:.5px;white-space:nowrap;text-shadow:0 1px 4px #000}
.region-map .base-label small{display:block;font-size:9px;letter-spacing:2px;color:#cf73ff;font-weight:400}
.region-map .work{width:14px;height:14px;background:#fff;transform:translate(-50%,-50%) rotate(45deg);border:3px solid #b300ff;z-index:4;box-shadow:0 0 14px #b300ffaa;outline:0}
.region-map .work:after{content:attr(aria-label);position:absolute;left:50%;bottom:20px;transform:translateX(-50%) rotate(-45deg);transform-origin:center;white-space:nowrap;font-size:11px;background:#fff;color:#171019;padding:6px 10px;border-radius:6px;opacity:0;pointer-events:none;transition:opacity .2s}
.region-map .work:hover:after,.region-map .work:focus-visible:after{opacity:1}
.region-legend{position:absolute;left:14px;bottom:12px;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:10px;color:#a99fb2;z-index:3;background:#0b0a0ecc;padding:7px 10px;border-radius:8px}
.region-legend span{display:inline-flex;align-items:center;gap:6px}
.region-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;border:2px solid #d8d4dd}
.region-legend i.l-base{background:#b300ff;border-color:#b300ff}
.region-legend i.l-work{background:#fff;border-color:#b300ff;border-radius:1px;transform:rotate(45deg)}
.region-legend i.l-ring{border:1px dashed #b300ff;width:12px;height:12px}
.region-beyond{position:absolute;right:12px;top:12px;z-index:3;font-size:10px;line-height:1.5;color:#d8d4dd;background:#0b0a0ecc;border:1px solid #2f2737;border-radius:8px;padding:7px 11px;max-width:170px}
.region-beyond strong{color:#cf73ff}
@keyframes basePing{0%{transform:scale(.6);opacity:1}100%{transform:scale(2.6);opacity:0}}
@keyframes ringPulse{0%,100%{opacity:.75}50%{opacity:1}}
@media(prefers-reduced-motion:reduce){.region-map .base:before,.region-map .ring--200{animation:none}}
@media(max-width:950px){.region-grid{grid-template-columns:1fr;gap:40px}}
@media(max-width:600px){.region-stats{gap:10px}.region-stats span{font-size:10px}.region-map{border-radius:12px}.region-map .pin:not(.major):after{opacity:0}.region-map .pin.major:after{opacity:1;font-size:9px}.region-map .pin.side-l:after{right:10px}.region-map .pin.side-b:after{left:50%;top:11px}.region-map .pin:after{left:10px}.region-map .pin{width:7px;height:7px}.region-map .ring span{font-size:8px;padding:1px 5px}.region-beyond{display:none}.region-legend{font-size:9px;left:8px;bottom:8px}.region-map .base-label{font-size:11px}}
.region-map .pin--koszalin{left:47.44%;top:55.84%}
.region-map .pin--slupsk{left:56.68%;top:48.87%}
.region-map .pin--kolobrzeg{left:41.08%;top:56.32%}
.region-map .pin--ustka{left:54.88%;top:45.86%}
.region-map .pin--mielno{left:46.22%;top:54.13%}
.region-map .pin--slawno{left:52.9%;top:51.49%}
.region-map .pin--leba{left:62.38%;top:41.22%}
.region-map .pin--lebork{left:64.47%;top:46.93%}
.region-map .pin--bytow{left:61.68%;top:56.45%}
.region-map .pin--szczecinek{left:53.12%;top:68.4%}
.region-map .pin--bialogard{left:45.44%;top:60.69%}
.region-map .pin--chojnice{left:62.39%;top:68.69%}
.region-map .pin--gdynia{left:72.89%;top:47.45%}
.region-map .pin--gdansk{left:74.15%;top:51.77%}
.region-map .pin--szczecin{left:29.95%;top:75.65%}
.region-map .pin--swinoujscie{left:26.65%;top:63.18%}
.region-map .pin--pila{left:53.55%;top:82.82%}
.region-map .pin--bydgoszcz{left:67.26%;top:83.54%}
.region-map .work--darlowko{left:50.0%;top:49.49%}
@media(max-width:600px){.region-map{overflow:visible;margin-bottom:70px}.region-legend{top:calc(100% + 12px);bottom:auto;left:0;background:none;padding:0}.region-map .ring--50 span,.region-map .ring--100 span{display:none}}
/* Cennik: czynniki ceny w nagłówku i kalkulator wyceny. */
.price-factors{background:#141118;border:1px solid #2f2737;border-radius:16px;padding:30px 30px 14px}
.price-factors-title{margin:0 0 10px;font-size:10px;letter-spacing:2px;color:#cf73ff;font-weight:700}
.price-factors ol{list-style:none;margin:0;padding:0}
.price-factors li{display:flex;gap:18px;padding:15px 0;border-top:1px solid #2a2330}
.price-factors li:first-child{border-top:0}
.price-factors li>span{font-size:11px;color:#cf73ff;padding-top:3px}
.price-factors li p{margin:0;font-size:14px;line-height:1.6;color:#a99fb2}
.price-factors strong{color:#fff;font-weight:600}
.calc-section{background:#f5f2f7}
.calc{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:40px;align-items:start;margin-top:10px}
.calc-fallback{grid-column:1/-1;font-size:14px;color:#6b5a76}
.calc-fallback a{color:#8500ba;text-decoration:underline}
.calc-steps{display:flex;flex-direction:column;gap:14px;min-width:0}
.calc-step{margin:0;padding:24px;border:1px solid #e3d9ea;border-radius:14px;background:#fff;min-width:0}
.calc-step-title{display:flex;align-items:center;gap:12px;padding:0;font-size:18px;font-weight:600;letter-spacing:-.3px;color:#171019}
.calc-step-num{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#b300ff;color:#fff;font-size:11px;font-weight:700;flex:none}
.calc-step-help{margin:8px 0 0 42px;font-size:12px;color:#8b7897}
.calc-options{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.calc-options--cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.calc-option{font:inherit;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:12px 16px;border:1px solid #ddd2e4;border-radius:10px;background:#faf8fb;color:#302237;transition:border-color .15s,background .15s,transform .15s}
.calc-option:hover{border-color:#b300ff;transform:translateY(-1px)}
.calc-option:focus-visible{outline:2px solid #b300ff;outline-offset:2px}
.calc-option[aria-pressed="true"]{background:#b300ff;border-color:#b300ff;color:#fff}
.calc-option-name{font-size:14px;font-weight:600;line-height:1.35}
.calc-option-hint{font-size:12px;color:#8b7897}
.calc-option[aria-pressed="true"] .calc-option-hint{color:#f0d9ff}
.calc-result{position:sticky;top:100px;background:#08070a;color:#fff;border-radius:16px;padding:30px;min-height:220px}
.calc-result-eyebrow{font-size:10px;letter-spacing:2px;color:#cf73ff;font-weight:700}
.calc-result-empty{font-size:15px;line-height:1.7;color:#a99fb2;margin:18px 0 0}
.calc-result-price{font-size:clamp(30px,3.2vw,44px);line-height:1.1;letter-spacing:-.04em;font-weight:700;margin:16px 0 10px}
.calc-result-note{font-size:12px;line-height:1.6;color:#a99fb2;margin:0 0 20px}
.calc-result-list{list-style:none;margin:0 0 24px;padding:16px 0 0;border-top:1px solid #2a2330}
.calc-result-list li{font-size:13px;line-height:1.5;color:#d8d4dd;padding:5px 0 5px 18px;position:relative}
.calc-result-list li:before{content:'';position:absolute;left:0;top:12px;width:7px;height:7px;border-radius:50%;background:#b300ff}
.calc-result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.calc-result-actions .btn{background:#b300ff;color:#fff}
.calc-result-actions .btn:hover{background:#fff;color:#171019}
.calc-result-actions .text-link{font:inherit;font-size:13px;background:none;border:0;padding:0;color:#d8d4dd;cursor:pointer;text-decoration:underline}
.calc-prefill-note{margin:0 0 16px;padding:12px 14px;border-left:3px solid #b300ff;background:#f5ecfa;color:#5c3570;font-size:13px;line-height:1.6}
@media(max-width:950px){.calc{grid-template-columns:1fr}.calc-result{position:static}}
@media(max-width:600px){.price-factors{padding:22px 20px 8px}.calc-step{padding:18px}.calc-step-title{font-size:16px}.calc-options--cards{grid-template-columns:1fr}.calc-option{padding:11px 14px}.calc-result{padding:24px}}
