@font-face{font-family:Editorial;src:url('/profile/cormorant-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Editorial;src:url('/profile/cormorant-semibold.ttf') format('truetype');font-weight:600;font-display:swap}:root{--ink:#172f35;--muted:#727773;--gold:#a88b53;--line:#e4e5e0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:#fff;color:var(--ink);font:15px/1.8 Georgia,'Times New Roman',serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Editorial,Georgia,serif;font-weight:400;letter-spacing:-.035em}em{color:var(--gold);font-weight:400}.header{margin:0 auto;height:116px;max-width:1340px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font:30px Editorial,Georgia,serif;letter-spacing:.01em}.brand em{color:var(--ink)}.brand small{display:block;font:8px Arial,sans-serif;letter-spacing:.24em;margin-top:8px;color:var(--muted)}nav{display:flex;gap:28px;font:11px Arial,sans-serif}nav a:hover{color:var(--gold)}.hero{max-width:1180px;margin:auto;padding:82px 5% 65px;display:grid;grid-template-columns:62% 30%;gap:8%;align-items:center}.eyebrow{font:8px/1.7 Arial,sans-serif;letter-spacing:.19em;font-weight:600;color:var(--muted);margin-bottom:25px}h1{font-size:clamp(56px,5.3vw,82px);line-height:.99;margin-bottom:28px}.hero-intro{font:18px/1.7 Editorial,Georgia,serif;max-width:435px;color:#52605d}.plain-link{display:inline-flex;gap:55px;font:11px Arial,sans-serif;border-bottom:1px solid var(--gold);padding:12px 0;margin-top:15px}.plain-link:hover{color:var(--gold)}.portrait{align-self:center;padding-top:8px}.portrait-image{height:365px;max-width:255px;margin:auto;position:relative;overflow:hidden}.portrait-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:bottom;filter:grayscale(1) contrast(1.04);mix-blend-mode:multiply}.portrait-caption{border-top:1px solid var(--line);padding-top:18px;margin-top:5px}.portrait-caption>span{font:27px Editorial,Georgia,serif}.portrait-caption p{font:9px/1.7 Arial,sans-serif;color:var(--muted);margin:6px 0 18px}.signature{display:block;width:185px;max-width:100%;height:auto;mix-blend-mode:multiply}.section{max-width:1180px;margin:auto;padding:65px 5%;display:grid;grid-template-columns:24% 68%;gap:8%;border-top:1px solid var(--line)}.section-label{padding-top:7px;font:9px/1.8 Arial,sans-serif;letter-spacing:.12em;color:var(--muted)}.section-label>span{display:block;font:18px Editorial,Georgia,serif;color:var(--gold);margin-bottom:14px}.reading{max-width:670px}.reading>p{font-size:15px;line-height:1.9;color:#4f5b59;margin-bottom:23px}.reading>p.opening{font:31px/1.3 Editorial,Georgia,serif;color:var(--ink);margin-bottom:28px}.reading strong{font-weight:400;color:var(--ink)}blockquote{font:33px/1.3 Editorial,Georgia,serif;margin:38px 0 0;border-left:1px solid var(--gold);padding-left:25px}h2{font-size:49px;line-height:1.03;margin-bottom:30px}.wide{max-width:none}.project-list{margin-top:33px}.project-list>a{display:grid;grid-template-columns:25px 1fr 20px;gap:20px;border-top:1px solid var(--line);padding:25px 0}.project-list>a:last-child{border-bottom:1px solid var(--line)}.project-number{font:10px Arial;color:var(--gold);padding-top:10px}.project-list h3{font-size:31px;line-height:1.2;margin-bottom:8px}.project-list p{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:12px}.project-list small{font:8px Arial;letter-spacing:.12em;color:var(--gold)}.arrow{font:23px Editorial;padding-top:5px}.project-list>a:hover h3{color:var(--gold)}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:40px}.skills-grid h3{font-size:28px;margin-bottom:20px}.skills-grid ul{list-style:none;padding:0;margin:0}.skills-grid li{font-size:13px;color:#596460;padding:12px 0;border-top:1px solid var(--line);line-height:1.65}.reading p.skills-note{font-size:13px;font-style:italic;margin-top:30px}.contact{padding-bottom:85px}.contact h2{font-size:61px}.contact-email{display:block;font:36px Editorial,Georgia,serif;border-bottom:1px solid var(--gold);padding:12px 0 15px;margin-top:25px;max-width:360px}.contact-email span{float:right}.email-address{display:block;font:11px Arial;color:var(--muted);margin-top:18px}.signoff{display:flex;align-items:center;gap:28px;margin-top:45px}.signoff .signature{width:180px}.signoff p{font:20px Editorial,Georgia,serif;margin:0;line-height:1.5}.signoff span{font:9px Arial;color:var(--muted)}footer{border-top:1px solid var(--line);max-width:1340px;margin:auto;padding:40px 6% 25px;font:10px/1.9 Arial,sans-serif;color:var(--muted)}.footer-top{display:grid;grid-template-columns:1fr 1fr 1.1fr;align-items:center;gap:50px;padding-bottom:35px}.official-logo{width:230px;max-width:100%;height:auto;display:block}.footer-top strong{color:var(--ink);font-size:11px;font-weight:500}.footer-top p{margin:8px 0 0}.footer-top>div:last-child{display:flex;flex-direction:column;gap:8px}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:9px}.footer-bottom button{background:none;padding:0;border:0;color:var(--muted);font:inherit}dialog{border:1px solid var(--line);padding:50px 35px;background:white;color:var(--ink);width:90vw;max-width:580px}dialog::backdrop{background:#152d35c9}dialog h2{font-size:35px}dialog p{font-size:13px}.close{position:absolute;right:12px;top:6px;background:none;border:0;font-size:30px;color:var(--ink)}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}@media(max-width:900px){.header{padding:0 5%;height:100px}nav{gap:16px;font-size:10px}.brand{font-size:25px}.hero{padding-top:65px;grid-template-columns:61% 32%;gap:7%}h1{font-size:65px}.portrait-image{height:320px}.section{grid-template-columns:21% 72%;gap:7%}h2{font-size:45px}.footer-top{gap:25px}}
@media(max-width:650px){.header{height:auto;min-height:105px;padding:20px 6%;display:block}.brand{font-size:27px}.brand small{font-size:7px}nav{margin-top:22px;justify-content:space-between;font-size:9px;gap:12px}.hero{padding:48px 7% 45px;display:flex;flex-direction:column;align-items:stretch;gap:35px}.eyebrow{font-size:7px;letter-spacing:.12em;max-width:330px}h1{font-size:clamp(55px,12vw,72px);margin-bottom:25px}.hero-intro{font-size:21px;max-width:none}.plain-link{font-size:11px}.portrait{display:grid;grid-template-columns:44% 48%;gap:8%;padding:0;align-items:end;width:100%}.portrait-image{width:100%;height:270px}.portrait-caption{margin:0;padding:20px 0 10px}.portrait-caption>span{font-size:27px}.portrait-caption p{font-size:9px}.portrait-caption .signature{width:155px}.section{display:block;padding:45px 7%}.section-label{display:flex;gap:20px;align-items:start;margin-bottom:30px;font-size:8px}.section-label>span{font-size:18px;margin:0;min-width:20px}.section-label p{margin:0}.section-label br{display:none}.reading>p{font-size:14px;line-height:1.9}.reading>p.opening{font-size:29px}h2{font-size:43px}blockquote{font-size:29px;margin-top:30px;padding-left:18px}.project-list>a{gap:12px;grid-template-columns:20px 1fr 15px}.project-list h3{font-size:29px}.project-list p{font-size:12px}.project-list small{font-size:7px}.skills-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.skills-grid h3{font-size:29px}.skills-grid li{font-size:13px}.contact h2{font-size:51px}.contact{padding-bottom:60px}.signoff{gap:20px}.signoff .signature{width:145px}.signoff p{font-size:19px}.signoff span{font-size:8px}.footer-top{grid-template-columns:1fr;gap:25px}.official-logo{width:220px}.footer-bottom{flex-wrap:wrap;gap:15px}.footer-bottom>span{width:100%}footer{padding:30px 7%}dialog{padding:50px 25px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Ritratto compatto con cornice circolare oro. */
.portrait-image{width:210px;height:210px;max-width:100%;border:1.5px solid var(--gold);border-radius:50%;padding:6px;margin:0 auto 27px;background:#fff}
.portrait-image img{border-radius:50%;object-fit:cover;object-position:center 12%}
@media(max-width:900px){.portrait-image{width:195px;height:195px}}
@media(max-width:650px){.portrait{grid-template-columns:42% 50%;gap:8%;align-items:center}.portrait-image{width:150px;height:150px;margin:0 auto;border-width:1px;padding:5px}.portrait-caption{border-top:0;padding:10px 0}.portrait-image img{object-fit:cover;object-position:center 12%}}
/* Ritratto più ampio, bordo oro con un secondo cerchio nero esterno. */
.portrait-image{width:235px;height:235px;box-shadow:0 0 0 5px #fff,0 0 0 6.5px #111}
@media(max-width:900px){.portrait-image{width:215px;height:215px}}
@media(max-width:650px){.portrait-image{width:165px;height:165px;max-width:none;box-shadow:0 0 0 4px #fff,0 0 0 5px #111}.portrait{grid-template-columns:48% 44%;gap:8%}}
@media(max-width:370px){.portrait-image{width:145px;height:145px}}

.reading>p.after-quote{margin-top:26px}

.portrait-image img{filter:saturate(.65) contrast(1.02)}
/* Ritratto intero: nessun ritaglio circolare o cornice. */
.portrait-image{width:235px;height:auto;aspect-ratio:959/1640;max-width:100%;border:0;border-radius:0;padding:0;box-shadow:none;overflow:visible;margin:0 auto 20px;background:transparent}
.portrait-image img{width:100%;height:auto;object-fit:contain;object-position:center;border-radius:0}
@media(max-width:900px){.portrait-image{width:215px;height:auto}}
@media(max-width:650px){.portrait-image{width:155px;height:auto;max-width:100%;padding:0;box-shadow:none;border:0}.portrait-image img{object-fit:contain;object-position:center}}
@media(max-width:370px){.portrait-image{width:140px;height:auto}}

/* Logo ufficiale fornito da Fabio. */
.header{height:155px}.brand{display:block;line-height:0}.tailormade-logo{display:block;width:250px;height:auto}
@media(max-width:650px){.header{height:auto;padding:8px 6% 22px}.tailormade-logo{width:225px;max-width:100%}.header nav{margin-top:8px}}
.brand-reference{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:#b5a37e}.brand-reference:hover{color:var(--gold)}
/* I progetti completano il footer, fuori dal racconto principale. */
footer .portfolio{padding:15px 0 45px;border-top:0;margin-bottom:35px;border-bottom:1px solid var(--line);max-width:none;color:var(--ink)}
footer .portfolio .reading>p{font-family:Georgia,'Times New Roman',serif}
footer .portfolio .project-list p{font-family:Georgia,'Times New Roman',serif}
footer .portfolio h2{font-size:39px}
footer .portfolio .project-list>a{padding:18px 0}
footer .portfolio .project-list h3{font-size:27px}
@media(max-width:650px){footer .portfolio{padding:10px 0 30px;margin-bottom:30px}footer .portfolio h2{font-size:36px}}
.magazine-mockup{width:100%;max-width:450px;margin:28px auto 32px}.magazine-mockup a{display:block}.magazine-mockup img{display:block;width:100%;height:auto}.magazine-mockup a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
@media(max-width:650px){.magazine-mockup{max-width:380px;margin:24px auto 28px}}
/* Profondità del mockup, selettore lingua e modulo contatti. */
.magazine-mockup img{filter:drop-shadow(0 12px 9px rgba(20,28,29,.16)) drop-shadow(0 2px 2px rgba(20,28,29,.1))}
.header{gap:24px}.header nav{margin-left:auto}.language-switch{display:flex;gap:9px;align-items:center;font:10px Arial,sans-serif;flex-shrink:0}.language-switch>a{padding:8px 2px;color:var(--muted)}.language-switch [aria-current]{color:var(--ink);border-bottom:1px solid var(--gold)}.language-switch>span{color:#b8b8b3}
.contact-details-form>summary{cursor:pointer;list-style:none}.contact-details-form>summary::-webkit-details-marker{display:none}.contact-details-form[open]>summary span{transform:rotate(90deg);display:inline-block}.contact-form{margin-top:30px;max-width:100%;padding:26px 0 12px;border-bottom:1px solid var(--line)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form label{display:block;font:11px/1.7 Arial,sans-serif;color:var(--ink);margin:0 0 22px}.contact-form input:not([type=checkbox]),.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #c9cdc7;background:#fafaf8;border-radius:0;margin-top:9px;padding:13px;color:var(--ink);font:15px/1.5 Georgia,serif}.contact-form textarea{resize:vertical;min-height:130px}.contact-form input:focus,.contact-form textarea:focus{outline:1px solid var(--gold);outline-offset:2px}.contact-form .form-trap{display:none!important}.contact-form .privacy-check{display:flex;gap:11px;align-items:flex-start;font-size:10px;line-height:1.8}.privacy-check input{flex-shrink:0;margin:3px 0 0;accent-color:var(--ink)}.privacy-inline{padding:0;border:0;background:none;font:inherit;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.contact-form .form-note{font:10px/1.8 Arial;color:var(--muted);margin:0 0 22px}.form-send{display:flex;align-items:center;justify-content:space-between;gap:35px;background:var(--ink);color:white;border:0;padding:17px 23px;font:12px Arial}.form-send:disabled{opacity:.65;cursor:wait}.form-send:hover{background:#29434a}#privacy{max-height:85dvh;overflow:auto}
@media(max-width:650px){.header{position:relative;padding-right:65px}.header nav{width:calc(100% + 40px);margin-left:0}.language-switch{position:absolute;top:65px;right:6%;font-size:10px;gap:7px}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding-top:15px}}

.magazine-mockup img{filter:none;box-shadow:0 12px 28px rgba(20,28,29,.12)}

.header .brand{position:relative}.header .logo-gold-text{position:absolute;inset:0;clip-path:inset(42% 0 30%);filter:url(#logo-gold);pointer-events:none}
