/* Public website smartstudio.work – Editorial look of the partner area, set in Studio Sans. */
@font-face{font-family:Studio Sans;src:url('/assets/fonts/studio-sans.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--paper:#f8f6f1;--ink:#24251f;--muted:#65665f;--line:#d9d6ce;--accent:#a13e25;--accent-dark:#87331e;--panel:#eeece4;--field:#fffdf9;--sans:'Studio Sans',Arial,sans-serif;--wrap:min(1360px,calc(100% - 112px));color-scheme:light;font-family:var(--sans);color:var(--ink);background:var(--paper);font-size:16px;font-synthesis:none;-webkit-text-size-adjust:100%}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink)}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer;border:0}
button:disabled{cursor:default;opacity:.55}
a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
[hidden]{display:none!important}
.skip{position:fixed;top:-100px;left:20px;background:var(--ink);color:var(--paper);padding:15px;z-index:100}.skip:focus{top:10px}
section[id]{scroll-margin-top:24px}
.eyebrow{text-transform:uppercase;font-size:12px;font-weight:500;letter-spacing:2px;color:var(--accent);line-height:1.7;margin:0 0 22px}
.wordmark{font-size:35px;font-weight:580;letter-spacing:-1.8px;line-height:1;white-space:nowrap}
.brand-dot{color:var(--accent)}

/* Header: navigation, language, partner login top right */
.pub-header{width:var(--wrap);margin-inline:auto;height:100px;display:flex;align-items:center;gap:44px;border-bottom:1px solid var(--line)}
.pub-nav{display:flex;gap:32px;margin-left:auto;font-size:15px}
.pub-nav a{position:relative;padding:8px 0}
.pub-nav a:after{content:'';position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.pub-nav a:hover:after{transform:scaleX(1)}
.pub-lang{display:flex;gap:2px;font-size:12px;letter-spacing:.8px}
.pub-lang a{padding:7px 7px;color:var(--muted);border-radius:3px}
.pub-lang a[aria-current]{color:var(--ink);font-weight:600;box-shadow:inset 0 -1px var(--accent)}
.pub-lang a:hover{color:var(--ink)}
.pub-header .pub-lang{border-left:1px solid var(--line);padding-left:28px}
.pub-login{font-size:14px;color:var(--accent);border-bottom:1px solid var(--accent);padding-bottom:6px;white-space:nowrap}
.pub-login:hover{color:var(--accent-dark)}

/* Hero */
.pub-hero{width:var(--wrap);margin-inline:auto;padding:92px 0 104px;display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:60px;align-items:end}
.pub-hero h1{font-size:clamp(64px,8.4vw,138px);font-weight:720;letter-spacing:-.055em;line-height:.92;margin:0 0 34px}
.pub-hero h1 em{font-style:normal;color:var(--accent)}
.pub-lead{font-size:clamp(18px,1.6vw,23px);font-weight:350;line-height:1.55;color:var(--muted);max-width:640px;margin:0}
.pub-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 34px;margin-top:40px}
.pub-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:14px 26px;background:var(--accent);color:#fff;border-radius:4px;font-size:15px;font-weight:500;transition:background .2s}
.pub-button:hover{background:var(--accent-dark)}
.pub-button>span{transition:transform .2s}.pub-button:hover>span{transform:translateX(3px)}
.pub-mail{font-size:15px;border-bottom:1px solid var(--line);padding-bottom:5px}
.pub-mail:hover{border-color:var(--accent)}
.hero-aside{border-left:1px solid var(--line);padding-left:30px;margin-bottom:12px}
.hero-aside p{font-size:20px;line-height:1.45;color:var(--muted);margin:0}
.hero-aside>span{display:block;width:26px;height:2px;background:var(--accent);margin-top:23px}

/* Sections */
.pub-section{width:var(--wrap);margin-inline:auto;padding:30px 0 110px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,2fr);gap:60px}
.pub-section-head h2,.pub-contact h2{font-size:clamp(38px,4vw,62px);font-weight:650;letter-spacing:-.04em;line-height:1;margin:0}
.pub-services,.pub-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 44px}
.pub-services li{padding:26px 0 34px;border-top:1px solid var(--line)}
.pub-services li:nth-child(-n+2){border-top:0;padding-top:4px}
.pub-num{display:block;color:var(--accent);font-size:12px;font-variant-numeric:tabular-nums;margin-bottom:16px}
.pub-services h3,.pub-steps h3{font-size:clamp(22px,1.9vw,28px);font-weight:600;letter-spacing:-.025em;line-height:1.15;margin:0 0 12px}
.pub-services p,.pub-steps p{font-size:16px;line-height:1.65;color:var(--muted);margin:0;max-width:470px}
.pub-steps{grid-template-columns:repeat(4,1fr);gap:0 30px;counter-reset:step}
.pub-steps li{position:relative;padding-top:4px}
.pub-step{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--accent);border-radius:50%;color:var(--accent);font-size:15px;margin-bottom:26px;background:var(--paper);position:relative;z-index:1}
.pub-steps li:not(:last-child):before{content:'';position:absolute;top:26px;left:44px;right:-30px;height:1px;background:var(--line)}

/* Contact */
.pub-contact{width:var(--wrap);margin-inline:auto;padding:30px 0 100px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:80px;align-items:start}
.pub-contact h2{font-size:clamp(56px,6.4vw,104px);font-weight:720;letter-spacing:-.055em;line-height:.92;margin-bottom:28px}
.pub-contact-intro>p:not(.eyebrow){font-size:19px;line-height:1.6;color:var(--muted);max-width:430px;margin:0}
.pub-mail-block{margin-top:44px!important;padding-top:22px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px}
.pub-mail-block span{text-transform:uppercase;font-size:11px;letter-spacing:1.6px;color:var(--muted)}
.pub-mail-block a{font-size:clamp(20px,2vw,27px);font-weight:560;letter-spacing:-.02em;color:var(--ink);width:fit-content;border-bottom:1px solid var(--accent);padding-bottom:4px}
.pub-mail-block a:hover{color:var(--accent)}
.pub-panel{background:var(--panel);border:1px solid #e0ddd4;border-radius:4px;padding:40px}
.pub-form h3{font-size:30px;font-weight:650;letter-spacing:-.03em;margin:0 0 24px}
.pub-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.pub-form label{display:flex;flex-direction:column;gap:8px;font-size:14px}
.pub-form small{color:var(--muted);font-size:12px;margin-left:4px}
.pub-form input:not([type=radio]),.pub-form textarea{width:100%;min-height:48px;border:1px solid #cfcec3;border-radius:4px;background:var(--field);padding:11px 13px;font-size:16px;color:var(--ink)}
.pub-form input::placeholder{color:#9a9a92}
.pub-form textarea{resize:vertical;min-height:110px;line-height:1.5}
.pub-form [aria-invalid=true]{border-color:var(--accent)!important}
.pub-times{border:0;padding:0;margin:22px 0 0}
.pub-times legend{font-size:14px;padding:0;margin-bottom:10px}
.pub-times{display:flex;flex-wrap:wrap;gap:8px}
.pub-times label{flex-direction:row;position:relative}
.pub-times input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.pub-times span{display:block;padding:10px 15px;border:1px solid #cfcec3;border-radius:99px;background:var(--field);font-size:14px;transition:background .15s,border-color .15s,color .15s}
.pub-times input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.pub-times input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}
.pub-message{margin-top:20px}
.pub-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cf-turnstile{margin-top:20px;min-height:65px}
.pub-note{font-size:13px;line-height:1.55;color:var(--muted);margin:18px 0 0}
.pub-note a{text-decoration:underline;text-underline-offset:2px}
.pub-error{color:var(--accent-dark);font-size:14px;line-height:1.5;margin:10px 0 0;min-height:1px}
.pub-error:empty{margin:0}
.pub-form .pub-button{width:100%;margin-top:18px}
.pub-thanks{padding:30px 0 10px;text-align:left;outline:0}
.pub-check{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--accent);color:#fff;font-size:26px;margin-bottom:22px}
.pub-thanks p{font-size:24px;font-weight:560;letter-spacing:-.02em;line-height:1.35;margin:0;max-width:420px}
.pub-noscript{font-size:15px;line-height:1.6}

/* Legal pages */
.pub-legal{width:min(820px,calc(100% - 48px));margin:70px auto 110px}
.pub-legal h1{font-size:clamp(46px,6vw,80px);font-weight:650;letter-spacing:-.045em;line-height:1;margin:0 0 24px}
.pub-legal .pub-lead{margin-bottom:40px}
.pub-legal h2{font-size:24px;font-weight:620;letter-spacing:-.02em;margin:44px 0 12px}
.pub-legal p:not(.eyebrow):not(.pub-lead){font-size:16px;line-height:1.75;color:#44453f;margin:0 0 14px}
.pub-legal p a,.legal-data a{text-decoration:underline;text-underline-offset:2px}
.legal-data{margin:24px 0 0;border-top:1px solid var(--line)}
.legal-data>div{display:grid;grid-template-columns:220px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}
.legal-data dt{font-size:13px;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);padding-top:3px}
.legal-data dd{margin:0;font-size:16px;line-height:1.6}
.legal-date{margin-top:40px!important;font-size:13px!important;color:var(--muted)!important}
.text-link{display:inline-flex;gap:10px;color:var(--accent);font-size:14px;border-bottom:1px solid var(--accent);padding-bottom:5px;margin-top:30px}

/* Footer */
.pub-footer{width:var(--wrap);margin-inline:auto;padding:28px 0 60px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:13px;color:var(--muted)}
.footer-signature{font-size:20px;font-weight:500;color:var(--ink)}
.pub-footer>div{display:flex;flex-wrap:wrap;align-items:center;gap:10px 26px}
.pub-footer a:hover,.pub-footer a[aria-current]{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.pub-footer .pub-lang a:hover{text-decoration:none}

@media(max-width:1100px){
 :root{--wrap:calc(100% - 64px)}
 .pub-header{gap:28px}.pub-nav{gap:22px}.pub-header .pub-lang{padding-left:18px}
 .pub-hero{grid-template-columns:1fr;padding:70px 0 80px}.hero-aside{display:none}
 .pub-section{grid-template-columns:1fr;gap:34px;padding-bottom:84px}
 .pub-steps{grid-template-columns:1fr 1fr;gap:40px 30px}.pub-steps li:nth-child(2):before{display:none}
 .pub-contact{grid-template-columns:1fr;gap:50px}
}
@media(max-width:760px){
 :root{--wrap:calc(100% - 32px)}
 .pub-header{height:auto;min-height:74px;flex-wrap:wrap;gap:12px 16px;padding:18px 0 14px}
 .wordmark{font-size:28px;letter-spacing:-1.4px}
 .pub-nav{order:3;width:100%;margin:0;gap:24px;font-size:14px;border-top:1px solid var(--line);padding-top:8px}
 .pub-header .pub-lang{margin-left:auto;border:0;padding:0}
 .pub-login{font-size:13px}
 .pub-hero{padding:48px 0 64px}
 .pub-hero h1{font-size:clamp(50px,14vw,76px);margin-bottom:24px}
 .pub-lead{font-size:18px}
 .pub-actions{flex-direction:column;align-items:stretch;gap:20px;margin-top:32px}.pub-mail{align-self:flex-start}
 .eyebrow{font-size:11px;letter-spacing:1.7px;margin-bottom:16px}
 .pub-section{padding:24px 0 64px;gap:26px}
 .pub-services,.pub-steps{grid-template-columns:1fr;gap:0}
 .pub-services li:nth-child(2){border-top:1px solid var(--line);padding-top:26px}
 .pub-steps li{display:grid;grid-template-columns:44px 1fr;column-gap:18px;padding-bottom:28px}
 .pub-steps .pub-step{grid-row:span 2;margin:0}
 .pub-steps h3{margin-top:9px}
 .pub-steps li:before{display:block!important;top:44px;bottom:0;left:22px;right:auto;width:1px;height:auto}
 .pub-steps li:last-child:before{display:none!important}
 .pub-contact{padding:24px 0 64px;gap:36px}
 .pub-contact h2{font-size:clamp(48px,14vw,70px)}
 .pub-contact-intro>p:not(.eyebrow){font-size:17px}
 .pub-panel{padding:26px 18px;margin-inline:-4px}
 .pub-fields{grid-template-columns:1fr}
 .pub-form h3{font-size:26px}
 .pub-legal{margin:44px auto 70px;width:calc(100% - 32px)}
 .legal-data>div{grid-template-columns:1fr;gap:4px}
 .pub-footer{flex-direction:column;align-items:flex-start;gap:16px;padding-bottom:44px}
 .pub-footer>div{gap:10px 20px}
}
@media(max-width:380px){.pub-login{font-size:12px}.pub-lang a{padding:6px 5px}.wordmark{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
