
.portal{background:#f5f8fc;color:#17233c;padding-bottom:72px}.portal-wrap{width:min(1160px,calc(100% - 40px));margin:0 auto}.portal-hero{padding:42px 0 30px;max-width:1000px}.portal .eyebrow{font-size:13px;letter-spacing:2px;font-weight:800;color:#bc0756}.portal h1{font-size:clamp(34px,4vw,52px);line-height:1.08;color:#123b78;margin:14px 0 22px;letter-spacing:-1.5px}.portal h2{font-size:clamp(26px,3vw,36px);line-height:1.2;color:#123b78;margin:0 0 18px}.portal h3{color:#123b78}.portal p{line-height:1.7;color:#526277}.portal-hero p{font-size:19px;max-width:740px}.portal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-tile{background:#fff;border:1px solid #e0e7f0;border-radius:22px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;color:#123b78;box-shadow:0 5px 20px #123b7808;transition:transform .18s,box-shadow .18s}.service-tile:hover{transform:translateY(-4px);box-shadow:0 12px 30px #123b7814}.service-tile:focus-visible,.portal a:focus-visible{outline:3px solid #bc0756;outline-offset:4px}.tile-visual{height:172px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8f1fc,#fff0f6);overflow:hidden;position:relative}.tile-icon{font-size:56px}.tile-visual img{width:100%;height:100%;object-fit:cover}.tile-copy{padding:24px;display:flex;flex-direction:column;flex:1}.tile-copy h2{font-size:24px;margin:0 0 12px}.tile-copy p{font-size:16px;margin:0 0 20px}.tile-link{font-weight:800;color:#bc0756;margin-top:auto}.portal-group{margin-bottom:42px}.portal-group>h2{font-size:25px;margin-bottom:22px}.portal-contact{background:#123b78;color:white;border-radius:22px;padding:32px;margin-top:44px;display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}.portal-contact h2,.portal-contact p{color:white;margin:0 0 10px}.portal-actions{display:flex;gap:12px;flex-wrap:wrap}.portal-button{display:inline-flex;padding:14px 21px;border-radius:12px;text-decoration:none;font-weight:800;background:#bc0756;color:#fff}.portal-button.light{background:white;color:#123b78}.portal-button.outline{background:#edf3fb;color:#123b78}.breadcrumb{padding-top:28px;font-size:14px;color:#66758c}.breadcrumb a{color:#123b78}.service-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center;margin:25px 0 36px}.service-intro h1{font-size:clamp(36px,4.5vw,54px)}.service-intro-image{width:100%;border-radius:22px;display:block}.service-emblem-image{padding:0;overflow:hidden}.service-emblem-image img{display:block;width:100%;height:100%;min-height:260px;object-fit:cover;border-radius:inherit}.service-emblem{border-radius:22px;background:linear-gradient(135deg,#e8f1fc,#fff0f6);min-height:260px;display:flex;align-items:center;justify-content:center;font-size:100px}.service-panel{background:white;border:1px solid #e0e7f0;border-radius:22px;padding:clamp(22px,4vw,38px);margin:26px 0}.service-panel ul{padding-left:22px;line-height:1.9;color:#526277}.service-panel li{margin-bottom:8px}.service-note{background:#edf3fb;padding:18px 22px;border-radius:14px;color:#123b78}.service-price-scroll{overflow-x:auto}.service-prices{width:100%;border-collapse:collapse;text-align:left}.service-prices th,.service-prices td{padding:13px 16px;border-bottom:1px solid #e0e7f0}.service-prices thead{background:#123b78;color:white}.service-prices tbody tr:nth-child(even){background:#f5f8fc}.service-prices td:last-child{font-weight:700;color:#bc0756}.service-prices caption{text-align:left;margin-bottom:16px;color:#526277}.price-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.price-layout img{width:100%;border-radius:14px}.work-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px}.work-gallery figure{margin:0;overflow:hidden;border:1px solid #e0e7f0;border-radius:16px;background:#fff}.work-gallery img{display:block;width:100%;height:260px;object-fit:contain;background:#f5f8fc}.work-gallery figcaption{padding:16px;color:#526277;line-height:1.5}.gallery-empty{padding:24px;background:#f5f8fc;border-radius:14px}.gallery-loading{color:#66758c}.dtf-section{width:100%;margin:26px 0;box-sizing:border-box;scroll-margin-top:130px}.dtf-section .eyebrow,.dtf-section #dtf-title,.dtf-section>.stampa-facile-actions{display:none}.dtf-section h3{font-size:26px;margin-top:30px}#tutorial-dtf{scroll-margin-top:130px}.dtf-table td{white-space:nowrap}.portal details summary{cursor:pointer;color:#123b78;font-weight:700}.portal details img{max-width:100%;display:block;margin-top:20px}.portal-footer{font-size:14px;text-align:center;margin:28px 0 0}.portal-footer a{color:#526277}.portal-updates{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.portal-updates a{color:#123b78;font-weight:700}@media(max-width:900px){.portal-grid{grid-template-columns:repeat(2,1fr)}.service-intro,.price-layout{grid-template-columns:1fr}.service-intro-image{max-width:700px}.work-gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.portal-grid,.work-gallery{grid-template-columns:1fr}.portal-hero{padding:40px 0 25px}.portal-wrap{width:calc(100% - 32px)}.tile-visual{height:190px}.portal-contact{padding:24px}.service-emblem{min-height:170px;font-size:75px}.portal-actions{width:100%}.portal-button{justify-content:center;flex:1}.service-prices th,.service-prices td{padding:12px 10px}.service-intro{gap:16px}.service-intro .portal-hero{padding:0}.work-gallery img{height:300px}}

/* Keep the business-card hero mockup inside its visual frame. */
.service-intro{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.service-emblem-image{width:100%;min-width:0;height:320px;min-height:0;box-sizing:border-box}.service-emblem-image img{display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;border-radius:inherit}@media(max-width:900px){.service-emblem-image{height:300px}}@media(max-width:600px){.service-emblem-image{height:210px}}
