@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display&display=swap');
@import url('https://api.fontshare.com/v2/css?f[]=satoshi@400,500&display=swap');

/* ---------------------------------------------------------------
   HEADER, HERO AND GLOBAL SETTINGS
   --------------------------------------------------------------- */


:root{--pvm-paper:#E4E1DB;--pvm-surface:#ECE8E2;--pvm-ink:#1F1E1B;--pvm-body:#3A3833;--pvm-muted:#59574F;--pvm-accent:#33526A;--pvm-line:rgba(31,30,27,.23);--pvm-gutter:clamp(24px,5.6vw,96px)}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{background:var(--pvm-paper)!important;color:var(--pvm-ink);font-family:'Satoshi',Arial,sans-serif}
.pvm2-header.e-con{height:104px;min-height:104px;width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:20px;padding:20px var(--pvm-gutter);position:sticky;top:0;z-index:999;border-bottom:1px solid var(--pvm-line);background:rgba(228,225,219,.93);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.pvm2-logo{flex:0 0 206px;width:206px;max-width:206px}
.pvm2-logo .elementor-widget-container{width:100%}
.pvm2-logo img{width:100%;height:auto;display:block}
.pvm2-navigation{width:auto;max-width:none}
.pvm2-navigation nav{display:flex;align-items:center;gap:clamp(16px,2.1vw,40px);font-family:'Satoshi',Arial,sans-serif;font-size:clamp(12px,.85vw,14px);letter-spacing:.08em;font-weight:500}
.pvm2-navigation nav a{display:flex;align-items:center;gap:12px;min-height:44px;color:var(--pvm-ink);text-decoration:none;white-space:nowrap;position:relative}
.pvm2-navigation nav a:after{content:"";height:1px;background:var(--pvm-accent);position:absolute;left:0;right:0;bottom:6px;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.pvm2-navigation nav a:hover:after,.pvm2-navigation nav a:focus-visible:after{transform:scaleX(1)}
.pvm2-navigation nav .pvm2-contact-link{padding-left:clamp(16px,2.1vw,40px);border-left:1px solid var(--pvm-line)}
.pvm2-navigation .pvm2-toggle{display:none}
.pvm2-skip{position:fixed;top:-100px;left:16px;z-index:10000;background:var(--pvm-ink);color:var(--pvm-paper);padding:12px 18px}
.pvm2-skip:focus{top:16px}
.pvm2-hero.e-con{display:grid;grid-template-columns:1fr 1fr;gap:0;width:100%;min-height:min(740px,calc(100svh - 104px));background:var(--pvm-paper);align-items:stretch}
.pvm2-hero-copy.e-con{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:80px 40px 40px var(--pvm-gutter);min-width:0}
.pvm2-title h1,.pvm2-hero-copy h1.pvm2-title{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(56px,calc(18.4px + 5.2vw),104px);line-height:1.02;letter-spacing:-.045em;color:var(--pvm-ink);margin:0}
.pvm2-hero-media.e-con{display:block;position:relative;min-width:0;overflow:hidden;min-height:100%}
.pvm2-hero-photo{position:absolute!important;inset:0;width:100%;height:100%}
.pvm2-hero-photo .elementor-widget-container,.pvm2-hero-photo img{width:100%;height:100%;display:block}
.pvm2-hero-photo img{object-fit:cover;object-position:52% 46%}
.pvm2-hero-media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,rgba(228,225,219,.2),transparent 20%)}
.pvm2-navigation :focus-visible,.pvm2-hero :focus-visible{outline:2px solid var(--pvm-accent);outline-offset:4px}
@media (min-width:801px) and (max-width:1100px){.pvm2-header.e-con{gap:12px}.pvm2-logo{flex-basis:170px;max-width:170px}.pvm2-navigation nav{gap:16px;font-size:12px;letter-spacing:0}.pvm2-navigation nav .pvm2-contact-link{padding-left:16px}}
@media(max-width:800px){
 html{scroll-padding-top:90px}
 .pvm2-header.e-con{height:84px;min-height:84px;padding:14px var(--pvm-gutter)}
 .pvm2-logo{flex:0 0 165px;max-width:165px}
 .pvm2-navigation{position:static}
 .pvm2-navigation .pvm2-toggle{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;width:48px;height:48px;background:transparent;border:0;cursor:pointer;position:relative;z-index:1001}
 .pvm2-navigation .pvm2-toggle span{display:block;width:24px;height:1px;background:var(--pvm-ink);transition:transform .25s}
 .pvm2-navigation .pvm2-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
 .pvm2-navigation .pvm2-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
 .pvm2-navigation nav{position:absolute;top:100%;left:0;right:0;bottom:auto;height:calc(100svh - 84px);z-index:1000;display:none;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:25px var(--pvm-gutter);background:rgba(228,225,219,.98);font-size:15px;letter-spacing:.09em;overflow-y:auto}
 .pvm2-navigation nav.is-open{display:flex}
 .pvm2-navigation nav a{min-height:58px;border-bottom:1px solid var(--pvm-line)}
 .pvm2-navigation nav .pvm2-contact-link{padding-left:0;border-left:0}
 .pvm2-hero.e-con{display:flex;flex-direction:column;min-height:auto}
 .pvm2-hero-copy.e-con{width:100%;padding:48px var(--pvm-gutter) 40px}
 .pvm2-title h1,.pvm2-hero-copy h1.pvm2-title{font-size:clamp(56px,8.3vw,66px);line-height:1.02}
 .pvm2-hero-media.e-con{width:100%;min-height:390px}
}
@media(max-width:480px){.pvm2-hero-media.e-con{min-height:350px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pvm2-navigation *{transition:none!important}}
/* ---------------------------------------------------------------
   O NAMA
   --------------------------------------------------------------- */
.pvm2-page-body.e-con{display:block;width:100%;padding:0;margin:0;max-width:none;background:var(--pvm-paper)}
/* PVM / O NAMA — isolated section, no overrides of previous site */
.pvm2-office.e-con{display:flex;flex-direction:column;gap:0;width:100%;margin:0;padding:80px var(--pvm-gutter);background:var(--pvm-paper);color:var(--pvm-ink)}
.pvm2-office .pvm2-office-label{width:auto;max-width:100%;margin:0 0 40px}
.pvm2-office .pvm2-office-label .elementor-heading-title{font:500 clamp(12px,.73rem + .1vw,13px)/1.55 'Satoshi',Arial,sans-serif;letter-spacing:.15em;color:var(--pvm-accent)}
.pvm2-office .pvm2-office-title{margin:0 0 48px}
.pvm2-office .pvm2-office-title .elementor-heading-title{font:400 clamp(40px,1.5rem + 2.8vw,70.4px)/1.08 'DM Serif Display',Georgia,serif;letter-spacing:-.035em;color:var(--pvm-ink);margin:0}
.pvm2-office .pvm2-office-layout.e-con{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:80px;align-items:start;width:100%;min-width:0}
.pvm2-office .pvm2-office-copy.e-con{display:flex;flex-direction:column;align-items:stretch;gap:24px;min-width:0;max-width:64ch}
.pvm2-office .pvm2-office-paragraph{width:100%;margin:0}
.pvm2-office .pvm2-office-paragraph p{font:400 clamp(16px,.95rem + .22vw,18px)/1.65 'Satoshi',Arial,sans-serif;color:var(--pvm-body);margin:0}
.pvm2-office .pvm2-office-intro p{font:400 clamp(20px,1rem + .65vw,25.6px)/1.5 'Satoshi',Arial,sans-serif;color:var(--pvm-ink);margin:0}
.pvm2-office .pvm2-office-aside.e-con{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;padding-left:40px;border-left:1px solid var(--pvm-line)}
.pvm2-office .pvm2-office-stat.e-con{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:24px 0;border-top:1px solid var(--pvm-line)}
.pvm2-office .pvm2-office-stat:first-child{padding-top:0;border-top:0}
.pvm2-office .pvm2-office-stat-title{margin:0 0 16px}
.pvm2-office .pvm2-office-stat-title .elementor-heading-title{font:400 clamp(27.2px,1.15rem + 1.4vw,41.6px)/1.2 'DM Serif Display',Georgia,serif;letter-spacing:-.035em;color:var(--pvm-ink);margin:0;overflow-wrap:break-word}
.pvm2-office .pvm2-office-stat-description{margin:0}
.pvm2-office .pvm2-office-stat-description p{font:400 clamp(14px,.85rem + .1vw,15.2px)/1.7 'Satoshi',Arial,sans-serif;color:var(--pvm-body);margin:0}
.pvm2-office .pvm2-office-quote{margin:32px 0 0}
.pvm2-office .pvm2-office-quote blockquote{font:400 clamp(27.2px,1.15rem + 1.4vw,41.6px)/1.3 'DM Serif Display',Georgia,serif;letter-spacing:-.02em;color:var(--pvm-accent);margin:0}
@media (min-width:801px) and (max-width:1100px){.pvm2-office .pvm2-office-layout.e-con{column-gap:40px}}
@media (max-width:800px){
.pvm2-office.e-con{padding:48px var(--pvm-gutter)}
.pvm2-office .pvm2-office-label{margin-bottom:24px}
.pvm2-office .pvm2-office-title{margin-bottom:32px}
.pvm2-office .pvm2-office-layout.e-con{display:grid;grid-template-columns:1fr;gap:24px}
.pvm2-office .pvm2-office-copy.e-con{max-width:100%}
.pvm2-office .pvm2-office-aside.e-con{padding-left:0;border-left:0;margin-top:32px}
.pvm2-office .pvm2-office-stat:first-child{border-top:1px solid var(--pvm-line);padding-top:24px}
.pvm2-office .pvm2-office-quote{max-width:32ch}
}
/* ---------------------------------------------------------------
   NAS PRISTUP
   --------------------------------------------------------------- */
/* Naš pristup: source prototype index.html + style.css; scoped to section */
.pvm2-approach.e-con{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%;max-width:none;background:#33526A;color:#F0EDE7;padding:80px var(--pvm-gutter);margin:0}
.pvm2-approach .pvm2-approach-label{width:100%;margin:0 0 40px}
.pvm2-approach .pvm2-approach-label .elementor-heading-title{font-family:'Satoshi',Arial,sans-serif;font-size:13px;font-weight:500;line-height:1.5;letter-spacing:.15em;color:#F0EDE7;margin:0}
.pvm2-approach .pvm2-approach-list.e-con{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%}
.pvm2-approach .pvm2-approach-row.e-con{display:grid;grid-template-columns:48px minmax(0,1fr) minmax(0,1.2fr);column-gap:32px;align-items:start;gap:32px;width:100%;border-top:1px solid rgba(240,237,231,.3);padding:32px 0;min-width:0}
.pvm2-approach .pvm2-approach-index .elementor-heading-title{font-family:'Satoshi',Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.65;letter-spacing:0;color:#F0EDE7;margin:8px 0 0}
.pvm2-approach .pvm2-approach-heading{margin:0;min-width:0}
.pvm2-approach .pvm2-approach-heading .elementor-heading-title{font-family:'DM Serif Display',Georgia,serif;font-size:clamp(29px,1.2rem + 1.8vw,42px);font-weight:400;letter-spacing:-.035em;line-height:1.25;max-width:16ch;margin:0;color:#F0EDE7}
.pvm2-approach .pvm2-approach-description{margin:0;min-width:0}
.pvm2-approach .pvm2-approach-description p{font-family:'Satoshi',Arial,sans-serif;font-size:clamp(16px,1rem + .15vw,18px);font-weight:400;line-height:1.65;max-width:50ch;margin:0;color:#F0EDE7}
@media (max-width:800px){
.pvm2-approach.e-con{padding:48px var(--pvm-gutter)}
.pvm2-approach .pvm2-approach-label{margin-bottom:32px}
.pvm2-approach .pvm2-approach-row.e-con{grid-template-columns:32px minmax(0,1fr);column-gap:16px;row-gap:16px;padding:24px 0}
.pvm2-approach .pvm2-approach-index{grid-column:1;grid-row:1}
.pvm2-approach .pvm2-approach-heading{grid-column:2;grid-row:1}
.pvm2-approach .pvm2-approach-heading .elementor-heading-title{font-size:clamp(26px,5.2vw,34px);max-width:none}
.pvm2-approach .pvm2-approach-description{grid-column:2;grid-row:2}
}
/* ---------------------------------------------------------------
   PODRUCJA PRAKSE, TIM, KONTAKT I FOOTER
   --------------------------------------------------------------- */
/* PVM 2026 — Remaining sections: practice, team, contact, footer; scoped styles */
.pvm2-focus.e-con,.pvm2-team.e-con,.pvm2-contact.e-con{width:100%;max-width:none;margin:0;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:80px var(--pvm-gutter)}
.pvm2-focus.e-con,.pvm2-team.e-con{background:var(--pvm-paper);color:var(--pvm-ink)}
.pvm2-focus .pvm2-section-eyebrow,.pvm2-team .pvm2-section-eyebrow,.pvm2-contact .pvm2-section-eyebrow{margin:0 0 40px;width:100%}
.pvm2-focus .pvm2-section-eyebrow .elementor-heading-title,.pvm2-team .pvm2-section-eyebrow .elementor-heading-title,.pvm2-contact .pvm2-section-eyebrow .elementor-heading-title{font:500 13px/1.55 'Satoshi',Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--pvm-accent);margin:0}
.pvm2-focus .pvm2-focus-intro.e-con{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:end;margin:0 0 64px}
.pvm2-focus .pvm2-focus-title .elementor-heading-title{font:400 clamp(40px,1.5rem + 2.8vw,70px)/1.08 'DM Serif Display',Georgia,serif;letter-spacing:-.035em;color:var(--pvm-ink);margin:0}
.pvm2-focus .pvm2-focus-lead{max-width:45ch;margin:0}
.pvm2-focus .pvm2-focus-lead p{font:400 18px/1.65 'Satoshi',Arial,sans-serif;color:var(--pvm-body);margin:0}
.pvm2-focus .pvm2-focus-list.e-con{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--pvm-line)}
.pvm2-focus .pvm2-focus-accordion{width:100%;margin:0}
.pvm2-focus .pvm2-focus-accordion .elementor-widget-container{width:100%}
.pvm2-focus details.pvm2-practice{margin:0;border-bottom:1px solid var(--pvm-line)}
.pvm2-focus details.pvm2-practice>summary{display:grid;grid-template-columns:48px minmax(0,1fr) 40px;align-items:center;gap:24px;min-height:96px;padding:24px 0;list-style:none;cursor:pointer;user-select:none}
.pvm2-focus details.pvm2-practice>summary::-webkit-details-marker{display:none}
.pvm2-focus details.pvm2-practice>summary::marker{content:''}
.pvm2-focus .pvm2-practice-number{font:400 14px/1.55 'Satoshi',Arial,sans-serif;color:var(--pvm-muted);font-variant-numeric:tabular-nums}
.pvm2-focus .pvm2-practice-heading{font:400 clamp(32px,1.15rem + 1.4vw,42px)/1.2 'DM Serif Display',Georgia,serif;letter-spacing:-.025em;color:var(--pvm-accent);margin:0;overflow-wrap:break-word}
.pvm2-focus .pvm2-practice-plus{font:400 36px/1 'Satoshi',Arial,sans-serif;color:var(--pvm-accent);text-align:right;transition:transform .3s ease;transform-origin:50% 50%}
.pvm2-focus details.pvm2-practice[open] .pvm2-practice-plus{transform:rotate(45deg)}
.pvm2-focus .pvm2-practice-content{padding:0 64px 32px 72px;animation:pvm2-details-appear .3s ease both}
.pvm2-focus .pvm2-practice-content p{font:400 clamp(16px,.95rem + .22vw,18px)/1.65 'Satoshi',Arial,sans-serif;color:var(--pvm-body);max-width:72ch;margin:0}
.pvm2-focus .pvm2-practice:focus-within{outline:none}
.pvm2-focus .pvm2-practice summary:focus-visible{outline:2px solid var(--pvm-accent);outline-offset:3px}
@keyframes pvm2-details-appear{from{opacity:.45;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
/* Team */
.pvm2-team.e-con{border-top:1px solid var(--pvm-line)}
.pvm2-team .pvm2-team-heading{width:100%;margin:0 0 48px}
.pvm2-team .pvm2-team-heading .elementor-heading-title{font:400 clamp(29px,1.3rem + 1.8vw,48px)/1.25 'DM Serif Display',Georgia,serif;letter-spacing:-.035em;color:var(--pvm-ink);max-width:42ch;margin:0}
.pvm2-team .pvm2-team-grid.e-con{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.pvm2-team .pvm2-team-person.e-con{width:100%;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0}
.pvm2-team .pvm2-person-portrait.e-con{width:100%;position:relative;aspect-ratio:1.12;background:var(--pvm-surface);overflow:hidden;display:block}
.pvm2-team .pvm2-person-photo{position:absolute!important;inset:0;width:100%;height:100%}
.pvm2-team .pvm2-person-photo .elementor-widget-container,.pvm2-team .pvm2-person-photo img{width:100%;height:100%;display:block}
.pvm2-team .pvm2-person-photo img{object-fit:cover;object-position:50% 28%;transition:transform .7s cubic-bezier(.16,1,.3,1)}
.pvm2-team .pvm2-team-person:hover .pvm2-person-photo img{transform:scale(1.025)}
.pvm2-team .pvm2-person-info.e-con{width:100%;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;padding:24px 0;border-bottom:1px solid var(--pvm-line)}
.pvm2-team .pvm2-person-name{margin:0 0 8px}
.pvm2-team .pvm2-person-name .elementor-heading-title{font:400 clamp(27px,1.15rem + 1.4vw,42px)/1.2 'DM Serif Display',Georgia,serif;letter-spacing:-.025em;color:var(--pvm-ink);margin:0}
.pvm2-team .pvm2-person-role{margin:0}
.pvm2-team .pvm2-person-role .elementor-heading-title{font:500 13px/1.5 'Satoshi',Arial,sans-serif;letter-spacing:.15em;color:var(--pvm-muted);text-transform:uppercase;margin:0}
.pvm2-team .pvm2-person-action{flex:0 0 48px;margin:0}
.pvm2-team .pvm2-person-action a{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--pvm-line);color:var(--pvm-ink);font:400 24px/1 'Satoshi',Arial,sans-serif;text-decoration:none;transition:background .25s,color .25s}
.pvm2-team .pvm2-person-action a:hover,.pvm2-team .pvm2-person-action a:focus-visible{background:var(--pvm-accent);color:var(--pvm-inverse,#F0EDE7)}
.pvm2-team .pvm2-person-bio{max-width:64ch;margin:0;padding-top:24px}
.pvm2-team .pvm2-person-bio p{font:400 clamp(16px,.95rem + .22vw,18px)/1.65 'Satoshi',Arial,sans-serif;color:var(--pvm-body);margin:0}
/* Contact */
.pvm2-contact.e-con{background:#ECE8E2;border-top:1px solid var(--pvm-line);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);column-gap:64px;align-items:start;padding:64px var(--pvm-gutter) 80px}
.pvm2-contact .pvm2-contact-left.e-con,.pvm2-contact .pvm2-contact-right.e-con{display:flex;flex-direction:column;gap:0;align-items:stretch;min-width:0;width:100%}
.pvm2-contact .pvm2-section-eyebrow{margin:0 0 32px}
.pvm2-contact .pvm2-contact-title{margin:0}
.pvm2-contact .pvm2-contact-title .elementor-heading-title{font:400 clamp(40px,1.5rem + 2.8vw,70px)/1.08 'DM Serif Display',Georgia,serif;letter-spacing:-.035em;color:var(--pvm-ink);max-width:13ch;margin:0}
.pvm2-contact .pvm2-contact-right.e-con{gap:32px;align-self:center}
.pvm2-contact .pvm2-contact-group.e-con{display:flex;flex-direction:column;gap:0;align-items:flex-start;width:100%}
.pvm2-contact .pvm2-contact-eyebrow{margin:0 0 12px}
.pvm2-contact .pvm2-contact-eyebrow .elementor-heading-title{font:500 13px/1.5 'Satoshi',Arial,sans-serif;letter-spacing:.15em;color:var(--pvm-muted);margin:0}
.pvm2-contact .pvm2-contact-link{width:auto;margin:0}
.pvm2-contact .pvm2-contact-link a{display:block;min-height:36px;font:400 clamp(16px,.95rem + .22vw,18px)/1.65 'Satoshi',Arial,sans-serif;color:var(--pvm-ink);text-decoration:none}
.pvm2-contact .pvm2-contact-mail a{border-bottom:1px solid var(--pvm-line);padding:8px 0;font-size:clamp(20px,1rem + .65vw,26px)}
.pvm2-contact .pvm2-contact-address{margin:0}
.pvm2-contact .pvm2-contact-address p{font:400 clamp(16px,.95rem + .22vw,18px)/1.65 'Satoshi',Arial,sans-serif;color:var(--pvm-body);margin:0}
/* Footer */
.pvm2-footer.e-con{width:100%;max-width:none;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:24px var(--pvm-gutter);background:var(--pvm-paper)}
.pvm2-footer .pvm2-footer-copyright{margin:0;justify-self:start}
.pvm2-footer .pvm2-footer-copyright p{font:400 13px/1.5 'Satoshi',Arial,sans-serif;color:var(--pvm-body);margin:0}
.pvm2-footer .pvm2-footer-badge{width:100px;max-width:100px;justify-self:center;margin:0}
.pvm2-footer .pvm2-footer-badge img{width:100px;height:100px;object-fit:contain;display:block}
.pvm2-footer .pvm2-footer-policy{margin:0;justify-self:end}
.pvm2-footer .pvm2-footer-policy a{display:flex;align-items:center;min-height:44px;font:500 13px/1.5 'Satoshi',Arial,sans-serif;letter-spacing:.07em;color:var(--pvm-ink);text-decoration:none}
.pvm2-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.pvm2-team a:focus-visible,.pvm2-contact a:focus-visible,.pvm2-footer a:focus-visible{outline:2px solid var(--pvm-accent);outline-offset:4px}
@media(min-width:801px) and (max-width:1100px){.pvm2-focus .pvm2-focus-intro.e-con{gap:40px}.pvm2-contact.e-con{column-gap:40px}.pvm2-team .pvm2-team-grid.e-con{gap:32px}}
@media(max-width:800px){
.pvm2-focus.e-con,.pvm2-team.e-con{padding:48px var(--pvm-gutter)}
.pvm2-focus .pvm2-section-eyebrow,.pvm2-team .pvm2-section-eyebrow{margin-bottom:24px}
.pvm2-focus .pvm2-focus-intro.e-con{grid-template-columns:minmax(0,1fr);gap:24px;margin-bottom:40px}
.pvm2-focus .pvm2-focus-title .elementor-heading-title{font-size:clamp(40px,7vw,54px)}
.pvm2-focus .pvm2-focus-title br{display:none}
.pvm2-focus .pvm2-focus-lead p{font-size:16px}
.pvm2-focus details.pvm2-practice>summary{grid-template-columns:24px minmax(0,1fr) 24px;gap:12px;min-height:76px;padding:24px 0}
.pvm2-focus .pvm2-practice-number{font-size:13px}
.pvm2-focus .pvm2-practice-heading{font-size:clamp(22px,4vw,26px);line-height:1.25}
.pvm2-focus .pvm2-practice-plus{font-size:29px}
.pvm2-focus .pvm2-practice-content{padding:0 0 24px}
.pvm2-team .pvm2-team-heading{margin-bottom:32px}
.pvm2-team .pvm2-team-heading .elementor-heading-title{font-size:clamp(29px,1.5rem + 1vw,37px)}
.pvm2-team .pvm2-team-grid.e-con{gap:24px}
.pvm2-team .pvm2-person-portrait.e-con{aspect-ratio:.78}
.pvm2-team .pvm2-person-info.e-con{align-items:flex-start;padding:16px 0}
.pvm2-team .pvm2-person-name .elementor-heading-title{font-size:clamp(20px,3vw,26px)}
.pvm2-contact.e-con{grid-template-columns:1fr;row-gap:48px;padding:48px var(--pvm-gutter)}
.pvm2-contact .pvm2-contact-right.e-con{align-self:stretch}
.pvm2-footer.e-con{gap:24px;grid-template-columns:1fr auto 1fr}
}
@media(max-width:480px){
.pvm2-team .pvm2-team-grid.e-con{grid-template-columns:1fr;gap:40px}
.pvm2-team .pvm2-person-portrait.e-con{aspect-ratio:1.1}
.pvm2-team .pvm2-person-name .elementor-heading-title{font-size:clamp(27px,1.15rem + 1.4vw,42px)}
.pvm2-footer.e-con{grid-template-columns:1fr auto;gap:12px;align-items:center;padding:16px var(--pvm-gutter)}
.pvm2-footer .pvm2-footer-badge{grid-column:2;grid-row:1}
.pvm2-footer .pvm2-footer-policy{grid-column:1 / -1;justify-self:start}
}
@media(prefers-reduced-motion:reduce){.pvm2-focus .pvm2-practice-content{animation:none}.pvm2-focus .pvm2-practice-plus,.pvm2-team .pvm2-person-photo img,.pvm2-team .pvm2-person-action a{transition:none!important}}

/* === PVM2 QA: iPhone SE/mobile alignment pass — 2026-10-19 === */
@media (max-width:800px){
 /* Remove Elementor inner container insets: all section content starts at one gutter */
 .pvm2-office .pvm2-office-layout.e-con,
 .pvm2-office .pvm2-office-copy.e-con,
 .pvm2-office .pvm2-office-aside.e-con,
 .pvm2-approach .pvm2-approach-list.e-con,
 .pvm2-approach .pvm2-approach-row.e-con,
 .pvm2-focus .pvm2-focus-intro.e-con,
 .pvm2-focus .pvm2-focus-list.e-con,
 .pvm2-team .pvm2-team-grid.e-con,
 .pvm2-team .pvm2-team-person.e-con,
 .pvm2-team .pvm2-person-info.e-con,
 .pvm2-contact .pvm2-contact-left.e-con,
 .pvm2-contact .pvm2-contact-right.e-con {
   padding-left:0;
   padding-right:0;
   margin-left:0;
   margin-right:0;
   max-width:100%;
 }
 /* Client brief: each Naš pristup row is number / title / text, vertically stacked */
 .pvm2-approach .pvm2-approach-row.e-con {
   display:grid;
   grid-template-columns:minmax(0,1fr);
   column-gap:0;
   row-gap:12px;
   padding-top:24px;
   padding-bottom:24px;
 }
 .pvm2-approach .pvm2-approach-index,
 .pvm2-approach .pvm2-approach-heading,
 .pvm2-approach .pvm2-approach-description {
   grid-column:1;
   grid-row:auto;
   width:100%;
   min-width:0;
 }
 .pvm2-approach .pvm2-approach-index .elementor-heading-title {margin:0}
 .pvm2-approach .pvm2-approach-description p{max-width:100%}
 /* Partner names/roles on the left; mail arrow stays on the right */
 .pvm2-team .pvm2-person-info.e-con {
   display:grid;
   grid-template-columns:minmax(0,1fr) 48px;
   align-items:center;
   column-gap:12px;
   padding-top:18px;
   padding-bottom:18px;
 }
 .pvm2-team .pvm2-person-name-and-role.e-con {min-width:0;width:100%;padding:0}
 .pvm2-team .pvm2-person-action{justify-self:end;align-self:center;margin:0}
 .pvm2-team .pvm2-person-bio{max-width:100%;padding-top:20px}
 /* Contact information: consistent rhythm once columns stack */
 .pvm2-contact .pvm2-contact-right.e-con{gap:28px}
 .pvm2-contact .pvm2-contact-group.e-con{padding:0}
}
@media(max-width:480px){
 .pvm2-team .pvm2-team-grid.e-con{grid-template-columns:minmax(0,1fr);gap:40px}
 .pvm2-team .pvm2-person-portrait.e-con{width:100%;max-width:none}
 .pvm2-team .pvm2-person-name .elementor-heading-title{overflow-wrap:break-word}
}
/* === End PVM2 mobile QA pass === */

/* ---------------------------------------------------------------
   PORTRAITS QA (2026-10-19): show the full vertical photographs
   --------------------------------------------------------------- */
.pvm2-team .pvm2-person-portrait.e-con {
    aspect-ratio: 2 / 3;
}
.pvm2-team .pvm2-person-photo img {
    object-fit: cover;
    object-position: center center;
}
@media (max-width: 800px) {
    .pvm2-team .pvm2-person-portrait.e-con { aspect-ratio: 2 / 3; }
}
@media (max-width: 480px) {
    .pvm2-team .pvm2-person-portrait.e-con { aspect-ratio: 2 / 3; }
}


/* ===========================================================================
  PVM2 / client QA round 2 — 20 Oct 2026
  Scoped to page ID 7 via the plugin. Based on the approved PVM HTML prototype.
  Do not overwrite mobile QA from 19 Oct, except to restore reference portrait crop.
  =========================================================================== */

/* Align the VISIBLE left edge of the transparent logo with the section gutter.
   The approved 575px logo image has 14px transparent inset on each side. */
.pvm2-header .pvm2-logo{margin-left:-5px!important}

/* Hero: avoid cutting off the top of the partners' heads on short desktops.
   Hero stays 50/50; mobile retains the previously approved stacked layout. */
@media(min-width:801px){
  .pvm2-hero.e-con{min-height:min(740px,max(600px,calc(100svh - 104px)))}
  .pvm2-hero .pvm2-hero-photo img{object-fit:cover;object-position:52% 12%}
}
@media(max-width:800px){
  .pvm2-header .pvm2-logo{margin-left:-4px!important}
  .pvm2-hero .pvm2-hero-photo img{object-fit:cover;object-position:50% 42%}
}

/* Normalize native Elementor widget offsets; preserve deliberate component
   spacing rules below (their class-specific selectors have higher priority). */
.pvm2-page-body :where(.elementor-widget),
.pvm2-footer :where(.elementor-widget),
.pvm2-header :where(.elementor-widget){--widgets-spacing:0px;margin-block-end:0}
.pvm2-page-body .e-con,
.pvm2-footer.e-con{min-width:0}

/* O nama — both columns start at the same top baseline and end at similar
   visual height. Retain the 1.2:1 columns specified in the approved prototype. */
@media(min-width:801px){
  .pvm2-office .pvm2-office-layout.e-con{
    display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);
    align-items:stretch;column-gap:80px
  }
  .pvm2-office .pvm2-office-aside.e-con{
    display:flex;flex-direction:column;align-items:stretch;
    height:100%;min-height:0;justify-content:flex-start
  }
  .pvm2-office .pvm2-office-quote{margin-top:auto;padding-top:32px}
  .pvm2-office .pvm2-office-stat-title{margin-bottom:24px}
  .pvm2-office .pvm2-office-stat.e-con{align-items:stretch}
}
@media(min-width:801px) and (max-width:1100px){
  .pvm2-office .pvm2-office-layout.e-con{column-gap:40px}
}

/* Nas pristup — lock number/title/description to the reference grid and
   remove unintended offsets coming from individual Elementor widgets. */
@media(min-width:801px){
 .pvm2-approach .pvm2-approach-row.e-con{
   display:grid;grid-template-columns:48px minmax(0,1fr) minmax(0,1.2fr);
   column-gap:32px;align-items:start;justify-items:stretch
 }
 .pvm2-approach .pvm2-approach-row.e-con > .elementor-widget{
   min-width:0;width:100%;padding:0
 }
}

/* Practice intro/accordion: a shared horizontal grid with consistent
   leading edges and no Elementor content indentation. */
.pvm2-focus .pvm2-focus-intro.e-con,
.pvm2-focus .pvm2-focus-list.e-con{min-width:0;padding-left:0;padding-right:0}
.pvm2-focus .pvm2-focus-accordion{width:100%;min-width:0}
.pvm2-focus .pvm2-focus-intro.e-con > .elementor-widget{min-width:0}

/* Tim — IMPORTANT: restore EXACT reference proportions/crop from the
   black-and-white approved reference but retain the client's colour files. */
.pvm2-team .pvm2-team-grid.e-con{min-width:0}
.pvm2-team .pvm2-person-portrait.e-con{aspect-ratio:1.12}
.pvm2-team .pvm2-person-photo,
.pvm2-team .pvm2-person-photo .elementor-widget-container,
.pvm2-team .pvm2-person-photo img{width:100%;height:100%}
.pvm2-team .pvm2-person-photo img{object-fit:cover;object-position:50% 28%}
@media(max-width:800px){
 .pvm2-team .pvm2-person-portrait.e-con{aspect-ratio:.78}
}
@media(max-width:480px){
 .pvm2-team .pvm2-person-portrait.e-con{aspect-ratio:1.1}
}

/* Team details/contact/footer: consistent section edges, no arbitrary
   widget gutters; maintain mobile QA already confirmed by the user. */
.pvm2-team .pvm2-team-grid.e-con,
.pvm2-contact .pvm2-contact-left.e-con,
.pvm2-contact .pvm2-contact-right.e-con{padding-left:0;padding-right:0}
.pvm2-team .pvm2-person-name-and-role.e-con{min-width:0}
.pvm2-contact .pvm2-contact-group.e-con{align-items:flex-start}

/* End client QA round 2. */


/* PVM2 1.1.2 — new native Elementor Flexbox hero, mobile only.
   The original responsive rules targeted .e-con; newly rebuilt hero uses
   Flexbox structure, so selectors must not depend on Elementor internals. */
@media (max-width: 800px) {
  .pvm2-hero {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    gap: 0 !important;
  }
  .pvm2-hero > .pvm2-hero-copy,
  .pvm2-hero > .pvm2-hero-media {
    box-sizing: border-box;
    display: block;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
    grid-column: auto !important;
  }
  .pvm2-hero > .pvm2-hero-copy {
    padding: 48px var(--pvm-gutter) 36px !important;
    height: auto !important;
  }
  .pvm2-hero .pvm2-title,
  .pvm2-hero .pvm2-title h1 {
    font-size: clamp(56px, 8.3vw, 66px) !important;
    line-height: 1.02;
    max-width: 100%;
    overflow-wrap: normal;
  }
  .pvm2-hero > .pvm2-hero-media {
    position: relative !important;
    overflow: hidden;
    height: clamp(350px, 100vw, 420px) !important;
    min-height: clamp(350px, 100vw, 420px) !important;
  }
  .pvm2-hero-media .pvm2-hero-photo,
  .pvm2-hero-media .pvm2-hero-photo .elementor-widget-container {
    position: absolute;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .pvm2-hero-media .pvm2-hero-photo img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: 50% 42%;
  }
}

/* PVM2 1.1.3 — optical desktop alignment of rebuilt H1.
   Elementor editor margin for this H1 is superseded by the site CSS.
   Adjust only the rendered H1; leave the mobile hero and other sections intact. */
@media (min-width: 801px) {
  .pvm2-hero .pvm2-hero-copy h1.pvm2-title {
    position: relative;
    left: -10px;
  }
}
