



:root{--parchment:#F7F4EF;--espresso:#4F2E2B;--brandy:#73321C;--apricot:#E5C69F;--coffee:#1C0F0D}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--coffee)}body{margin:0;min-width:1440px;background:var(--parchment);color:var(--espresso);font-family:Archivo,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}main{position:relative;width:100%;overflow:clip}h1,h2,p,figure{margin:0}h1,h2{font-weight:400}em{font-weight:400}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid currentColor;outline-offset:8px}a:hover .arrow{transform:translateX(6px)}.arrow{display:inline-block;margin-left:22px;transition:transform .2s}.functional{font-family:Raleway,sans-serif;font-weight:500;font-size:12px;letter-spacing:.09em;text-transform:uppercase}.masthead{position:absolute;z-index:4;top:0;left:0;width:100%;height:130px;display:flex;align-items:center;justify-content:space-between;padding:0 72px;color:var(--parchment)}.brand{display:flex;align-items:center;gap:20px}.brand img{width:91px;height:61px;object-fit:contain}.brand span{font-family:Raleway,sans-serif;font-size:11px;line-height:1.6;letter-spacing:.15em;text-transform:uppercase;max-width:160px}.masthead nav{display:flex;gap:36px;align-items:center}.masthead nav a{padding:10px 0}.masthead .enquiry{border-bottom:1px solid currentColor}.hero{position:relative;height:1000px;color:var(--parchment)}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 54%}.hero-shade{position:absolute;inset:0;background:var(--coffee);opacity:.35}.folio{position:absolute;font-family:Raleway,sans-serif;font-size:11px;font-weight:500;letter-spacing:.1em}.intro{font-size:19px;line-height:1.6;font-weight:400}.end-note{font-family:Raleway,sans-serif;display:flex;align-items:center;justify-content:space-between;padding:20px 72px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;background:var(--coffee);color:var(--apricot)}.end-note a{text-decoration:underline;text-underline-offset:4px}.service-name{font-weight:400}.service-name .n{font-family:Raleway,sans-serif;font-style:normal;font-size:11px;letter-spacing:.08em}.service-list{list-style:none;margin:0;padding:0}.prototype-note{max-width:1440px}::selection{color:var(--parchment);background:var(--brandy)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.arrow{transition:none}}
/* A fixed canvas is intentional in this desktop-only approval phase. */
body,main{width:1440px}.prototype-note{width:1440px}

/* A: a ruled editorial margin travels through the complete opening. */
.a .hero::after{content:'';position:absolute;z-index:1;left:88px;top:198px;bottom:0;border-left:1px solid var(--apricot)}
.a .hero .folio{left:42px;top:207px;color:var(--apricot)}
.a .hero h1{position:absolute;inset:228px 0 0 0;z-index:2;font-weight:400}
.a .private,.a .lifestyle{position:absolute;font-family:Newsreader,serif;font-size:116px;line-height:1;letter-spacing:-5px}
.a .private{left:124px;top:0}.a .lifestyle{left:356px;top:265px}
.a .assistance,.a .management{position:absolute;font-family:Archivo,sans-serif;font-size:104px;line-height:1;letter-spacing:-5px;font-weight:400}
.a .assistance{left:124px;top:103px}.a .management{left:356px;top:368px}
.a .amp{position:absolute;left:124px;top:265px;font-family:Newsreader,serif;font-size:112px;font-style:italic;line-height:1;color:var(--apricot)}
.a .italy{position:absolute;left:1000px;top:545px;font-family:Newsreader,serif;font-size:106px;line-height:1;font-style:italic;letter-spacing:-5px;color:var(--apricot)}
.a .hero-bottom{position:absolute;left:128px;right:88px;bottom:54px;display:flex;justify-content:space-between;align-items:flex-end;z-index:2}
.a .slogan{font-family:Newsreader,serif;font-size:29px;line-height:1.2;max-width:550px}.a .hero-bottom a{padding-bottom:6px;border-bottom:1px solid var(--apricot);color:var(--apricot)}
.a .relationships{position:relative;background:var(--apricot);height:790px;padding-top:115px}
.a .relationships::before,.a .services::before{content:'';position:absolute;top:0;bottom:0;left:88px;border-left:1px solid currentColor}
.a .relationships .folio{left:42px;top:133px}.a .relationships h2{font-family:Newsreader,serif;font-size:110px;line-height:1.1;letter-spacing:-4px;position:relative;z-index:2}
.a .relationship-line{display:block;margin-left:128px}.a .relationship-line.focus{margin-left:356px;font-size:138px;line-height:1.04;font-style:italic;color:var(--brandy)}
.a .relationships .intro{position:absolute;left:900px;top:566px;width:420px}
.a .relationship-rule{position:absolute;left:88px;right:88px;top:526px;border-top:1px solid var(--espresso)}
.a .services{position:relative;min-height:1130px;padding:84px 88px 82px 128px;background:var(--espresso);color:var(--apricot)}
.a .services .folio{left:42px;top:116px}.a .services h2{font-family:Newsreader,serif;font-size:145px;line-height:1.08;letter-spacing:-6px;margin-bottom:72px;color:var(--parchment)}
.a .services h2 em{color:var(--apricot);padding-left:24px}.a .service-name{display:block;position:relative;font-family:Newsreader,serif;font-size:76px;line-height:1.25;letter-spacing:-2.5px;padding-bottom:8px;white-space:nowrap}
.a .service-name .n{display:inline-block;width:39px;vertical-align:middle;margin-left:-39px;font-size:10px;opacity:.7;transform:translateX(20px);visibility:hidden}
.a .service-name:nth-child(3){font-style:italic;color:var(--parchment)}.a .services .explore{display:block;width:max-content;margin:56px 0 0 auto;padding-bottom:14px;border-bottom:1px solid var(--apricot)}
/* Revision after the first render: stronger sans contrast, clearer location. */
.a .assistance,.a .management{font-weight:500}.a .italy{color:var(--parchment)}
/* A / refinement 02. The Relationships type and numbered 88 px axis are inherited unchanged. */
.a .hero-photo{object-position:50% 58%}
.a .hero-shade{opacity:.36}
.a .hero h1{top:220px}
.a .private,.a .lifestyle{font-size:110px;letter-spacing:-3.8px}
.a .private,.a .assistance,.a .amp{left:128px}
.a .assistance,.a .management{font-size:100px;letter-spacing:-3.8px;font-weight:500}
.a .assistance{top:106px}
.a .lifestyle,.a .amp{top:261px}
.a .management{top:367px}
.a .italy{left:1012px;top:556px;font-size:110px;letter-spacing:-4px}
.a .hero-bottom{bottom:60px}
/* The image belongs to the Relationships section and crosses the colour boundary. */
.a .relationships{height:1030px}
.a .editorial-bridge{position:absolute;z-index:3;right:0;top:750px;width:1072px;height:420px;margin:0}
.a .editorial-bridge img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 66%;border:0}
/* Leave 102 px between the photograph's lower edge and the Services heading. */
.a .services{min-height:1280px;padding:242px 88px 100px 128px}
.a .services .folio{top:264px}
.a .services h2{font-size:132px;letter-spacing:-4px;margin-bottom:82px}
.a .services h2 em{padding-left:18px}
.a .service-list{display:flex;flex-direction:column;gap:24px}
.a .service-name{padding:0;font-size:72px;line-height:1.12;letter-spacing:-1.7px;font-optical-sizing:auto;font-kerning:normal}
.a .service-amp{font-style:italic;font-size:.96em}
.a .services .explore{margin-top:64px;padding-bottom:16px}
/* Extend the colour fields and photograph to the browser edge on wider desktop windows. */
body,main{width:100%;min-width:1440px}.prototype-note{width:100%;max-width:none}
.a .editorial-bridge{width:74.4444444444%}

/* Refinement 03: retain the existing page system and alter only the four requested areas. */
.a .hero h1{inset:auto;top:228px;left:128px;width:1120px;display:flex;flex-direction:column;gap:12px}
.a .hero-line{display:flex;align-items:baseline;gap:25px;white-space:nowrap;line-height:1.12}
.a .hero-line .private,.a .hero-line .lifestyle{position:static;left:auto;top:auto;font-size:106px;line-height:1.12;letter-spacing:-3.8px}
.a .hero-line .assistance,.a .hero-line .management{position:static;left:auto;top:auto;font-size:90px;line-height:1.12;letter-spacing:-3.2px;font-weight:450}
.a .hero .italy{position:static;left:auto;top:auto;display:block;margin-top:12px;text-align:right;font-size:124px;line-height:1.04;letter-spacing:-4px}
.a .hero-bottom{bottom:70px;align-items:flex-end}
.a .slogan{font-size:44px;line-height:1.2;letter-spacing:-.65px;max-width:850px}
.a .hero-bottom>a{margin-bottom:8px}
/* Keep the panorama's top, width, horizontal position and right-edge alignment. */
.a .editorial-bridge{height:535px}
/* Preserve the 102 px breathing space below the photograph as its lower edge moves. */
.a .services{padding-top:357px}
.a .services .folio{top:379px}
/* Four homepage categories, followed by a typographic invitation to the complete Services page. */
.a .services-more{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin:42px 0 0 228px;padding-bottom:0;color:var(--parchment)}
.a .more-text{font-family:Newsreader,serif;font-size:92px;font-style:italic;font-weight:400;line-height:1.16;letter-spacing:-2.5px;white-space:nowrap}
.a .more-cta{color:var(--apricot);margin-bottom:12px;padding-bottom:16px;border-bottom:1px solid var(--apricot)}

/* Refinement 04: one Newsreader voice across the complete three-line hero. */
.a .hero-line .private,.a .hero-line .assistance,.a .hero-line .lifestyle,.a .hero-line .management{font-family:Newsreader,serif;font-size:106px;font-weight:400;letter-spacing:-3.8px;line-height:1.12}
.a .hero-line{gap:21px}
.a .hero-bottom{justify-content:flex-end}
/* Enlarge the existing image without changing its horizontal placement or adding another image. */
.a .editorial-bridge{height:650px}
.a .services{padding-top:472px;min-height:1395px}
/* Align the typographic invitation with the four service names. */
.a .services-more{margin-left:0}
.a .more-text{font-size:104px;line-height:1.12;letter-spacing:-2.8px}

/* Match the reference: & more follows the same scale and rhythm as the service list. */
.a .services-more{margin-top:24px;margin-left:0}
.a .more-text{font-size:72px;line-height:1.12;letter-spacing:-1.7px}


/* Match the colour of every service category; retain the existing italic. */
.a .service-name:nth-child(3){color:var(--apricot)}
.a .service-name:nth-child(3){font-style:normal;font-weight:400;color:var(--apricot)}
