/* site.css */
:root {
  --ink:#172b3a;--navy:#102737;--muted:#586773;--gold:#856637;
  --paper:#f5f3ee;--line:#dedfdc;--red:#8e4f46;--green:#52745d;--blue:#486c89;
  --serif:Georgia,'Times New Roman',serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{margin:0;background:#fff;color:var(--ink);font:16px/1.75 Arial,Helvetica,sans-serif}
button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400;line-height:1.16}
h1,h2,h3{font-family:var(--serif)}h1{font-size:clamp(42px,4.7vw,68px);letter-spacing:-1.7px}
h2{font-size:clamp(31px,3.2vw,45px);letter-spacing:-.9px}h3{font-size:26px;letter-spacing:-.3px}
p{margin-bottom:24px}.wrap{width:min(1200px,calc(100% - 88px));margin:auto}
.kicker{display:block;font:600 10px/1.6 Arial,sans-serif;letter-spacing:2.3px;text-transform:uppercase;color:var(--gold);margin-bottom:21px}
.kicker.line::before{content:'';display:inline-block;width:29px;height:1px;background:currentColor;vertical-align:middle;margin-right:12px}
.arrow{font:25px/1 Arial,sans-serif;display:inline-block;transition:transform .2s}
.text-link{display:inline-flex;gap:25px;align-items:center;font-size:12px;font-weight:600;padding-bottom:7px;border-bottom:1px solid var(--gold)}
.text-link:hover .arrow{transform:translate(3px,-3px)}
.button{min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:23px;padding:14px 22px;background:var(--navy);border:1px solid var(--navy);color:#fff;font-size:12px;font-weight:600;line-height:1.5;transition:.2s}
.button:hover{background:#284759;border-color:#284759}.button.outline{background:transparent;color:var(--ink);border-color:#aeb7ba}.button.outline:hover{background:#edece7}.button.light{background:#fff;border-color:#fff;color:var(--ink)}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px}.muted{color:var(--muted)}
.section{padding:88px 0}.soft{background:var(--paper)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:43px}
.section-head h2{margin-bottom:0;max-width:670px}.section-head>p{color:var(--muted);font-size:14px;max-width:340px;margin:0}
.section-head .kicker{margin-bottom:17px}.section-head .text-link{flex-shrink:0}
.skip-link{position:fixed;left:20px;top:-100px;background:white;padding:12px;z-index:100}.skip-link:focus{top:10px}
.topline{border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.5px;padding:7px 0;color:var(--muted)}
.topline .wrap{display:flex;justify-content:space-between;align-items:center}.topline a:hover{color:var(--gold)}
header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line)}
.header-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;gap:14px;flex-shrink:0}.logo{display:block;width:79px;height:79px;overflow:hidden;position:relative;flex-shrink:0;background:white}
.logo img{position:absolute;width:360px;max-width:none;height:180px;left:-28px;top:-49px}
.brand-type{font:23px/1.1 var(--serif);letter-spacing:1px}.brand-type small{display:block;font:8px/1.6 Arial,sans-serif;letter-spacing:1.6px;text-transform:uppercase;margin-top:7px}
.nav{display:flex;align-items:center;gap:27px}.nav>a,.nav-dropdown>button{font:600 11px/1.5 Arial,sans-serif;color:var(--ink);background:transparent;border:none;padding:35px 0;position:relative}
.nav>a::after,.nav-dropdown>button::after{position:absolute;content:'';left:0;bottom:26px;width:0;height:1px;background:var(--gold);transition:width .2s}
.nav>a:hover::after,.nav>a.active::after,.nav-dropdown>button.active::after{width:100%}
.nav .nav-contact{padding:12px 16px;border:1px solid var(--ink);font-size:11px}.nav .nav-contact::after{display:none}.nav .nav-contact:hover{background:var(--navy);color:white}
.nav-dropdown{position:relative}.dropdown{display:none;position:absolute;left:-22px;top:77px;width:310px;background:#fff;padding:10px 0;box-shadow:0 14px 35px #10273714;border-top:2px solid var(--gold)}
.dropdown a{display:block;font-size:12px;padding:10px 22px;line-height:1.5}.dropdown a:hover{background:var(--paper)}.nav-dropdown.open .dropdown{display:block}
.menu-toggle{display:none;background:white;border:1px solid var(--line);padding:9px 13px;font-size:12px;color:var(--ink)}
.hero{background:var(--paper);position:relative;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.07fr 1fr;align-items:center;gap:66px;min-height:590px;padding:55px 0}
.hero-copy{padding:10px 0}.hero h1{font-size:clamp(43px,4.8vw,68px);line-height:1.08;letter-spacing:-1.9px;margin-bottom:27px}
.hero h1 em{font-style:normal;color:var(--gold)}.hero-copy>p{max-width:485px;font-size:15px;line-height:1.9;color:var(--muted);margin-bottom:30px}
.hero-copy .kicker{font-size:10px;letter-spacing:1.9px}.hero-photo{margin:0;position:relative;height:480px;align-self:center}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:61% center}.hero-photo::before{content:'';position:absolute;width:40px;height:100%;border-left:1px solid #b0a18a;left:-16px;top:-16px;pointer-events:none}
.hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#102737ba);color:#fff;padding:45px 24px 19px;font-size:10px;letter-spacing:1.5px;text-transform:uppercase}
.topic-bar{background:var(--navy);color:white}.topic-bar .wrap{display:grid;grid-template-columns:150px repeat(3,1fr);gap:24px;align-items:center;padding:23px 0}
.topic-bar .kicker{color:#c5ae88;margin:0;font-size:9px}.topic-bar a{font-size:12px;line-height:1.5;display:flex;align-items:center;justify-content:space-between;padding-left:26px;border-left:1px solid #ffffff30;gap:15px}
.topic-bar a:hover{color:#d7c7ab}.topic-bar .arrow{font-size:20px}
.need-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 40px}.need-card{display:flex;flex-direction:column;padding:26px 0;border-top:1px solid var(--line);min-height:255px}
.need-card .need-number{font:italic 15px var(--serif);color:var(--gold);margin-bottom:19px}.need-card h3{font-size:27px;margin-bottom:16px;max-width:340px}
.need-card p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:22px}.need-card .text-link{margin-top:auto;align-self:flex-start}
.feature{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:460px}.feature-image{min-height:390px}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-copy{background:var(--navy);color:white;padding:63px 54px;display:flex;flex-direction:column;justify-content:center}
.feature-copy .kicker{color:#c6b08b}.feature-copy h2{font-size:39px;max-width:460px;margin-bottom:24px}.feature-copy p{font-size:14px;line-height:1.9;color:#d1d9dc}.feature-copy .text-link{color:white;align-self:flex-start;margin-top:7px}



.areas{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.area{border-top:2px solid var(--tone);padding-top:24px}.area .kicker{color:var(--tone);margin-bottom:15px}.area h3{font-size:28px;margin-bottom:18px}.area>p{font-size:13px;color:var(--muted);min-height:48px}
.area a.service-link{display:flex;justify-content:space-between;gap:20px;font-size:13px;line-height:1.55;padding:13px 0;border-top:1px solid var(--line)}.area a:hover{color:var(--gold)}.area .arrow{font-size:19px}
.studio-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:center}.studio-intro p{font-size:14px;color:var(--muted)}.studio-meta{border-left:1px solid var(--gold);padding-left:35px}.studio-meta>div{padding:20px 0;border-bottom:1px solid var(--line)}.studio-meta strong{font-size:13px;font-weight:500;display:block;margin-bottom:8px}.studio-meta p{font-size:13px;margin:0}
.contact-band{background:#e8e5dc;padding:54px 0}.contact-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:50px}.contact-band h2{font-size:37px;margin-bottom:17px;max-width:700px}.contact-band p{font-size:13px;color:var(--muted);margin:0;max-width:620px}.contact-band .kicker{margin-bottom:14px}.contact-band .button{flex-shrink:0}
footer{background:var(--navy);color:#c7d1d7;padding:58px 0 0;font-size:12px}.footer-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr;gap:40px;padding-bottom:37px}footer h3{font-size:18px;color:#fff;margin-bottom:20px}footer p{margin-bottom:13px}footer a:hover{color:#ddc39b}.footer-brand{font:27px/1.2 var(--serif);letter-spacing:1px;color:white;margin-bottom:18px}.footer-brand span{color:#c6b08b}.fine{font-size:10px;line-height:1.8;color:#a9b8c1}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ffffff20;font-size:10px;padding:20px 0;color:#afbdc6}.footer-bottom>div{display:flex;gap:20px;flex-wrap:wrap}
.floating-contact{position:fixed;bottom:20px;right:22px;z-index:40;display:flex;gap:10px;align-items:center;background:#fff;border:1px solid #d5d9db;color:var(--navy);padding:11px 16px;box-shadow:0 6px 22px #1027371a;font-size:11px}
.floating-contact svg{width:20px;height:20px}.floating-contact:hover{background:var(--paper)}
.breadcrumb{padding:20px 0;font-size:10px;color:var(--muted)}.breadcrumb span{margin:0 10px;color:var(--gold)}
.page-intro{background:var(--paper);border-bottom:1px solid var(--line)}.page-intro .wrap{padding:50px 0 56px}.page-intro.with-image .wrap{display:grid;grid-template-columns:1.5fr .7fr;gap:65px;align-items:center}
.page-intro h1{font-size:clamp(39px,4.3vw,60px);max-width:940px;margin-bottom:25px}.page-intro .lead{font-size:16px;color:var(--muted);line-height:1.85;max-width:790px;margin:0}.page-intro .intro-image{height:265px;overflow:hidden}.intro-image img{width:100%;height:100%;object-fit:cover}
.service-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:90px;align-items:start}.body-copy h2{font-size:34px;margin:42px 0 23px}.body-copy h2:first-child{margin-top:0}.body-copy>p{font-size:15px;line-height:1.9;color:var(--muted)}
.plain-list{list-style:none;padding:0;margin:0 0 35px}.plain-list li{position:relative;padding:15px 0 15px 24px;border-top:1px solid var(--line);font-size:14px;line-height:1.8;color:var(--muted)}.plain-list li::before{content:'';position:absolute;left:1px;top:27px;width:5px;height:5px;background:var(--gold)}
.steps{list-style:none;padding:0;margin:0 0 40px;counter-reset:steps}.steps li{display:grid;grid-template-columns:33px 1fr;gap:21px;padding:23px 0;border-top:1px solid var(--line);counter-increment:steps}.steps li::before{content:counter(steps,decimal-leading-zero);font:22px var(--serif);color:var(--gold)}.steps h3{font-size:23px;margin-bottom:12px}.steps p{font-size:14px;line-height:1.85;color:var(--muted);margin:0}
.aside-box{position:sticky;top:122px;background:var(--paper);border-top:2px solid var(--gold);padding:28px}.aside-box h3{font-size:25px;margin-bottom:17px}.aside-box p{font-size:12px;color:var(--muted);line-height:1.8}.aside-box .button{width:100%;font-size:11px;padding:13px;gap:12px}.aside-box .referent{display:block;border-top:1px solid var(--line);padding:11px 0;font-size:11px}.aside-box .aside-subtitle{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;margin-top:28px;margin-bottom:14px}.aside-box .text-link{font-size:11px;margin-top:22px}
.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font:21px/1.4 var(--serif);padding-right:10px}.faq details p{font-size:14px;color:var(--muted);margin:19px 0 0;line-height:1.85}
.document-box{background:var(--paper);padding:30px 33px;margin:34px 0}.document-box h3{font-size:25px}.document-box .plain-list{margin-bottom:0}.document-box .plain-list li:last-child{padding-bottom:0}
.service-group{margin-bottom:58px}.service-group-heading{border-bottom:1px solid var(--line);padding-bottom:20px;display:flex;gap:17px;align-items:center}.service-group-heading h2{font-size:33px;margin:0}.area-dot{display:inline-block;width:8px;height:8px;background:var(--tone);border-radius:50%;flex-shrink:0}.service-row{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:26px 0;border-bottom:1px solid var(--line)}.service-row h3{font-size:26px;margin-bottom:12px}.service-row p{font-size:14px;line-height:1.8;color:var(--muted);margin:0;max-width:850px}.service-row:hover h3{color:var(--gold)}
.question-block{margin-bottom:35px;border-left:2px solid var(--gold);padding:4px 0 4px 25px;font:29px/1.35 var(--serif);max-width:760px}
.related-links{display:flex;flex-direction:column;margin:0 0 25px}.related-links>a{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:18px 0;border-top:1px solid var(--line);font-size:14px}.related-links>a:hover{color:var(--gold)}
.people{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.person{padding:25px 0;border-top:1px solid var(--line)}.person .person-area{font-size:9px;text-transform:uppercase;letter-spacing:1.6px;color:var(--gold);display:block;margin-bottom:18px}.person h3{font-size:26px;margin-bottom:13px}.person .role{font-size:11px;color:var(--muted);min-height:36px;margin-bottom:17px}.person .bio{font-size:13px;line-height:1.85;color:var(--muted)}.person .email{font-size:11px;overflow-wrap:anywhere}.person details{padding-top:15px;border-top:1px solid var(--line);margin-top:18px}.person summary{font-size:12px;cursor:pointer}.person details p{margin:15px 0 0;font-size:13px;color:var(--muted)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:85px}.two-col p{font-size:15px;color:var(--muted);line-height:1.9}.publication-list{border-top:1px solid var(--line)}.publication{display:grid;grid-template-columns:230px 1fr 30px;gap:40px;padding:26px 0;border-bottom:1px solid var(--line);align-items:start}.publication .pub-author{font-size:11px;line-height:1.8;color:var(--muted)}.publication h3{font-size:25px;line-height:1.3;margin:0 0 12px}.publication p{font-size:13px;color:var(--muted);margin:0}
.article-masthead{background:var(--paper);padding:48px 0 52px}.article-masthead h1{max-width:950px;font-size:clamp(39px,4.7vw,64px);margin-bottom:27px}.article-masthead .lead{font-size:17px;line-height:1.85;max-width:850px;color:var(--muted);margin-bottom:23px}.article-meta{display:flex;gap:22px;flex-wrap:wrap;font-size:10px;color:var(--muted)}.article-banner{height:340px;width:100%;object-fit:cover;object-position:center 55%;margin-top:38px}
.reading-layout{display:grid;grid-template-columns:220px minmax(0,760px);gap:75px;justify-content:center;align-items:start}.toc{position:sticky;top:123px;border-top:1px solid var(--gold);padding-top:20px}.toc .kicker{font-size:9px;margin-bottom:16px}.toc a{display:block;font-size:11px;line-height:1.6;padding:9px 0;color:var(--muted)}.toc a:hover{color:var(--gold)}.article-content h2{font-size:32px;line-height:1.22;margin:42px 0 22px}.article-content h2:first-child{margin-top:0}.article-content p{font-size:15px;line-height:1.95;color:#4c5d69}.article-content section{scroll-margin-top:125px}.sources{border-top:1px solid var(--line);margin-top:42px;padding-top:25px}.sources h3{font-size:22px}.sources a{display:block;font-size:12px;color:var(--muted);text-decoration:underline;text-decoration-color:#b8b09f;text-underline-offset:3px;margin-bottom:12px}.article-note{font-size:11px!important;color:var(--muted)!important;margin-top:28px}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.contact-detail{border-top:1px solid var(--line);padding:20px 0}.contact-detail h3{font:10px Arial,sans-serif;letter-spacing:1.7px;text-transform:uppercase;color:var(--gold);margin-bottom:13px}.contact-detail p{font-size:15px;margin-bottom:8px}.contact-detail small{font-size:12px;color:var(--muted)}.contact-detail a:hover{color:var(--gold)}
.contact-form{background:var(--paper);padding:38px}.contact-form h2{font-size:33px;margin-bottom:17px}.contact-form>p{font-size:13px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid label{display:block;font-size:12px}.form-grid input,.form-grid textarea,.form-grid select{width:100%;display:block;padding:11px 12px;border:1px solid #d0d7d9;background:white;border-radius:0;color:var(--ink);font-size:14px;margin-top:7px}.form-grid textarea{resize:vertical;min-height:140px}.full{grid-column:1/-1}.form-grid .check-label{display:flex;gap:10px;align-items:flex-start;font-size:11px;color:var(--muted)}.form-grid .check-label input{width:auto;margin-top:5px}.check-label a{text-decoration:underline}.form-status{font-size:12px;margin:20px 0 0;color:var(--ink)}.map-panel{border-left:2px solid var(--gold);background:var(--paper);padding:33px;display:flex;align-items:center;justify-content:space-between;gap:35px}.map-panel h3{font-size:26px;margin:0 0 10px}.map-panel p{font-size:13px;color:var(--muted);margin:0}
@media(max-width:1100px){.wrap{width:calc(100% - 55px)}.nav{gap:20px}.nav>a,.nav-dropdown>button{font-size:10px}.brand-type{font-size:21px}.hero-inner{gap:40px}.hero h1{font-size:58px}.hero-photo{height:455px}.hero .actions{gap:20px}.hero .text-link{font-size:11px}.hero .button{padding:14px 17px;font-size:11px}.service-layout{gap:55px}.need-grid{gap:8px 28px}.reading-layout{gap:45px;grid-template-columns:190px minmax(0,1fr)}.studio-intro{gap:60px}.contact-grid{gap:55px}.feature-copy{padding:48px 37px}.feature-copy h2{font-size:36px}.topic-bar .wrap{grid-template-columns:105px repeat(3,1fr);gap:17px}.topic-bar a{padding-left:19px;font-size:11px}}
@media(max-width:1000px){.header-inner{min-height:88px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:88px;left:0;right:0;background:white;padding:15px 28px 25px;border-bottom:1px solid var(--line);box-shadow:0 12px 25px #1027370d;max-height:calc(100vh - 105px);overflow:auto}.nav.open{display:block}.nav>a,.nav-dropdown>button{display:block;width:100%;text-align:left;padding:14px 0;font-size:12px}.nav>a::after,.nav-dropdown>button::after{display:none}.nav .nav-contact{padding:13px;margin-top:13px;text-align:center}.dropdown{position:static;box-shadow:none;width:100%;border-top:1px solid var(--line);padding:7px 0}.dropdown a{font-size:12px;padding:11px 13px}.hero-inner{grid-template-columns:1fr .9fr;gap:35px;min-height:520px}.hero h1{font-size:51px}.hero-copy>p{font-size:14px}.hero-photo{height:430px}.hero .actions{align-items:flex-start;flex-direction:column;gap:23px}.hero .button{font-size:12px;padding:14px 20px}.need-card{min-height:280px}.need-card h3{font-size:25px}.service-layout{grid-template-columns:minmax(0,1fr) 250px;gap:40px}.aside-box{padding:24px}.page-intro.with-image .wrap{gap:40px;grid-template-columns:1.4fr .7fr}.page-intro .intro-image{height:245px}.page-intro h1{font-size:48px}.people{gap:25px}.person h3{font-size:23px}.feature-copy h2{font-size:33px}.contact-grid{gap:40px}.contact-form{padding:29px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.publication{grid-template-columns:180px 1fr 25px;gap:25px}}
@media(max-width:760px){.wrap{width:calc(100% - 42px)}.topline .wrap>span{font-size:9px;letter-spacing:.2px}.hero-inner{grid-template-columns:1fr;padding:40px 0;gap:37px}.hero h1{font-size:clamp(44px,7.8vw,60px);max-width:640px}.hero-copy>p{max-width:560px;font-size:15px}.hero .actions{flex-direction:row;align-items:center;gap:25px}.hero-photo{height:300px}.hero-photo img{object-position:50% 52%}.hero-photo::before{left:-10px;top:-10px}.hero-photo figcaption{font-size:9px}.topic-bar .wrap{grid-template-columns:1fr;gap:0;padding:10px 0}.topic-bar .kicker{display:none}.topic-bar a{border-left:none;border-bottom:1px solid #ffffff20;padding:12px 0;font-size:12px}.topic-bar a:last-child{border-bottom:0}.section{padding:62px 0}.section-head{gap:25px;display:block;margin-bottom:32px}.section-head>p{margin-top:20px;max-width:530px}.section-head .text-link{margin-top:23px}.need-grid{grid-template-columns:1fr 1fr;gap:5px 28px}.need-card{min-height:265px}.need-card h3{font-size:26px}.areas{grid-template-columns:1fr;gap:37px}.area>p{min-height:0}.feature{grid-template-columns:1fr}.feature-image{height:300px;min-height:0}.feature-copy{padding:40px 30px}.feature-copy h2{font-size:35px;max-width:none}.studio-intro{grid-template-columns:1fr;gap:30px}.studio-meta{padding-left:27px}.contact-band .wrap{display:block}.contact-band h2{font-size:33px}.contact-band .button{margin-top:26px}.contact-grid{grid-template-columns:1fr;gap:40px}.service-layout{grid-template-columns:1fr;gap:35px}.aside-box{position:static}.page-intro.with-image .wrap{grid-template-columns:1fr;gap:30px}.page-intro .intro-image{height:240px}.page-intro .wrap{padding:33px 0 42px}.page-intro h1{font-size:44px}.page-intro .lead{font-size:15px}.two-col{grid-template-columns:1fr;gap:30px}.people{grid-template-columns:1fr 1fr;gap:25px}.reading-layout{grid-template-columns:1fr;gap:30px}.toc{position:static;padding:20px 0;border-bottom:1px solid var(--line)}.toc a{display:block;padding:8px 0;font-size:12px}.toc .kicker{margin-bottom:10px}.article-masthead{padding:35px 0 37px}.article-masthead h1{font-size:46px}.article-masthead .lead{font-size:16px}.article-banner{height:260px;margin-top:28px}.article-content h2{font-size:30px}.publication{grid-template-columns:1fr 25px;gap:15px}.publication .pub-author{grid-column:1/-1}.publication h3{font-size:25px}.map-panel{padding:29px;gap:25px}}
@media(max-width:480px){.wrap{width:calc(100% - 38px)}.topline .wrap>span{font-size:8px;letter-spacing:0}.topline{padding:7px 0}.topline a{font-size:9px}.brand{gap:7px}.brand-type{font-size:18px;letter-spacing:.4px}.brand-type small{font-size:6.5px;letter-spacing:1.25px}.logo{width:65px;height:72px}.logo img{width:300px;height:150px;left:-24px;top:-41px}.header-inner{min-height:80px;gap:12px}.nav{top:80px;padding:14px 20px 23px}.menu-toggle{font-size:11px;padding:9px 10px}.hero-inner{padding:35px 0 30px;gap:30px}.hero-copy{padding:0}.hero h1{font-size:44px;line-height:1.1;letter-spacing:-1.5px;margin-bottom:24px}.hero .kicker{font-size:8px;letter-spacing:1.5px;margin-bottom:23px}.hero-copy>p{font-size:14px;line-height:1.85;margin-bottom:28px}.hero .actions{align-items:flex-start;flex-direction:column;gap:22px}.hero .text-link{font-size:12px}.hero-photo{height:245px}.hero-photo figcaption{font-size:8px;padding:35px 17px 16px;letter-spacing:1.2px}.kicker{font-size:9px;letter-spacing:1.8px}h2{font-size:33px;letter-spacing:-.7px}.section{padding:53px 0}.need-grid{grid-template-columns:1fr;gap:0}.need-card{min-height:0;padding:24px 0 29px}.need-card .need-number{margin-bottom:14px}.need-card h3{font-size:28px;max-width:none;margin-bottom:15px}.need-card p{font-size:14px;margin-bottom:20px}.feature-copy{padding:35px 24px}.feature-copy h2{font-size:32px}.feature-image{height:245px}.studio-intro h2{font-size:33px}.contact-band{padding:42px 0}.contact-band h2{font-size:32px}.footer-grid{grid-template-columns:1fr 1fr;gap:26px 20px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{display:block;padding-bottom:70px}.footer-bottom>div{margin-top:15px}.floating-contact{right:14px;bottom:14px;padding:10px 13px;font-size:10px}.page-intro h1{font-size:39px;letter-spacing:-1.1px}.page-intro .intro-image{height:210px}.breadcrumb{font-size:9px;padding:16px 0}.breadcrumb span{margin:0 7px}.body-copy h2{font-size:30px}.body-copy>p{font-size:14px}.plain-list li{font-size:13px}.steps h3{font-size:23px}.steps p{font-size:13px}.steps li{gap:15px;grid-template-columns:28px 1fr}.document-box{padding:25px}.question-block{font-size:26px}.people{grid-template-columns:1fr}.person h3{font-size:27px}.person .role{min-height:0}.person .bio{font-size:14px}.person .email{font-size:12px}.service-group-heading h2{font-size:29px}.service-row{gap:20px}.service-row h3{font-size:25px}.service-row p{font-size:13px}.two-col p{font-size:14px}.article-masthead h1{font-size:40px;letter-spacing:-1.2px}.article-meta{gap:12px}.article-banner{height:210px}.article-content p{font-size:14px;line-height:1.95}.article-content h2{font-size:29px}.article-content .document-box{padding:25px}.contact-form{padding:25px}.form-grid{grid-template-columns:1fr}.form-grid>label{grid-column:1/-1}.map-panel{display:block;padding:25px}.map-panel .button{margin-top:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* design-v3.css */
/* MD Advance — fotografia, ritmo editoriale e segni lineari. */
:root{--bronze:#d1b18a;--paper:#f6f4ef;--gold:#80643c}
.arrow{width:21px;height:21px;flex-shrink:0;vertical-align:middle}
.section{padding:98px 0}.kicker{letter-spacing:2.1px}
header{transition:box-shadow .2s}header.is-scrolled{box-shadow:0 5px 25px #10273712}
.hero{isolation:isolate;background:#102737;color:white;overflow:hidden}
.hero-inner{display:block;position:static;min-height:650px;padding:78px 0 105px}
.hero-copy{position:relative;z-index:2;max-width:665px}
.hero h1{font-size:clamp(48px,4.9vw,73px);line-height:1.06;letter-spacing:-2px;margin-bottom:27px}
.hero h1 em{font-style:italic;color:#e2c19b}
.hero-copy>p{max-width:530px;font-size:15px;color:#e1e5e7;text-wrap:pretty}
.hero-copy .kicker{color:#e2c19b;font-size:9px}
.hero .button{background:#ddc09c;border-color:#ddc09c;color:#102737;padding:16px 23px}
.hero .button:hover{background:#f1dcc1;border-color:#f1dcc1}
.hero .text-link{color:white;border-color:#bc9870}
.hero-photo{position:absolute;inset:0;margin:0;width:100%;height:100%;align-self:stretch;z-index:-1}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 52%}
.hero-photo::before{inset:0;width:100%;height:100%;border:0;background:linear-gradient(90deg,#0c2235f5 0%,#0c2235db 31%,#0c223576 59%,#0c22351a 100%);z-index:1}
.topic-bar{position:relative;background:transparent;color:var(--ink);z-index:3;margin-top:-28px}
.topic-bar .wrap{background:#fff;box-shadow:0 10px 35px #10273710;border-bottom:1px solid var(--line);padding:25px 30px;grid-template-columns:120px repeat(3,1fr);gap:23px}
.topic-bar .kicker{color:var(--gold)}.topic-bar a{border-left-color:var(--line);font-size:11px;padding-left:23px}.topic-bar a:hover{color:var(--gold)}
.need-grid{gap:23px;grid-template-columns:repeat(3,minmax(0,1fr))}
.need-card{border:1px solid #dedfd9;padding:27px 29px 29px;min-height:330px;background:#fff;transition:border-color .25s,box-shadow .25s,transform .25s}
.need-card:hover{border-color:#b8a080;box-shadow:0 12px 28px #10273708;transform:translateY(-3px)}
.need-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;color:var(--gold)}
.need-icon{width:35px;height:38px}.need-card .need-number{margin:0;font-size:13px;color:#8c8c80}
.need-card h3{font-size:27px;line-height:1.2}.need-card p{font-size:13px}.need-card .text-link{font-size:11px}
.feature{position:relative;padding:0;margin-top:18px;margin-bottom:18px;max-width:1200px;box-shadow:0 17px 45px #10273710}
.feature-image{min-height:500px}.feature-copy{padding:68px 57px}.feature-copy h2{font-size:42px}.feature-copy .kicker{color:#ddc09c}










.areas{gap:26px}.area{padding:0;background:white;border:1px solid #e0e2dc;border-top:0}
.area-visual{position:relative;height:205px;overflow:hidden;background:var(--navy);border-bottom:3px solid var(--tone)}
.area-visual img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.area:hover .area-visual img{transform:scale(1.04)}
.area-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#0d263e70)}
.area-index{position:absolute;bottom:12px;left:25px;z-index:1;font:italic 43px/1 var(--serif);color:white}
.area-content{padding:29px 27px}.area-content .kicker{color:var(--tone)}.area-content>p{font-size:13px;color:var(--muted);min-height:70px}
.area-content h3{font-size:29px}.area .service-link{font-size:12px!important}.area .arrow{width:17px;height:17px}
.contact-band{position:relative;isolation:isolate;overflow:hidden;background:#152e40;color:white;padding:64px 0;border-top:1px solid #ffffff20}
.contact-band::before,.contact-band::after{content:'';position:absolute;border:1px solid #ffffff0c;border-radius:50%;width:450px;height:450px;right:15%;top:-250px;z-index:-1}
.contact-band::after{right:7%;top:-200px;width:520px;height:520px}
.contact-band .kicker{color:#d6b58c}.contact-band h2{font-size:41px}.contact-band p{color:#d2dbe0}.contact-band .button{background:#ddc09c;border-color:#ddc09c;color:var(--navy)}
.studio-meta{padding-left:40px}.studio-meta strong{font:22px/1.3 var(--serif);color:var(--ink)}
.breadcrumb{padding-top:23px;padding-bottom:23px}
.page-intro .wrap{padding:55px 0 62px}.page-intro.with-image .wrap{grid-template-columns:1.3fr .8fr;gap:65px}
.page-intro .intro-image{height:310px;position:relative;overflow:visible}
.intro-image::before{content:'';position:absolute;inset:12px -12px -12px 12px;border:1px solid #b7a17f;z-index:0}
.intro-image img{position:relative;z-index:1}
.service-row{display:grid;grid-template-columns:140px 1fr 24px;gap:34px;padding:25px 0}
.service-thumb{height:110px;overflow:hidden}.service-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-row:hover img{transform:scale(1.04)}
.service-row h3{font-size:28px}.service-row p{font-size:13px}
.document-box{border-left:2px solid #9f8159;background:#f4f2ec;padding:33px 36px}
.question-block{font-size:32px;padding-left:30px;border-left-color:#ae8b5d}
.aside-box{border-top-width:3px;background:#f4f2ec}.aside-box h3{font-size:28px}
.people{gap:35px 28px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.person{padding:0;border:1px solid #dedfd8;background:white;display:flex;flex-direction:column;scroll-margin-top:118px}
.person-portrait{aspect-ratio:4/5;position:relative;overflow:hidden;background:#ecebe7}
.person-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(var(--portrait-scale,1));transform-origin:50% 8%}
.person-portrait.no-photo{display:grid;place-items:center;background:#ecebe7;color:#a69b87}
.person-portrait.no-photo span{display:grid;place-items:center;width:50%;aspect-ratio:1;border:1px solid #b9b1a1;border-radius:50%;font:clamp(60px,6vw,90px)/1 var(--serif);letter-spacing:-3px}
.person-content{padding:27px 25px 28px;display:flex;flex-direction:column;flex:1}
.person .person-area{font-size:9px;letter-spacing:1.45px;margin-bottom:14px}
.person h3{font-size:27px;line-height:1.2;margin-bottom:13px}
.person .role{font-size:11px;min-height:36px;margin-bottom:16px}
.person .bio{font-size:13px;line-height:1.85;margin-bottom:20px}
.person .email{font-size:11px;margin-top:auto;border-top:1px solid var(--line);padding-top:16px}
.person.text-profile{grid-column:span 1;border-top:2px solid #b69a75}
.person.text-profile .person-content{padding-top:30px}
.reading-progress{position:fixed;top:0;left:0;right:0;height:2px;background:#b29166;z-index:60;transform-origin:left;transform:scaleX(var(--reading-progress,0));pointer-events:none}
.article-banner{height:395px}.article-content{max-width:760px}.article-content section{padding-bottom:15px}.toc{border-top-width:2px}
@media(max-width:1100px){
 .hero h1{font-size:64px}.hero-copy{max-width:600px}.topic-bar .wrap{padding:22px;grid-template-columns:95px repeat(3,1fr);gap:17px}
 .need-card{padding:24px;min-height:345px}.feature-copy{padding:48px 40px}.feature-copy h2{font-size:37px}.area-content{padding:26px 23px}
 .people{gap:25px 20px}.person-content{padding:24px 20px}.person h3{font-size:24px}
}
@media(max-width:1000px){
 .hero-inner{min-height:640px;padding:72px 0 100px}.hero .actions{flex-direction:row;align-items:center}.hero h1{font-size:60px}.hero-copy>p{font-size:15px}.hero-photo{height:100%;width:100%;align-self:stretch}

}
@media(max-width:760px){
 .section{padding:65px 0}.hero-inner{padding:57px 0 95px;min-height:630px}.hero h1{font-size:55px;max-width:630px}.hero-copy{max-width:570px}.hero-copy>p{max-width:470px}.hero-photo{height:100%;position:absolute;inset:0}.hero-photo img{object-position:62% center}.hero-photo::before{inset:0;background:linear-gradient(90deg,#0c2235e8,#0c2235a8),linear-gradient(0deg,#102737b0,transparent)}
 .topic-bar .wrap{display:grid;grid-template-columns:1fr;padding:10px 24px}.topic-bar a{border-left:0;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}.topic-bar a:last-child{border:0}
 .need-grid{grid-template-columns:1fr 1fr;gap:20px}.need-card{min-height:335px;padding:24px}.need-card h3{font-size:26px}
 .feature{width:100%;margin:0;box-shadow:none}.feature-image{min-height:0;height:330px}.feature-copy{padding:43px 30px}

 .areas{grid-template-columns:1fr}.area-visual{height:260px}.area-content{padding:29px}.area-content>p{min-height:0}.area .service-link{font-size:13px!important}
 .page-intro.with-image .wrap{grid-template-columns:1fr;gap:36px}.page-intro .wrap{padding:38px 0 48px}.page-intro .intro-image{height:290px;margin-right:12px}
 .people{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 20px}.person h3{font-size:25px}.person .bio{font-size:12px}.person .email{font-size:10px}.person .role{font-size:10px;min-height:40px}
 .service-row{grid-template-columns:100px 1fr 20px;gap:23px}.service-row h3{font-size:25px}.service-thumb{height:110px}.service-row p{font-size:12px}.article-banner{height:290px}.contact-band h2{font-size:35px}.contact-band{padding:48px 0}
}
@media(max-width:480px){
 .section{padding:55px 0}.hero-inner{min-height:660px;padding:48px 0 90px}.hero h1{font-size:47px;letter-spacing:-1.6px;line-height:1.09}.hero-copy .kicker{font-size:8px;max-width:310px;line-height:1.8;letter-spacing:1.7px}.hero-copy>p{font-size:14px;max-width:350px}.hero .actions{flex-direction:column;align-items:flex-start;gap:23px}.hero .button{font-size:12px;padding:15px 20px}.hero .text-link{font-size:11px}.hero-photo{height:100%}
 .topic-bar .wrap{padding:8px 20px}.topic-bar a{font-size:11px}.need-grid{grid-template-columns:1fr;gap:17px}.need-card{min-height:0;padding:25px 26px}.need-card h3{font-size:29px}.need-card p{font-size:14px}.need-card-top{margin-bottom:20px}
 .feature-image{height:255px}.feature-copy{padding:36px 25px}.feature-copy h2{font-size:33px}

 .area-visual{height:220px}.page-intro .intro-image{height:235px}.page-intro h1{font-size:39px}
 .people{grid-template-columns:1fr;gap:28px}.person-content{padding:27px}.person h3{font-size:29px}.person .role{font-size:11px;min-height:0}.person .bio{font-size:14px}.person .email{font-size:11px}.person .person-area{font-size:9px}
 .service-row{grid-template-columns:1fr 20px;gap:20px}.service-thumb{display:none}.service-row h3{font-size:26px}.service-row p{font-size:13px}.question-block{font-size:28px;padding-left:22px}.document-box{padding:26px}.article-banner{height:230px}.contact-band h2{font-size:33px}
}
@media(prefers-reduced-motion:reduce){.need-card:hover{transform:none}.area:hover .area-visual img,.service-row:hover img{transform:none}}

/* needs.css */
/* Percorsi — copertine fotografiche e una sola destinazione per scheda. */
.need-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;align-items:stretch}
.need-card{display:block;padding:0;min-height:0;border:1px solid #e0e1dc;background:#fff;overflow:hidden;box-shadow:0 5px 18px #10273704;transition:border-color .25s,box-shadow .25s}
.need-card:hover{transform:none;border-color:#b09a77;box-shadow:0 12px 30px #10273712}
.need-card-link{display:flex;flex-direction:column;height:100%;color:inherit}
.need-card-link:focus-visible{outline:3px solid #b58d59;outline-offset:-3px}
.need-visual{height:202px;position:relative;isolation:isolate;overflow:hidden;background:#173548}
.need-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.82);transition:transform .65s}
.need-card:hover .need-visual>img{transform:scale(1.045)}
.need-cover{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:22px 24px 21px;color:#fff;background:linear-gradient(180deg,#102b3bce 0%,#102b3b22 38%,#0a2235f2 100%)}
.need-cover-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font:600 8.5px/1.5 Arial,sans-serif;letter-spacing:1.45px;text-transform:uppercase;color:#f1dfc5}
.need-card .need-number{margin:0;font:italic 14px/1 Georgia,serif;letter-spacing:0;color:#f1dfc5;flex-shrink:0}
.need-card h3{font:400 28px/1.15 var(--serif);letter-spacing:-.45px;color:white;margin:22px 0 0;max-width:none;text-wrap:balance}
.need-content{display:flex;flex-direction:column;flex:1;padding:23px 24px 20px;min-height:168px;background:linear-gradient(140deg,#fff 55%,#f8f6f0)}
.need-card .need-description{font:13px/1.75 Arial,sans-serif;color:#556570;margin:0 0 20px;max-width:none}
.need-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:14px;border-top:1px solid #e1e0da;margin-top:auto;font:600 11px/1.4 Arial,sans-serif;color:#203646}
.need-cta-arrow{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;border:1px solid #b9c0c1;transition:background .25s,color .25s,border-color .25s;flex-shrink:0}
.need-cta-arrow .arrow{width:16px;height:16px;transition:transform .25s}
.need-card:hover .need-cta-arrow,.need-card:focus-within .need-cta-arrow{background:#17384b;border-color:#17384b;color:white}
.need-card:hover .need-cta-arrow .arrow{transform:translate(1px,-1px)}
@media(max-width:1100px){.need-grid{gap:20px}.need-cover{padding:20px}.need-cover-meta{font-size:8px;letter-spacing:1.1px}.need-card h3{font-size:26px}.need-content{padding:21px 20px 18px;min-height:177px}.need-card .need-description{font-size:12.5px}}
@media(max-width:850px){.need-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.need-visual{height:211px}.need-card h3{font-size:28px}.need-cover{padding:23px}.need-cover-meta{font-size:8.5px;letter-spacing:1.3px}.need-content{padding:23px;min-height:172px}.need-card .need-description{font-size:13px}}
@media(max-width:560px){.need-grid{grid-template-columns:1fr;gap:23px}.need-visual{height:178px}.need-cover{padding:19px 22px}.need-card h3{font-size:27px;line-height:1.15;margin-top:15px;letter-spacing:-.45px}.need-cover-meta{font-size:8.5px;letter-spacing:1.45px}.need-card .need-number{font-size:13px}.need-content{padding:19px 22px 18px;min-height:153px}.need-card .need-description{font-size:14px;line-height:1.7;margin-bottom:16px}.need-cta{font-size:11px;padding-top:12px}.need-cta-arrow{width:35px;height:35px}.floating-contact{width:46px;height:46px;padding:0;border-radius:50%;display:grid;place-items:center;right:14px;bottom:14px}.floating-contact span{display:none}.floating-contact svg{width:21px;height:21px}}
@media(max-width:360px){.need-cover{padding:18px}.need-card h3{font-size:25px}.need-cover-meta{font-size:7.5px;letter-spacing:1px}.need-content{padding:18px}.need-card .need-description{font-size:13px}}
@media(prefers-reduced-motion:reduce){.need-visual>img,.need-cta-arrow,.need-cta-arrow .arrow{transition:none}.need-card:hover .need-visual>img,.need-card:hover .need-cta-arrow .arrow{transform:none}}

/* guides.css */
/* Guide: fotografie integrali e schede di lettura con proporzioni uniformi. */
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.guide-card{min-width:0;background:#fff;border:1px solid #dfe2df;box-shadow:0 7px 26px #10273706;transition:border-color .25s,box-shadow .25s}
.guide-card-link{display:flex;flex-direction:column;height:100%}
.guide-image{position:relative;aspect-ratio:3/2;background:#ecece7;border-bottom:1px solid #1027370a}
.guide-image img{display:block;width:100%;height:auto;aspect-ratio:3/2}
.guide-image::after{content:'';position:absolute;bottom:-1px;left:28px;width:42px;height:3px;background:#b49770}
.guide-copy{display:flex;flex-direction:column;flex:1;padding:27px 28px 22px}
.guide-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px 14px;margin-bottom:19px;font:600 9px/1.6 Arial,Helvetica,sans-serif}
.guide-category{color:#80643c;letter-spacing:1.5px;text-transform:uppercase}
.guide-time{color:#63717a;font-weight:400;white-space:nowrap;letter-spacing:.15px}
.guide-card h3{font-size:29px;line-height:1.19;letter-spacing:-.55px;margin:0 0 19px;text-wrap:pretty}
.guide-description{color:var(--muted);font-size:13px;line-height:1.85;margin:0 0 28px;text-wrap:pretty}
.guide-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:auto;padding-top:18px;border-top:1px solid #e3e4de;font:600 12px/1.6 Arial,Helvetica,sans-serif}
.guide-arrow{display:grid;place-items:center;width:37px;height:37px;border:1px solid #c7cfcf;border-radius:50%;color:var(--navy);transition:background .2s,border-color .2s,color .2s}
.guide-arrow .arrow{width:19px;height:19px}
.guide-card:focus-within{border-color:#a58c68}
.guide-card-link:focus-visible{outline:2px solid #80643c;outline-offset:5px}
@media(hover:hover){
 .guide-card:hover{border-color:#b5a187;box-shadow:0 12px 32px #1027370d}
 .guide-card-link:hover .guide-arrow{background:var(--navy);border-color:var(--navy);color:#fff}
}
@media(min-width:761px) and (max-width:1000px){
 .guide-grid{gap:18px}.guide-copy{padding:23px 20px 20px}.guide-image::after{left:20px}
 .guide-card h3{font-size:25px;letter-spacing:-.4px}.guide-meta{font-size:8px;margin-bottom:16px}.guide-category{letter-spacing:1.15px}.guide-description{font-size:12px}
}
@media(max-width:760px){
 .guide-grid{grid-template-columns:1fr;gap:28px;max-width:560px;margin-inline:auto}
 .guide-copy{padding:28px 28px 23px}.guide-card h3{font-size:32px;line-height:1.18}
 .guide-description{font-size:14px}.guide-meta{font-size:9px}
}
@media(max-width:480px){
 .guide-grid{gap:27px}.guide-copy{padding:24px 23px 20px}.guide-image::after{left:23px}
 .guide-meta{display:block;margin-bottom:17px}.guide-category,.guide-time{display:block}.guide-category{letter-spacing:1.35px}.guide-time{margin-top:5px;font-size:10px}
 .guide-card h3{font-size:29px;letter-spacing:-.6px;margin-bottom:17px}
 .guide-description{font-size:13px;line-height:1.8;margin-bottom:24px}.guide-cta{font-size:12px;padding-top:16px}
}
@media(prefers-reduced-motion:reduce){.guide-card,.guide-arrow{transition:none}}

/* atelier.css */
/* MD Advance — navy, avorio, bronzo e sfumature Obsidian Plum.
   Direzione visiva ricavata dai riferimenti forniti, con fotografie originali. */
:root{
 --ink:#f3efe7;--muted:#c0cbd2;--gold:#d7b795;--bronze:#d7b795;
 --navy:#152a3a;--paper:#213545;--line:#ffffff24;
 --red:#d4a399;--green:#a8c8b0;--blue:#a2c5de;
 --plum:#2d1e2f;--plum-light:#4e2a4f;
 color-scheme:dark;
}
body{background:#192e3e;color:var(--ink)}
::selection{background:#d7b795;color:#142a3b}
h1,h2,h3{text-wrap:pretty}
.section{padding:100px 0}
.soft{background:#203545}
.kicker{color:var(--gold);font-size:10px;letter-spacing:2px}
.section-head{margin-bottom:45px}
.section-head h2{font-size:clamp(35px,3.5vw,49px);line-height:1.13}
.text-link{border-color:#b89a79;color:var(--ink);padding-bottom:10px}
.text-link:hover{color:var(--gold)}
.button{background:#d7b795;border-color:#d7b795;color:#152a3a;border-radius:2px;padding:15px 23px}
.button:hover{background:#ead3b8;border-color:#ead3b8}
.button.outline{border-color:#d7b79580;color:var(--ink);background:transparent}
.button.outline:hover{background:#ffffff0a}
.skip-link{background:#f3efe7;color:#152a3a}
.topline{background:#122535;border-bottom-color:#ffffff12;color:#b7c5ce}
header{background:#172d3e;border-bottom-color:#ffffff1c}
header.is-scrolled{box-shadow:0 8px 30px #08121b40}
.header-inner{min-height:100px}
.logo{border:1px solid #d7b79550;border-radius:2px}
.brand-type{color:#f3efe7;letter-spacing:1.3px}
.brand-type small{color:#d3c4b0}
.nav>a,.nav-dropdown>button{color:#e3e8e9;font-weight:400;letter-spacing:.3px}
.nav .nav-contact{border-color:#b69776;color:#ecd2b2;padding:13px 19px}
.nav .nav-contact:hover{background:#d7b795;color:#152a3a}
.dropdown{background:#20384b;border-top-color:#d7b795;box-shadow:0 15px 35px #08131c60}
.dropdown a:hover{background:#ffffff08;color:#e4c6a4}
.menu-toggle{background:transparent;border-color:#d7b79570;color:#eee4d6}
.hero{border-bottom:1px solid #ffffff14}
.hero-inner{min-height:690px;padding:88px 0 120px}
.hero h1{font-size:clamp(48px,5vw,76px);font-weight:400;line-height:1.06;letter-spacing:-1.6px}
.hero h1 em{color:#e1c2a0}
.hero-copy{max-width:720px}
.hero-copy>p{color:#e1e5e7;font-size:16px;line-height:1.85;max-width:545px}
.hero-photo::before{background:linear-gradient(90deg,#132536f5 0%,#142839d9 35%,#13253680 61%,#221c2a35 100%),linear-gradient(0deg,#172d3e9c,transparent 50%)}
.hero .button{background:#d7b795;border-color:#d7b795;color:#152a3a}
.hero .button:hover{background:#ead3b8;border-color:#ead3b8}
.topic-bar{margin-top:-35px}
.topic-bar .wrap{background:#f0ece4;color:#223646;border:1px solid #ded5c7;border-radius:2px;box-shadow:0 18px 50px #0a172830;padding:28px 30px}
.topic-bar .kicker{color:#705439}
.topic-bar a{border-left-color:#c9bfae}
.topic-bar a:hover{color:#785637}
.need-card{border-color:#ffffff20;background:#233b4d;box-shadow:none}
.need-card:hover{border-color:#d7b79588;box-shadow:0 13px 34px #0b17252b}
.need-content{background:linear-gradient(140deg,#263e50,#223848)}
.need-card .need-description{color:#d2dce1}
.need-cta{color:#f0e9de;border-color:#ffffff20}
.need-cta-arrow{border-color:#d7b79566;color:#e1c2a0}
.need-card:hover .need-cta-arrow,.need-card:focus-within .need-cta-arrow{background:#d7b795;border-color:#d7b795;color:#142b3d}
.need-cover{background:linear-gradient(180deg,#122939d9 0%,#12293933 35%,#0b2133f5 100%)}
.feature{box-shadow:none;border:1px solid #ffffff1f;margin-block:0}
.feature-copy{background:linear-gradient(135deg,#2d1e2f,#3c2941);padding:64px 56px}
.feature-copy .kicker{color:#e1c2a0}
.feature-copy p{color:#ded5df}
.feature-copy h2{font-size:45px}
.guide-card{border-color:#ffffff1f;background:#23394b;box-shadow:none}
.guide-card:focus-within{border-color:#d7b795}
.guide-copy{background:#23394b}
.guide-category{color:#dfc09e}
.guide-time{color:#becbd3}
.guide-image{background:#23394b;border-color:#ffffff1f}
.guide-image::after{background:#dfc09e}
.guide-description{color:#c8d3da}
.guide-cta{border-color:#ffffff24;color:#f0e9de}
.guide-arrow{border-color:#d7b79566;color:#e1c2a0}
.guide-card-link:focus-visible{outline-color:#d7b795}
@media(hover:hover){.guide-card:hover{border-color:#d7b79580;box-shadow:0 15px 34px #0b17252b}.guide-card-link:hover .guide-arrow{background:#d7b795;border-color:#d7b795;color:#152a3a}}
.area{background:#243b4d;border-color:#ffffff1f}
.area-visual{border-bottom-width:2px}
.area-content>p{color:#c8d3da}
.area .service-link{border-color:#ffffff20}
.area-content{padding:30px}
.studio-meta{border-color:#d7b79570}
.studio-meta strong{color:#eee5d8}
.studio-meta>div{border-color:#ffffff1f}
.contact-band{background:radial-gradient(ellipse at 85% 25%,#4e2a4f 0%,transparent 60%),linear-gradient(110deg,#2d1e2f,#352139);border-top-color:#d7b79535;padding:75px 0}
.contact-band::before,.contact-band::after{border-color:#e1c2a018}
.contact-band h2{font-size:44px}
.contact-band p{color:#ded4df}
.contact-band .button{background:#d7b795;border-color:#d7b795;color:#152a3a}
footer{background:#112637;color:#c1cdd5;padding-top:70px}
footer .fine{color:#aebfca}
.footer-bottom{border-color:#ffffff18;color:#aebfca}
.floating-contact{background:#d7b795;border-color:#d7b795;color:#152a3a;box-shadow:0 6px 25px #09142350;border-radius:2px}
.floating-contact:hover{background:#ead3b8}
.breadcrumb{color:#b5c6d0}
.page-intro{background:radial-gradient(ellipse at 100% 0%,#4e2a4f55,transparent 65%),#203647;border-bottom-color:#ffffff20;position:relative}
.page-intro .wrap{padding-block:72px}
.page-intro h1{font-size:clamp(39px,4.7vw,65px);line-height:1.1}
.page-intro .lead{color:#c8d4dc}
.page-intro .intro-image{height:330px}
.intro-image::before{border-color:#d7b79570}
.aside-box{background:#233a4c;border-top-color:#d7b795}
.document-box{background:#263b4b;border-left-color:#d7b795}
.service-row:hover{background:linear-gradient(90deg,transparent,#ffffff03)}
.question-block{border-color:#d7b795}
.article-masthead{background:radial-gradient(ellipse at 100% 0%,#4e2a4f55,transparent 60%),#203647}
.article-content p{color:#c9d4db;font-size:16px}
.article-content h2{color:#f3efe7}
.article-content .document-box{background:#263b4b}
.toc{border-color:#d7b79570}
.toc a{font-size:12px;color:#bacbd6}
.article-meta{color:#b9cad4}
.contact-form,.map-panel{background:#233b4d;border:1px solid #ffffff1f}
.map-panel{border-left:2px solid #d7b795}
.form-grid input,.form-grid textarea,.form-grid select{background:#182e40;border-color:#536371;color:#f3efe7}
.form-grid input::placeholder,.form-grid textarea::placeholder{color:#a5b6c1}
.form-grid .check-label input{accent-color:#d7b795}
.form-status{color:#eed5b6}

/* Sequenza editoriale: medesimo formato e dimensione per ogni ritratto. */
#team{background:#1c3141;padding-bottom:100px}
#team .section-head{margin-bottom:52px}
.people{display:flex;flex-direction:column;gap:0;border:1px solid #ffffff1e}
.person{display:grid;grid-template-columns:42% 58%;padding:0;background:#283e50;border:0;border-bottom:1px solid #ffffff1a;scroll-margin-top:0;min-width:0}
.person:last-child{border-bottom:0}
.person:nth-child(even){grid-template-columns:58% 42%;background:#263b4d}
.person:nth-child(even) .person-portrait{order:2}
.person:nth-child(even) .person-content{order:1}
.person-portrait{width:100%;aspect-ratio:4/5;align-self:start;background:#e6e6e1}
.person-portrait img{object-fit:cover;transform:scale(var(--portrait-scale,1));transform-origin:50% 8%}
.person-content,.person.text-profile .person-content{padding:clamp(32px,5vw,72px);justify-content:center;min-width:0}
.person-meta{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:42px;color:#d9b997;font:600 9px/1.5 Arial,sans-serif;letter-spacing:2px;text-transform:uppercase}
.person-meta span:last-child{font:italic 19px/1 var(--serif);letter-spacing:0;opacity:.7}
.person .person-area{font-size:9px;letter-spacing:1.8px;color:#c4b6a5;margin-bottom:18px}
.person h3{font-size:clamp(31px,3.1vw,45px);line-height:1.1;color:#f5eee2;margin-bottom:16px;letter-spacing:-.75px}
.person .role{font:italic 20px/1.45 var(--serif);min-height:0;color:#d2c2b2;margin:0 0 26px}
.person .bio{font-size:15px;line-height:1.85;max-width:520px;margin-bottom:25px;color:#d0d9df}
.person .email{margin-top:10px;border-top:1px solid #d7b79550;padding-top:21px;font-size:12px;color:#edd2b1;line-height:1.6;align-self:stretch}
.person .email:hover{color:white}
.person details{margin:0 0 18px;padding-top:15px;border-color:#ffffff2a}
.person details summary{color:#e2c2a1}
.person details p{color:#d0d9df;font-size:14px;line-height:1.8}
.person.text-profile{border-top:0}
.person-portrait.no-photo{background:radial-gradient(ellipse at 70% 20%,#4e2a4f70,transparent 65%),#1c3041;aspect-ratio:4/5;color:#d7b795}
.person-portrait.no-photo span{border-color:#d7b79550;font-size:95px;letter-spacing:-3px}

@media(max-width:1100px){
 .nav{gap:21px}.section{padding:80px 0}.feature-copy{padding:45px 38px}.feature-copy h2{font-size:38px}
 .person-content,.person.text-profile .person-content{padding:38px}.person-meta{margin-bottom:28px}.person h3{font-size:35px}.person .role{font-size:18px;margin-bottom:20px}.person .bio{font-size:14px}
}
@media(max-width:1000px){
 .header-inner{min-height:88px}.nav{background:#1b3345;border-color:#ffffff20}.nav>a,.nav-dropdown>button{font-size:12px}
 .hero-inner{min-height:650px;padding:75px 0 105px}.hero h1{font-size:60px}
 .person-content,.person.text-profile .person-content{padding:30px}.person h3{font-size:32px}.person .role{font-size:17px}.person .bio{font-size:13px}.person-meta{margin-bottom:24px}
}
@media(min-width:761px) and (max-width:950px){
 .people{border:0;gap:30px}
 .person,.person:nth-child(even){grid-template-columns:1fr;max-width:560px;width:100%;margin-inline:auto;border:1px solid #ffffff20}
 .person:last-child{border-bottom:1px solid #ffffff20}
 .person:nth-child(even) .person-portrait{order:0}.person:nth-child(even) .person-content{order:1}
 .person-content,.person.text-profile .person-content{padding:40px}.person h3{font-size:39px}.person .role{font-size:20px}.person .bio{font-size:15px}
}
@media(max-width:760px){
 .section{padding:64px 0}.section-head h2{font-size:37px}.hero-inner{min-height:640px;padding:60px 0 100px}.hero h1{font-size:55px}.hero-copy>p{font-size:15px}
 .hero-photo::before{background:linear-gradient(90deg,#132536ed,#142839b8),linear-gradient(0deg,#2d1e2f70,transparent)}
 .topic-bar{margin-top:-25px}.topic-bar .wrap{padding:12px 25px}.topic-bar a{border-bottom-color:#c9bfae}
 .feature-copy{padding:42px 30px}.feature-copy h2{font-size:37px}.page-intro .wrap{padding-block:45px}.page-intro .intro-image{height:290px}
 .contact-band{padding:55px 0}.contact-band h2{font-size:37px}
 .person,.person:nth-child(even){grid-template-columns:1fr;max-width:560px;width:100%;margin-inline:auto}
 .people{border:0;gap:30px}.person{border:1px solid #ffffff20}.person:last-child{border-bottom:1px solid #ffffff20}
 .person:nth-child(even) .person-portrait{order:0}.person:nth-child(even) .person-content{order:1}
 .person-content,.person.text-profile .person-content{padding:36px}.person h3{font-size:37px}.person .role{font-size:20px}.person .bio{font-size:15px}.person-meta{margin-bottom:30px}.person .email{font-size:12px}
 #team{padding-bottom:65px}.contact-form{padding:30px}
}
@media(max-width:480px){
 .header-inner{min-height:80px}.nav{top:80px}.logo{border:0}.brand-type{letter-spacing:.6px}
 .hero-inner{min-height:660px;padding:48px 0 95px}.hero h1{font-size:47px;letter-spacing:-1.4px}.hero-copy>p{font-size:14px}.hero .actions{gap:25px}
 .hero .button{font-size:12px}.hero-copy .kicker{font-size:8px}.topic-bar .wrap{padding:10px 20px}.topic-bar a{font-size:11px}
 .section{padding:55px 0}.section-head{margin-bottom:33px}.section-head h2{font-size:34px}.feature-copy{padding:36px 26px}.feature-copy h2{font-size:34px}
 .page-intro h1{font-size:40px}.page-intro .intro-image{height:235px}.page-intro .wrap{padding-block:38px}
 .person-content,.person.text-profile .person-content{padding:28px 26px 30px}.person h3{font-size:33px}.person .role{font-size:18px}.person .bio{font-size:14px}.person-meta{margin-bottom:28px}.person .person-area{font-size:8px;line-height:1.7}
 .person .email{font-size:11px}.person-portrait.no-photo span{font-size:80px}#team .section-head{margin-bottom:35px}
 .contact-band h2{font-size:34px}.contact-band{padding:48px 0}.contact-form{padding:25px}.floating-contact{border-radius:50%}
 .article-content p{font-size:15px}
}

/* Voci estese del menu su schermi intermedi. */
@media(min-width:1001px) and (max-width:1150px){.header-inner{gap:25px}.nav{gap:17px}.nav>a{font-size:10px}.nav .nav-contact{padding:12px 15px}}

