@font-face{font-family:Inter;src:url("assets/inter-variable.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
:root{color-scheme:light;--paper:#f5f0e6;--cream:#fffaf1;--ink:#211d2b;--plum:#33263f;--berry:#70455f;--coral:#ef7653;--sun:#f4c94f;--sage:#c8d19f;--muted:#69616d;--line:rgba(33,29,43,.2);--font:Inter,Arial,sans-serif;--gutter:clamp(22px,7vw,112px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--font);-webkit-font-smoothing:antialiased}img{max-width:100%}a{color:inherit}button,summary{font:inherit}h1,h2,h3,p{overflow-wrap:break-word}::selection{background:var(--sun);color:var(--ink)}:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.skip-link{position:absolute;z-index:30;top:10px;left:-10000px;padding:10px 15px;background:var(--sun);color:var(--ink)}.skip-link:focus{left:12px}
.site-header{position:relative;z-index:10;min-height:82px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:inline-flex;flex-direction:column;line-height:1.05;text-decoration:none}.brand__name{font-size:20px;font-weight:760;letter-spacing:-.055em}.brand__role{margin-top:6px;color:var(--muted);font-size:11px;font-weight:550}.menu-disclosure{display:contents}.menu-disclosure>summary{display:none}.site-nav{display:flex;align-items:center;gap:clamp(18px,2.7vw,38px);font-size:14px;font-weight:650}.site-nav a{text-decoration:none;text-underline-offset:5px}.site-nav a:not(.nav-cta):hover{text-decoration:underline;text-decoration-color:var(--coral);text-decoration-thickness:2px}.nav-cta,.button{min-height:48px;padding:11px 21px;display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:999px;text-decoration:none;font-size:14px;font-weight:720;transition:transform .18s ease,background-color .18s ease}.nav-cta,.button--sun{background:var(--sun);color:var(--ink)}.nav-cta:hover,.button--sun:hover{background:#ffda70;transform:translateY(-1px)}.button--ink{background:var(--ink);color:var(--cream)}.button--ink:hover{background:var(--berry)}
.hero{position:relative;isolation:isolate;min-height:min(760px,calc(100svh - 82px));padding:70px var(--gutter) 78px;display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);grid-template-areas:"copy visual" "ribbon ribbon";align-items:center;overflow:hidden;background:var(--plum);color:var(--cream)}.hero-copy{position:relative;z-index:2;grid-area:copy;max-width:720px;padding:0 clamp(18px,4.6vw,72px) 24px 0}.hero-kicker,.section-label{margin:0 0 21px;color:var(--sun);font-size:.78rem;font-weight:700;letter-spacing:.08em}.hero h1{max-width:700px;margin:0;font-size:clamp(56px,7.7vw,112px);font-weight:760;line-height:.9;letter-spacing:-.08em}.hero h1 em{color:var(--coral);font-style:normal}.hero-lead{max-width:520px;margin:28px 0 26px;color:rgba(255,250,241,.85);font-size:clamp(17px,1.5vw,20px);line-height:1.6}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 25px}.text-link{display:inline-block;width:fit-content;color:var(--cream);font-weight:650;text-decoration-thickness:1px;text-underline-offset:5px}.text-link:hover{color:var(--sun)}.text-link--dark{color:var(--ink)}.text-link--dark:hover{color:var(--berry)}.hero-meta{margin-top:39px;padding-top:14px;display:flex;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,250,241,.28);color:rgba(255,250,241,.72);font-size:.76rem}.hero-visual{position:relative;grid-area:visual;align-self:stretch;min-width:0;min-height:500px;margin:-70px calc(-1 * var(--gutter)) -30px 0;overflow:hidden;background:radial-gradient(ellipse at 52% 45%,rgba(244,201,79,.96) 0 6%,transparent 6.5%),radial-gradient(ellipse at 52% 45%,transparent 0 18%,rgba(239,118,83,.9) 18.3% 19%,transparent 19.4% 30%,rgba(200,209,159,.9) 30.4% 31%,transparent 31.4% 43%,rgba(239,118,83,.8) 43.4% 44%,transparent 44.5%),linear-gradient(138deg,#875572,#543858 57%,#33263f)}.hero-visual::before{position:absolute;inset:0;content:"";background:repeating-linear-gradient(135deg,transparent 0 31px,rgba(255,250,241,.12) 32px 33px,transparent 34px 64px);mix-blend-mode:screen}.hero-orbit{position:absolute;z-index:1;top:50%;left:50%;border:1px solid rgba(255,250,241,.44);border-radius:50%;transform:translate(-50%,-50%) rotate(-18deg)}.hero-orbit--outer{width:min(75%,530px);aspect-ratio:1}.hero-orbit--inner{width:min(56%,390px);aspect-ratio:1;border-style:dashed}.hero-photo{position:absolute;z-index:2;inset:0;margin:0;overflow:hidden}.hero-photo img{display:block;width:100%;height:100%!important;min-height:100%;max-height:none!important;object-fit:cover;object-position:center 40%}.hero-visual::after{position:absolute;z-index:3;inset:0;content:"";background:linear-gradient(90deg,rgba(51,38,63,.08),rgba(51,38,63,.02) 55%,rgba(51,38,63,.24)),linear-gradient(0deg,rgba(33,29,43,.34),transparent 52%);pointer-events:none}.hero-seal{position:absolute;z-index:4;right:8%;bottom:8%;width:104px;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;border:1px solid rgba(255,250,241,.78);border-radius:50%;color:var(--cream);font-size:.62rem;font-weight:700;line-height:1.55;letter-spacing:.08em;text-transform:uppercase;transform:rotate(10deg)}.hero-ribbon{position:absolute;z-index:4;right:var(--gutter);bottom:15px;left:var(--gutter);display:flex;justify-content:space-between;padding-top:13px;border-top:1px solid rgba(255,250,241,.3);color:rgba(255,250,241,.72);font-size:.76rem}
.opening{min-height:360px;padding:clamp(60px,8vw,112px) var(--gutter);display:grid;grid-template-columns:minmax(130px,.35fr) minmax(0,1fr);gap:8%;align-items:center;background:var(--sun)}.opening-mark{position:relative;width:min(190px,100%);aspect-ratio:1;border:1px solid var(--ink);border-radius:50%}.opening-mark::before,.opening-mark::after{position:absolute;inset:14%;border:1px solid rgba(33,29,43,.45);border-radius:50%;content:""}.opening-mark::after{inset:29%;border-color:var(--berry)}.opening-mark span{position:absolute;z-index:1;top:50%;left:50%;width:11px;height:11px;border-radius:50%;background:var(--coral);transform:translate(-50%,-50%)}.opening-mark span:nth-child(2){width:5px;height:5px;margin-left:-27px;background:var(--ink)}.opening-mark span:nth-child(3){width:5px;height:5px;margin-left:27px;background:var(--plum)}.opening-copy{max-width:850px}.opening h2,.section-head h2,.experience h2,.about h2,.contact h2{margin:0;font-size:clamp(43px,5.8vw,80px);font-weight:740;line-height:.98;letter-spacing:-.07em}.opening h2 em,.section-head h2 em,.experience h2 em,.about h2 em,.contact h2 em{color:var(--berry);font-style:normal}.opening-copy p{max-width:700px;margin:24px 0 0;color:rgba(33,29,43,.83);font-size:1.04rem}
.practices{padding:clamp(70px,9vw,125px) var(--gutter) clamp(75px,9vw,118px);background:var(--paper)}.section-head{margin-bottom:46px;display:flex;justify-content:space-between;align-items:end;gap:30px}.section-head h2 em{color:var(--coral)}.section-head>p{max-width:360px;margin:0 0 5px;color:var(--muted)}.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.practice-card{min-height:350px;padding:27px 26px 25px;display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--line);background:var(--cream)}.practice-card--main{background:var(--plum);color:var(--cream);border-color:var(--plum)}.practice-icon{width:62px;height:62px;margin-bottom:31px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;color:var(--berry)}.practice-card--main .practice-icon{color:var(--sun)}.practice-icon svg{width:44px;height:44px;stroke:currentColor;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round}.practice-card h3{margin:0 0 11px;font-size:clamp(22px,2.1vw,29px);font-weight:700;letter-spacing:-.05em;line-height:1.12}.practice-card p{margin:0;color:var(--muted);font-size:.94rem;line-height:1.6}.practice-card--main p{color:rgba(255,250,241,.77)}.practice-card>a{margin-top:auto;padding-top:24px;color:var(--berry);font-size:.87rem;font-weight:720;text-underline-offset:4px}.practice-card--main>a{color:var(--sun)}.practice-card>a span{margin-left:6px}.location-note{max-width:780px;margin:22px 0 0;color:var(--muted);font-size:.84rem}
.experience{min-height:0;padding:clamp(72px,9vw,126px) var(--gutter);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10%;align-items:center;background:var(--coral)}.experience-heading{max-width:560px}.experience-copy{max-width:680px}.section-label{color:var(--ink)}.experience h2 em{color:var(--plum)}.experience-copy>p{max-width:620px;color:rgba(33,29,43,.84)}.experience-copy>p:last-of-type{margin-bottom:25px;font-size:.94rem}
.about{padding:clamp(70px,9vw,125px) var(--gutter);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:9%;align-items:start;background:var(--sage)}.about h2 em{color:var(--berry)}.about-copy{max-width:620px;padding-top:8px}.about-copy p:first-child{margin-top:0;font-size:1.1rem}.about-copy p{color:rgba(33,29,43,.85)}.about-links{margin-top:30px;display:flex;flex-wrap:wrap;gap:16px 27px}.about-links a{font-weight:700;text-underline-offset:4px}
.journal{padding:clamp(64px,8vw,112px) var(--gutter);background:var(--plum);color:var(--cream)}.journal:not(:has(.journal-card)){display:none}tmo-articoli{display:block}.journal-heading{margin-bottom:38px;display:flex;justify-content:space-between;align-items:end;gap:28px}.journal-heading h2{margin:0;font-size:clamp(42px,5.8vw,76px);font-weight:730;line-height:.95;letter-spacing:-.07em}.journal-heading h2 em{color:var(--sun);font-style:normal}.journal-heading p{max-width:420px;margin:15px 0 0;color:rgba(255,250,241,.73)}.journal-heading>.text-link{margin-bottom:6px;color:var(--sun)}.journal-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.journal-card{min-width:0;background:var(--cream);color:var(--ink)}.journal-card__link{min-height:355px;display:flex;flex-direction:column;color:inherit;text-decoration:none}.journal-card__image-frame{height:190px;overflow:hidden;background:var(--berry)}.journal-card__image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.journal-card__link:hover .journal-card__image{transform:scale(1.035)}.journal-card__copy{min-height:165px;padding:21px 23px;display:flex;flex-direction:column;align-items:flex-start}.journal-card__copy h3{margin:0 0 9px;font-size:clamp(21px,2vw,27px);line-height:1.08;letter-spacing:-.045em}.journal-card__copy p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}.journal-card__read{margin-top:auto;padding-top:16px;color:var(--berry);font-size:.84rem;font-weight:720;text-decoration:underline;text-underline-offset:4px}.journal-card__link:not(:has(.journal-card__image-frame)){min-height:0}.journal-card__link:not(:has(.journal-card__image-frame)) .journal-card__copy{min-height:230px}
.contact{padding:clamp(70px,9vw,125px) var(--gutter);display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:40px 10%;align-items:center;background:var(--paper);color:var(--ink)}.contact h2 em{color:var(--coral)}.contact-copy>p{max-width:490px;margin:24px 0;color:var(--muted)}.contact-side{min-height:0;padding:clamp(25px,3vw,40px);display:flex;flex-direction:column;align-items:flex-start;background:var(--sun)}.contact-side__label{margin:0 0 27px;color:var(--berry);font-size:.72rem;font-weight:750;letter-spacing:.09em}.contact-side h3{margin:0;font-size:clamp(25px,3vw,36px);line-height:1.06;letter-spacing:-.05em}.contact-booking{margin-top:23px;color:var(--ink);font-weight:750;text-underline-offset:5px}.contact-booking span{margin-left:5px}.contact-details{width:100%;margin-top:27px;padding-top:16px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 18px;border-top:0;padding-top:0;font-size:.82rem}.contact-details a{font-weight:700;text-underline-offset:3px}.contact-details span{color:var(--muted)}.site-footer{min-height:125px;padding:25px var(--gutter);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px 30px;background:var(--ink);color:var(--cream)}.site-footer .brand__role,.site-footer>p{color:rgba(255,250,241,.65)}.site-footer>p{margin:0;justify-self:center;font-size:.9rem}.site-footer>a:not(.brand){text-underline-offset:4px}.site-footer small{grid-column:1/-1;color:rgba(255,250,241,.55);font-size:.75rem}
/* Server-rendered article and archive views */
.news-shell{min-height:68vh}.news-archive{padding:clamp(44px,7vw,90px) var(--gutter) clamp(70px,9vw,116px);background:var(--sun)}.news-archive__head{max-width:1100px;margin:0 auto 42px;display:flex;justify-content:space-between;align-items:end;gap:24px}.news-back{display:inline-block;margin-bottom:24px;font-weight:650;text-underline-offset:5px}.news-archive h1,.news-detail h1{margin:0;font-size:clamp(48px,7vw,90px);line-height:.93;letter-spacing:-.075em;font-weight:760}.news-archive__head p{max-width:570px;margin:18px 0 0;color:rgba(33,29,43,.78)}.news-list{max-width:1100px;margin:0 auto;border-top:1px solid var(--line)}.news-card--archive{border-bottom:1px solid var(--line)}.news-card--archive .news-card__link{min-height:230px;padding:20px 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,32%);gap:clamp(24px,5vw,60px);align-items:center;color:var(--ink);text-decoration:none}.news-card__date,.news-detail__date{display:block;margin-bottom:10px;color:var(--berry);font-size:.82rem;font-weight:650}.news-card--archive .news-card__copy h2{margin:0;font-size:clamp(28px,4vw,46px);line-height:1.04;letter-spacing:-.055em}.news-card--archive .news-card__description{max-width:650px;margin:10px 0 0;color:var(--muted)}.news-card--archive .news-card__image-frame{height:180px;overflow:hidden;background:var(--berry)}.news-card--archive .news-card__image-frame img{width:100%;height:100%;display:block;object-fit:cover}.news-detail{background:var(--paper)}.news-detail__head{padding:clamp(38px,6vw,76px) var(--gutter) 44px;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.75fr);gap:clamp(28px,6vw,88px);align-items:end;background:var(--plum);color:var(--cream)}.news-detail__intro{max-width:780px}.news-detail .news-back{margin-bottom:27px;padding:8px 13px;border-radius:999px;background:var(--sun);color:var(--ink);font-weight:720;text-decoration:none}.news-detail .news-back:hover{background:#ffda70}.news-detail__date{color:rgba(255,250,241,.7)}.news-detail__description{max-width:650px;margin:19px 0 0;color:rgba(255,250,241,.8);font-size:clamp(17px,1.7vw,21px)}.news-detail__image-frame{width:100%;height:clamp(220px,29vw,370px);margin:0;overflow:hidden;background:var(--berry)}.news-detail__image-frame img{width:100%;height:100%;display:block;object-fit:cover}.news-detail__body{width:min(100% - 2 * var(--gutter),760px);margin:0 auto;padding:clamp(42px,7vw,82px) 0 clamp(68px,9vw,112px)}.news-detail__body>div{font-size:1.06rem;line-height:1.85}.news-detail__body>div>:first-child{margin-top:0}.news-detail__body>div h2,.news-detail__body>div h3{margin:2em 0 .55em;line-height:1.14;letter-spacing:-.04em}.news-detail__body>div a{color:var(--berry);text-underline-offset:4px}.news-detail__body>div img{max-width:100%;height:auto}
@media(max-width:760px){body{font-size:16px}.site-header{min-height:70px;padding-inline:19px}.brand__name{font-size:19px}.menu-disclosure{display:block;position:static}.menu-disclosure>summary{width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;border:1px solid var(--line);border-radius:50%;color:var(--ink);cursor:pointer;list-style:none}.menu-disclosure>summary::-webkit-details-marker{display:none}.menu-disclosure>summary span{width:18px;height:1.5px;background:currentColor;transition:transform .18s ease}.menu-disclosure[open]>summary span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-disclosure[open]>summary span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.site-nav{position:absolute;top:69px;right:0;left:0;display:none;align-items:stretch;flex-direction:column;gap:0;padding:8px 22px 22px;border-bottom:1px solid var(--line);background:var(--paper);font-size:16px}.menu-disclosure[open] .site-nav{display:flex}.site-nav a:not(.nav-cta){padding:13px 0;border-bottom:1px solid var(--line)}.site-nav .nav-cta{margin-top:16px}.hero{min-height:min(790px,calc(100svh - 70px));padding:45px 22px 78px;display:flex;align-items:flex-end}.hero-copy{max-width:570px;padding:0}.hero-kicker{font-size:.72rem}.hero h1{max-width:540px;font-size:clamp(53px,14vw,88px)}.hero-lead{max-width:475px;margin:19px 0 21px;font-size:1rem}.hero-visual{position:absolute;z-index:0;inset:0;min-height:0;margin:0;background-position:center;background-size:cover}.hero-visual::after{background:linear-gradient(90deg,rgba(33,29,43,.8),rgba(33,29,43,.54) 58%,rgba(33,29,43,.28)),linear-gradient(0deg,rgba(33,29,43,.42),transparent 70%)}.hero-photo img[data-tmo-photo="hero"]{width:100%;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center 37%!important}.hero:has(.hero-visual[data-tmo-media-state="NO_IMAGE"]) .hero-visual::after,.hero:has(.hero-visual[data-tmo-photo-empty]) .hero-visual::after{background:linear-gradient(125deg,rgba(51,38,63,.12),rgba(51,38,63,.44))}.hero-seal{right:21px;bottom:90px;width:84px;font-size:.53rem}.hero-meta{margin-top:27px;font-size:.67rem}.hero-ribbon{right:22px;bottom:16px;left:22px;font-size:.68rem}.opening{min-height:0;padding:62px 22px 68px;grid-template-columns:1fr;gap:26px}.opening-mark{width:112px}.opening h2,.section-head h2,.experience h2,.about h2,.contact h2{font-size:clamp(43px,11.5vw,68px)}.opening-copy p{margin-top:18px;font-size:.98rem}.practices{padding:64px 22px 68px}.section-head{margin-bottom:27px;display:block}.section-head>p{max-width:460px;margin-top:15px}.practice-grid{grid-template-columns:1fr;gap:10px}.practice-card{min-height:0;padding:23px 20px}.practice-icon{width:52px;height:52px;margin-bottom:20px}.practice-icon svg{width:39px;height:39px;stroke-width:2.25}.practice-card h3{font-size:24px}.practice-card>a{padding-top:16px}.location-note{font-size:.79rem}.experience{min-height:0;padding:62px 22px 68px;grid-template-columns:1fr;gap:21px}.experience-copy>p{font-size:.96rem}.about{padding:64px 22px;grid-template-columns:1fr;gap:21px}.about-copy{padding-top:0}.about-copy p:first-child{font-size:1.02rem}.about-links{margin-top:22px;flex-direction:column;gap:12px}.journal{padding:60px 22px}.journal-heading{margin-bottom:25px;align-items:flex-start;flex-direction:column;gap:16px}.journal-heading h2{font-size:clamp(42px,11.5vw,64px)}.journal-heading p{margin-top:11px}.journal-items{grid-template-columns:1fr;gap:11px}.journal-card__link{min-height:0;display:grid;grid-template-columns:minmax(102px,.66fr) minmax(0,1fr)}.journal-card__image-frame{height:100%;min-height:172px}.journal-card__copy{min-height:172px;padding:16px}.journal-card__copy h3{font-size:21px}.journal-card__copy p{font-size:.86rem}.journal-card__read{padding-top:11px}.journal-card__link:not(:has(.journal-card__image-frame)){display:block}.contact{padding:64px 22px;grid-template-columns:1fr;gap:30px}.contact-side{padding:23px}.contact-side__label{margin-bottom:19px}.contact-details{margin-top:22px;flex-direction:column;gap:7px}.site-footer{grid-template-columns:1fr auto;gap:16px;padding:26px 22px}.site-footer>p{grid-column:1/-1;justify-self:start;grid-row:2}.site-footer>a:not(.brand){grid-column:2;grid-row:1}.site-footer small{grid-row:3}.news-archive{padding:34px 22px 60px}.news-archive__head{margin-bottom:28px;align-items:flex-start;flex-direction:column;gap:14px}.news-archive h1,.news-detail h1{font-size:clamp(43px,12vw,64px)}.news-back{margin-bottom:18px}.news-card--archive .news-card__link{min-height:0;padding:16px 0;grid-template-columns:minmax(0,1fr) minmax(96px,34%);gap:14px}.news-card--archive .news-card__image-frame{height:140px}.news-card--archive .news-card__copy h2{font-size:clamp(23px,6.4vw,31px)}.news-card--archive .news-card__description{font-size:.88rem}.news-detail__head{padding:34px 22px 29px;grid-template-columns:1fr;gap:22px}.news-detail .news-back{margin-bottom:22px}.news-detail__image-frame{height:min(62vw,320px)}.news-detail__body{width:auto;margin:0 22px;padding:36px 0 64px}.news-detail__body>div{font-size:1rem;line-height:1.78}}
@media(max-width:390px){.hero h1{font-size:clamp(50px,13.7vw,60px)}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.hero-actions .button{width:100%;text-align:center}.hero-ribbon{font-size:.61rem}.news-card--archive .news-card__link{grid-template-columns:minmax(0,1fr) 96px;gap:11px}.news-card--archive .news-card__image-frame{height:128px}.news-card--archive .news-card__description{font-size:.83rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
