/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(fonts/dm-sans-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(fonts/dm-sans-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(fonts/manrope-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(fonts/manrope-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --blue:#183881;
    --orange:#ee8728;
    --paper:#fbf9f4;
    --ink:#18356c;
    --muted:#687082;
    --line:#dedfdc;
    --light:#eff2f7;
}
* {
    box-sizing:border-box;
}
html {
    scroll-behavior:smooth;
    scroll-padding-top:30px;
}
body {
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:'DM Sans',sans-serif;
    font-size:15px;
    line-height:1.7;
}
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,summary:focus-visible {
    outline:3px solid var(--orange);
    outline-offset:6px;
}
.wrap {
    width:min(1200px,calc(100% - 96px));
    margin-inline:auto;
}
.topline {
    background:var(--blue);
    color:#fff;
    display:flex;
    justify-content:space-between;
    padding:8px max(48px,calc((100vw - 1200px)/2));
    font-size:11px;
    letter-spacing:.06em;
}
.header {
    height:112px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}
.brand {
    display:flex;
    margin-right:auto;
}
.brand img {
    width:116px;
    height:76px;
    object-fit:contain;
}
nav {
    display:flex;
    align-items:center;
    gap:22px;
    order:1;
    font-size:13px;
    font-weight:600;
}
nav>a:not(.button):hover {
    color:var(--orange);
}
.button {
    display:inline-flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    background:var(--blue);
    border:1px solid var(--blue);
    color:#fff;
    padding:17px 23px;
    font-size:13px;
    font-weight:600;
    border-radius:4px;
    cursor:pointer;
    transition:background .2s,transform .2s;
}
.button:hover {
    background:#244b9d;
    transform:translateY(-2px);
}
.button span {
    font-size:22px;
    line-height:1;
}
.button.small {
    padding:12px 19px;
    gap:27px;
}
.menu-toggle {
    display:none;
    order:3;
}
.language-switch {
    display:flex;
    align-items:center;
    gap:8px;
    order:2;
    flex-shrink:0;
    font-size:12px;
}
.language-switch a {
    padding:8px 2px;
    color:var(--muted);
}
.language-switch a[aria-current="true"] {
    color:var(--blue);
    font-weight:700;
    text-decoration:underline;
    text-decoration-color:var(--orange);
    text-underline-offset:6px;
}
.language-switch a:hover {
    color:var(--orange);
}
.language-switch>span {
    color:var(--line);
}
.hero {
    display:grid;
    grid-template-columns:1.05fr 1fr;
    column-gap:46px;
    padding-top:50px;
}
.eyebrow {
    font-size:10px;
    letter-spacing:.15em;
    font-weight:700;
    margin:0 0 24px;
}
.dot {
    display:inline-block;
    width:7px;
    height:7px;
    background:var(--orange);
    border-radius:50%;
    margin-right:8px;
}
h1,h2,h3,p {
    margin-top:0;
}
h1,h2,h3 {
    font-family:'Manrope',sans-serif;
}
h1 {
    font-size:clamp(48px,5.5vw,76px);
    line-height:1.12;
    letter-spacing:-.055em;
    font-weight:650;
    margin-bottom:25px;
}
em {
    font-style:normal;
    color:var(--orange);
}
.intro {
    max-width:345px;
    font-size:17px;
    line-height:1.75;
    color:var(--muted);
    margin-bottom:29px;
}
.text-link {
    display:inline-flex;
    align-items:center;
    gap:18px;
    font-size:12px;
    font-weight:600;
    border-bottom:1px solid #bcc6d6;
    padding-bottom:5px;
}
.hero-copy>.text-link {
    display:flex;
    width:fit-content;
    margin-top:20px;
}
.hero-art {
    position:relative;
    min-height:470px;
    background:#edf0f4;
    border-radius:160px 160px 5px 5px;
    overflow:hidden;
    margin-top:3px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
}
.art-label {
    text-align:center;
    font-size:9px;
    font-weight:700;
    letter-spacing:.19em;
    position:absolute;
    top:43px;
    left:0;
    right:0;
}
.houses {
    width:115%;
    height:auto;
    position:relative;
    max-width:none;
    margin-left:-7.5%;
    margin-bottom:6px;
    z-index:1;
}
.art-bottom {
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-top:1px solid #cfd7e2;
    margin:0 29px;
    padding:20px 0;
    font-size:12px;
    line-height:1.5;
}
.round-arrow {
    display:grid;
    place-items:center;
    border:1px solid #b8c2d4;
    border-radius:50%;
    width:39px;
    height:39px;
    font-size:20px;
}
.hero-foot {
    grid-column:1/-1;
    display:flex;
    justify-content:space-between;
    margin:45px 0 32px;
    font-size:10px;
    letter-spacing:.08em;
    color:var(--muted);
}
.hero-foot span:first-child {
    font-weight:700;
    color:var(--blue);
}
.service-strip {
    background:var(--blue);
    color:white;
}
.service-strip>.wrap {
    display:flex;
    justify-content:space-between;
    padding-block:21px;
    gap:20px;
}
.service-strip span {
    display:flex;
    gap:40px;
    align-items:center;
    font-size:13px;
}
.service-strip i {
    font-size:22px;
    color:var(--orange);
    font-style:normal;
}
.section {
    padding-block:95px;
}
.section-heading {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:45px;
    margin-bottom:40px;
}
h2 {
    font-size:clamp(30px,3.1vw,43px);
    line-height:1.25;
    letter-spacing:-.045em;
    font-weight:600;
    margin-bottom:0;
}
.section-heading>p {
    max-width:295px;
    color:var(--muted);
    font-size:13px;
    margin-bottom:3px;
}
.services {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:0;
    border:1px solid var(--line);
    border-radius:5px;
}
.service {
    padding:25px 24px 30px;
}
.service+.service {
    border-left:1px solid var(--line);
}
.service-top {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:35px;
    font-size:11px;
    color:var(--muted);
}
.service-icon {
    font-size:29px;
    color:var(--orange);
}
h3 {
    font-size:17px;
    letter-spacing:-.025em;
    line-height:1.4;
    margin-bottom:12px;
}
.service p {
    font-size:12px;
    color:var(--muted);
    margin-bottom:0;
    line-height:1.85;
}
.service .subtitle {
    font-size:11px;
    color:var(--blue);
    margin-bottom:14px;
}
.about {
    background:#f0eee7;
    padding-block:75px;
}
.about-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}
.boat-art {
    background:#e5eaf1;
    border-radius:5px;
    min-height:445px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:35px 0;
}
.boat-art .eyebrow {
    margin-bottom:0;
}
.boat-art img {
    width:100%;
    height:auto;
}
.handwritten {
    font-family:Georgia,serif;
    font-style:italic;
    font-size:21px;
}
.about-copy>p:not(.eyebrow) {
    color:var(--muted);
    font-size:13px;
    margin:24px 0;
}
.benefit {
    display:flex;
    gap:17px;
    padding-top:16px;
}
.benefit>span {
    color:var(--orange);
    font-size:24px;
}
.benefit h3 {
    font-size:14px;
    margin-bottom:5px;
}
.benefit p {
    font-size:12px;
    color:var(--muted);
    margin-bottom:0;
}
.steps {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:55px;
    margin-top:50px;
}
.step-number {
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border:1px solid #cbd1dd;
    border-radius:50%;
    font-size:17px;
    margin-bottom:23px;
    color:var(--orange);
}
.steps article {
    position:relative;
}
.steps article:not(:last-child):after {
    content:'';
    position:absolute;
    top:21px;
    left:60px;
    right:-30px;
    height:1px;
    background:var(--line);
}
.steps h3 {
    font-size:18px;
}
.steps p {
    font-size:13px;
    color:var(--muted);
    max-width:300px;
}
.faq-section {
    display:grid;
    grid-template-columns:1fr 1.3fr;
    gap:75px;
    border-top:1px solid var(--line);
    padding-block:65px 90px;
}
.faqs details {
    border-bottom:1px solid var(--line);
}
summary {
    cursor:pointer;
}
.faqs summary {
    padding:19px 25px 19px 0;
    font-size:14px;
    font-weight:500;
    list-style:none;
    position:relative;
}
.faqs summary::-webkit-details-marker {
    display:none;
}
.faqs summary:after {
    content:'+';
    position:absolute;
    right:0;
    color:var(--orange);
    font-size:22px;
    top:12px;
}
.faqs details[open] summary:after {
    content:'â’';
}
.faqs details p {
    font-size:13px;
    color:var(--muted);
    max-width:95%;
    margin-bottom:20px;
}
.contact {
    background:var(--blue);
    color:white;
    padding-block:75px;
}
.contact-grid {
    display:grid;
    grid-template-columns:1fr 1.25fr;
    gap:85px;
}
.contact-copy {
    padding-top:20px;
}
.contact-copy h2 {
    font-size:43px;
}
.contact-copy .eyebrow {
    color:#b8c8e9;
}
.contact-copy>p:not(.eyebrow) {
    font-size:14px;
    color:#d0d9ee;
    margin-top:28px;
    max-width:320px;
}
.contact-details {
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-top:35px;
    font-size:14px;
}
.contact-note {
    display:block;
    font-size:11px;
    color:#b8c8e9;
    margin-top:58px;
}
.contact-form {
    background:var(--paper);
    color:var(--ink);
    padding:32px;
    border-radius:5px;
}
.contact-form h3 {
    font-size:23px;
    margin-bottom:5px;
}
.form-intro {
    color:var(--muted);
    font-size:12px;
    margin-bottom:25px;
}
.form-row {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:17px;
}
label {
    display:block;
    font-size:11px;
    font-weight:600;
    margin-bottom:17px;
}
label>span:not(:only-child) {
    color:var(--orange);
}
label small {
    font-size:9px;
    color:var(--muted);
    font-weight:400;
}
input:not([type=checkbox]),textarea {
    width:100%;
    display:block;
    background:transparent;
    border:1px solid #d5d8dc;
    border-radius:3px;
    padding:11px 12px;
    margin-top:7px;
    color:var(--ink);
    font-size:12px;
    min-width:0;
}
input:focus,textarea:focus {
    outline:2px solid #6e93d2;
    outline-offset:1px;
}
textarea {
    resize:vertical;
}
input::placeholder,textarea::placeholder {
    color:#8a8d94;
}
.consent {
    display:flex;
    gap:9px;
    align-items:flex-start;
    font-weight:400;
    font-size:10px;
    line-height:1.6;
}
.consent input {
    margin:3px 0 0;
    accent-color:var(--blue);
    flex-shrink:0;
}
.consent span {
    color:var(--muted)!important;
}
.consent a {
    text-decoration:underline;
}
.contact-form>.button {
    width:100%;
}
.required-note {
    font-size:9px;
    color:var(--muted);
    margin:8px 0 0;
}
.honeypot {
    position:absolute;
    left:-10000px;
}
.notice {
    padding:13px;
    margin-bottom:20px;
    font-size:12px;
    border-radius:3px;
}
.notice p {
    margin:0;
}
.success {
    background:#e3efdf;
    color:#2c582e;
}
.error {
    background:#fae5de;
    color:#9b331e;
}
.privacy {
    font-size:11px;
    padding-block:24px;
    border-bottom:1px solid var(--line);
    color:var(--muted);
}
.privacy p {
    max-width:800px;
    margin:15px 0;
}
.footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    padding-block:30px;
    font-size:10px;
    color:var(--muted);
}
.footer-brand {
    font-family:'Manrope',sans-serif;
    font-size:23px;
    font-weight:700;
    color:var(--blue);
    letter-spacing:-.04em;
}
.footer-brand span {
    display:block;
    font-family:'DM Sans',sans-serif;
    font-size:9px;
    font-weight:400;
    letter-spacing:.02em;
}
.footer p {
    margin:0;
}
.site-footer { border-top:1px solid var(--line); padding-block:32px 20px; color:var(--muted); font-size:12px; }
.footer-main { display:flex; align-items:flex-start; justify-content:space-between; gap:24px 48px; flex-wrap:wrap; }
.footer-company { max-width:62ch; margin:12px 0 0; font-size:11px; overflow-wrap:anywhere; }
.site-footer .legal-links { margin:8px 0 0; gap:12px 20px; }
.footer-bottom { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid var(--line); margin-top:24px; padding-top:16px; font-size:11px; }
.footer-bottom p { margin:0; }
.legal-page { padding-block:48px 64px; min-height:55vh; }
.legal-page h1 { font-family:'Manrope',sans-serif; font-size:clamp(28px,5vw,44px); line-height:1.2; margin:24px 0; }
.legal-content { max-width:80ch; font-size:15px; line-height:1.8; overflow-wrap:anywhere; }
.legal-content p { margin:0 0 20px; }
.legal-content a { text-decoration:underline; }
.legal-page .business-details { border-top:0; padding-top:0; }
.business-details {
    color:var(--muted);
    font-size:13px;
    border-top:1px solid var(--line);
    padding-top:24px;
}
.business-details:not(:empty) { padding-bottom:24px; }
.business-details h2 { font-size:20px; color:var(--ink); margin:0 0 12px; }
.business-details p { max-width:80ch; }
.legal-links { display:flex; flex-wrap:wrap; gap:12px 24px; margin:18px 0; }
.legal-links a,.legal-section a { text-decoration:underline; text-underline-offset:3px; }
.business-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:16px 28px; }
.business-grid div { min-width:0; }
.business-grid dt { font-weight:600; color:var(--ink); }
.business-grid dd { margin:4px 0 0; overflow-wrap:anywhere; }
.legal-section { border-top:1px solid var(--line); padding:16px 0; scroll-margin-top:30px; }
.legal-section summary { cursor:pointer; font-weight:600; color:var(--ink); }
.legal-copy { white-space:pre-wrap; overflow-wrap:anywhere; margin-top:16px; max-width:80ch; }
.skip-link {
    position:absolute;
    top:-100px;
    left:20px;
    padding:10px;
    background:white;
    z-index:100;
}
.skip-link:focus {
    top:10px;
}
@media(min-width:1500px) {
    .hero {
        padding-top:65px;
        padding-bottom:15px;
    }
    .hero-art {
        min-height:510px;
    }
}
@media(max-width:1050px) {
    .wrap {
        width:calc(100% - 56px);
    }
    .topline {
        padding-inline:28px;
    }
    .hero {
        gap:25px;
    }
    .hero-art {
        min-height:430px;
    }
    .service {
        padding:22px 17px;
    }
    .service h3 {
        font-size:15px;
    }
    .about-grid,.contact-grid {
        gap:40px;
    }
    .service-strip span {
        gap:20px;
    }
    .contact-form {
        padding:25px;
    }
    .contact-copy h2 {
        font-size:37px;
    }
}
@media(max-width:760px) {
    .wrap {
        width:calc(100% - 40px);
    }
    .topline {
        padding:7px 20px;
        font-size:9px;
    }
    .topline span:last-child {
        display:none;
    }
    .header {
        height:90px;
        position:relative;
        z-index:5;
        gap:14px;
    }
    .brand img {
        width:100px;
        height:65px;
    }
    .menu-toggle {
        display:flex;
        align-items:center;
        gap:15px;
        border:1px solid #ccd2df;
        background:transparent;
        color:var(--blue);
        padding:8px 12px;
        border-radius:3px;
        font-size:12px;
    }
    .header nav {
        display:none;
        position:absolute;
        left:-20px;
        right:-20px;
        top:90px;
        padding:25px;
        background:var(--paper);
        box-shadow:0 15px 20px #18388115;
        flex-direction:column;
        align-items:stretch;
        gap:20px;
    }
    .header nav.open {
        display:flex;
    }
    .hero {
        grid-template-columns:1fr;
        padding-top:30px;
        gap:35px;
    }
    .hero h1 {
        font-size:clamp(42px,11.7vw,58px);
    }
    .eyebrow {
        font-size:9px;
    }
    .intro {
        font-size:16px;
        max-width:330px;
    }
    .hero-art {
        min-height:0;
        aspect-ratio:1.13;
        border-radius:120px 120px 5px 5px;
        max-width:490px;
        width:100%;
        justify-self:center;
    }
    .art-label {
        top:27px;
    }
    .houses {
        width:105%;
        margin-left:-2.5%;
        margin-bottom:-10px;
    }
    .art-bottom {
        padding:13px 0;
        font-size:11px;
    }
    .hero-foot {
        margin:0 0 24px;
        gap:15px;
        align-items:flex-start;
        font-size:8px;
    }
    .hero-foot span {
        max-width:48%;
    }
    .service-strip>.wrap {
        flex-wrap:wrap;
        gap:8px 22px;
        justify-content:center;
        padding-block:18px;
    }
    .service-strip span {
        font-size:11px;
        gap:18px;
    }
    .service-strip i {
        font-size:15px;
    }
    .section {
        padding-block:60px;
    }
    .section-heading {
        display:block;
        margin-bottom:28px;
    }
    .section-heading>p {
        margin:23px 0 0;
        max-width:370px;
    }
    .section-heading>.text-link {
        margin-top:24px;
    }
    h2 {
        font-size:33px;
    }
    .services {
        grid-template-columns:1fr 1fr;
    }
    .service {
        padding:20px;
    }
    .service+.service {
        border-left:0;
    }
    .service:nth-child(even) {
        border-left:1px solid var(--line);
    }
    .service:nth-child(n+3) {
        border-top:1px solid var(--line);
    }
    .service-top {
        margin-bottom:22px;
    }
    .service h3 {
        font-size:16px;
    }
    .about {
        padding-block:45px;
    }
    .about-grid {
        grid-template-columns:1fr;
        gap:35px;
    }
    .boat-art {
        min-height:0;
        padding:25px 0;
    }
    .boat-art img {
        max-height:290px;
        object-fit:contain;
    }
    .about-copy>p:not(.eyebrow) {
        font-size:14px;
    }
    .benefit p {
        font-size:13px;
    }
    .steps {
        gap:25px;
        margin-top:35px;
        grid-template-columns:1fr;
    }
    .steps article {
        padding-left:63px;
    }
    .step-number {
        position:absolute;
        left:0;
        top:0;
    }
    .steps article:not(:last-child):after {
        display:none;
    }
    .steps p {
        max-width:none;
        margin-bottom:5px;
    }
    .faq-section {
        grid-template-columns:1fr;
        gap:24px;
        padding-block:45px 60px;
    }
    .contact {
        padding-block:45px;
    }
    .contact-grid {
        grid-template-columns:1fr;
        gap:35px;
    }
    .contact-copy {
        padding:0;
    }
    .contact-copy h2 {
        font-size:37px;
    }
    .contact-copy>p:not(.eyebrow) {
        max-width:none;
    }
    .contact-note {
        margin-top:23px;
    }
    .contact-form {
        padding:24px 20px;
    }
    .form-row {
        gap:12px;
    }
    .footer {
        flex-wrap:wrap;
        gap:20px;
    }
    .footer-brand {
        width:100%;
    }
}
@media(max-width:380px) {
    .hero h1 {
        font-size:42px;
    }
    .services,.form-row {
        grid-template-columns:1fr;
    }
    .service:nth-child(even) {
        border-left:0;
    }
    .service+.service {
        border-top:1px solid var(--line);
    }
    .hero-art {
        aspect-ratio:1;
    }
    .contact-form h3 {
        font-size:21px;
    }
}
/* Layout from the October brief. */
.header-bar {
    background:var(--blue);
    color:#fff;
}
.header { height:100px; }
.brand {
    background:var(--paper);
    border-radius:3px;
    padding:6px 10px;
}
.brand img { width:100px; height:62px; }
.header nav { gap:25px; }
.header nav>a:not(.button):hover { color:#ffb46f; }
.header .button {
    border-color:#ffffff65;
    background:transparent;
}
.header .button:hover { background:#ffffff15; }
.header .language-switch a { color:#d1dbef; }
.header .language-switch a[aria-current="true"] { color:#fff; }
.hero {
    grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);
    padding-block:48px 44px;
    align-items:center;
    border-bottom:3px solid var(--blue);
}
.hero h1 { font-size:clamp(43px,4.9vw,68px); }
.hero .intro { max-width:440px; font-size:16px; }
.hero-presence { display:inline-block; margin-top:6px; }
.hero-art {
    min-height:0;
    background:transparent;
    border-radius:0;
    align-items:center;
    justify-content:center;
}
.houses { width:170px; max-width:100%; margin:0 0 16px; }
.art-bottom {
    margin:0;
    padding:0;
    border:0;
    text-align:center;
    font-size:11px;
    color:var(--blue);
}
.section { padding-block:75px; }
.services { border:0; border-top:1px solid var(--line); border-radius:0; }
.service { padding:0 24px 20px 0; }
.service+.service { border:0; padding-left:24px; }
.service-top { margin:-15px 0 24px; }
.service-top>span:first-child {
    display:grid;
    place-items:center;
    width:29px;
    height:29px;
    border:1px solid #e6bf97;
    background:var(--paper);
    border-radius:50%;
    color:var(--orange);
}
.service h3 { font-size:15px; }
#suradnja { border-top:1px solid var(--line); }
.step-number { color:var(--orange); font-size:15px; border:0; justify-items:start; }
.steps article:not(:last-child):after { display:none; }
.about { background:var(--paper); padding-block:25px 85px; }
.about-grid { grid-template-columns:1.3fr 1fr; gap:65px; }
.boat-art { order:2; background:transparent; padding:0; min-height:0; }
.boat-art img { width:260px; max-width:100%; }
.about-copy { order:1; }
.benefit { gap:0; }
.benefit>span { display:none; }
.benefit h3 { font-size:11px; letter-spacing:.08em; }
.founders { display:flex; gap:28px; margin-top:32px; flex-wrap:wrap; }
.founder { display:flex; align-items:center; gap:12px; }
.founder-initials {
    display:grid;
    place-items:center;
    width:62px;
    height:62px;
    border:1px solid #a6b3ce;
    border-radius:50%;
    color:var(--blue);
    font-size:12px;
    flex-shrink:0;
}
.founder h3 { font-size:12px; margin:0 0 3px; }
.founder p { font-size:11px; color:var(--muted); margin:0; }
#obrazac { scroll-margin-top:24px; }
@media(max-width:1050px) {
    .header nav { gap:15px; font-size:12px; }
    .header .button { gap:12px; padding:10px 12px; }
    .about-grid { gap:35px; }
}
@media(max-width:850px) and (min-width:761px) {
    .header { gap:12px; }
    .header nav { gap:11px; font-size:11px; }
    .brand img { width:80px; height:53px; }
    .header .button span { display:none; }
}
@media(max-width:760px) {
    .header { height:90px; }
    .brand { padding:4px 8px; }
    .brand img { width:85px; height:55px; }
    .menu-toggle { color:#fff; border-color:#ffffff65; }
    .header nav { background:var(--blue); padding:25px 20px; gap:22px; }
    .header nav .button { padding:13px 16px; }
    .hero { grid-template-columns:minmax(0,1fr); padding-block:32px; gap:28px; }
    .hero h1 { font-size:clamp(40px,10vw,58px); }
    .hero-art { min-height:0; aspect-ratio:auto; max-width:400px; }
    .houses { width:130px; }
    .section { padding-block:55px; }
    .service { padding:0 16px 28px 0; }
    .service+.service { padding-left:16px; }
    .service:nth-child(odd) { padding-left:0; }
    .service:nth-child(n+3) { border-top:1px solid var(--line); }
    .about { padding-block:10px 55px; }
    .about-grid { grid-template-columns:1fr; gap:30px; }
    .boat-art { max-width:420px; width:100%; justify-self:center; }
    .boat-art img { max-height:none; }
    .founders { gap:22px; }
}
@media(max-width:380px) {
    .service+.service { padding-left:0; }
}
/* Property registration */
.registration-layout {
    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);
    align-items:start;
    gap:30px 64px;
    padding-block:36px 65px;
}
.registration-back { grid-column:1 / -1; justify-self:start; }
.registration-copy { padding-top:36px; min-width:0; }
.registration-copy h1 { font-size:clamp(35px,3.7vw,50px); }
.registration-copy>p:not(.eyebrow) { color:var(--muted); font-size:15px; }
.registration-next { border-top:1px solid var(--line); padding-top:24px; margin-top:30px; }
.registration-next h2 { font-size:18px; letter-spacing:-.02em; margin-bottom:10px; }
.registration-next p { font-size:13px; color:var(--muted); }
.registration-art { display:block; width:145px; height:auto; margin:35px auto; }
.registration-question a { color:var(--blue); text-decoration:underline; text-underline-offset:4px; }
.registration-form { border:1px solid var(--line); padding:36px; min-width:0; box-shadow:0 15px 45px #18388106; }
.registration-form>h2 { font-size:27px; margin-bottom:10px; }
.registration-form fieldset { border:0; padding:0; margin:25px 0 0; min-width:0; }
.registration-form legend { padding:0; margin-bottom:16px; font-size:10px; text-transform:uppercase; letter-spacing:.1em; color:var(--muted); font-weight:600; }
.registration-form legend small { text-transform:none; letter-spacing:0; }
.registration-form select {
    width:100%;
    background:transparent;
    color:var(--ink);
    font:inherit;
    font-size:12px;
    border:1px solid #d5d8dc;
    border-radius:3px;
    padding:12px 8px;
    margin-top:7px;
    min-width:0;
}
.registration-form select:focus-visible { outline:2px solid #6e93d2; outline-offset:1px; }
.registration-form .photo-upload { border:1px dashed #b5c1d5; border-radius:4px; padding:22px 16px; text-align:center; background:#eff2f74d; }
.upload-icon { display:block; font-size:28px; color:var(--orange); line-height:1; margin-bottom:10px; }
.photo-upload label { margin-bottom:5px; }
.photo-upload p { font-size:10px; color:var(--muted); margin-bottom:15px; }
.photo-upload input[type=file] { padding:9px; background:var(--paper); font-size:11px; }
.photo-upload input::file-selector-button { background:var(--blue); color:white; border:0; padding:8px 10px; border-radius:3px; margin-right:10px; cursor:pointer; }
.photo-previews { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:20px; }
.photo-preview { position:relative; min-width:0; }
.photo-preview img { width:100%; height:95px; object-fit:cover; display:block; border-radius:3px; }
.photo-preview>span { display:block; font-size:10px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.photo-preview button { position:absolute; right:5px; top:5px; width:28px; height:28px; border:0; border-radius:50%; background:var(--paper); color:var(--blue); cursor:pointer; font-size:20px; line-height:1; }
.photo-error { color:#9b331e; font-size:12px; margin:8px 0; }
.photo-error:empty { margin:0; }
.registration-form button:disabled { opacity:.65; cursor:wait; transform:none; }
@media(max-width:1050px) {
    .registration-layout { gap:25px 35px; }
    .registration-copy { padding-top:28px; }
    .registration-form { padding:28px; }
}
@media(max-width:760px) {
    .registration-layout { grid-template-columns:minmax(0,1fr); gap:30px; padding-block:30px 45px; }
    .registration-copy { padding-top:0; }
    .registration-copy h1 { font-size:38px; }
    .registration-next { margin-top:20px; }
    .registration-art { display:none; }
    .registration-copy .registration-question { margin:20px 0 0; font-size:13px; }
    .registration-form { padding:24px 20px; }
    .registration-form>h2 { font-size:25px; }
    .registration-form input:not([type=checkbox]),.registration-form textarea,.registration-form select { font-size:16px; }
    .registration-form .photo-upload input[type=file] { font-size:12px; }
    .registration-form .form-row { grid-template-columns:minmax(0,1fr); gap:0; }
}
@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto;
    }
    *,*:before,*:after {
        transition:none!important;
    }
}
