/* FH25: white paper, one blue, Palatino. Layout: centered column, generous air, thin blue rules as structure. */
:root{
  --paper:#ffffff;
  --ink:#333333;
  --muted:#5a6270;
  --blue:#003982;
  --blue-deep:#002a61;
  --rule:#d9dde3;
  --serif:"Palatino Linotype",Palatino,"Book Antiqua",serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--blue-deep)}
a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.page{min-height:100vh;display:flex;flex-direction:column}
.wrap{width:100%;max-width:1200px;margin:0 auto;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}

/* Header */
.site-header .wrap{padding-block:36px 0;display:flex;flex-wrap:wrap;gap:20px 40px;justify-content:space-between;align-items:center}
.logo img{display:block;height:40px;width:auto}
.nav{display:flex;flex-wrap:wrap;gap:8px 32px;font-size:16px;letter-spacing:.04em}
.nav a{padding-bottom:3px;border-bottom:1px solid transparent}
.nav a[aria-current="page"]{border-bottom-color:var(--blue)}

main{flex:1}

/* Home */
.home .wrap{padding-block:112px 104px;display:flex;flex-direction:column;align-items:center;gap:72px}
.lead{max-width:640px;text-align:center;display:flex;flex-direction:column;gap:20px}
h1{margin:0;font-weight:normal;color:var(--blue);font-size:clamp(32px,4.6vw,44px);line-height:1.15;text-wrap:balance}
.lead p,.intro p{margin:0;font-size:19px;font-style:italic}
.circles{display:flex;flex-wrap:wrap;justify-content:center;gap:48px}
.circle{width:240px;height:240px;border-radius:50%;border:1.5px solid var(--blue);display:flex;align-items:center;justify-content:center;text-align:center;font-size:22px;line-height:1.3;color:var(--blue);transition:background-color .35s ease,color .35s ease}
.circle:hover,.circle:focus-visible{background:var(--blue);color:#fff}

/* Inner pages */
.inner .wrap{padding-block:104px 112px;display:flex;flex-direction:column;gap:80px}
.intro{display:flex;flex-wrap:wrap;align-items:center;gap:40px}
.intro .mark{width:96px;height:96px;border-radius:50%;border:1.5px solid var(--blue);flex-shrink:0}
.intro .text{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:16px}
.blocks{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:48px}
.blocks.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));max-width:820px}
.block{border-top:1px solid var(--blue);padding-top:24px;display:flex;flex-direction:column;gap:12px;min-width:0}
h2{margin:0;font-size:22px;font-weight:normal;color:var(--blue)}
.block p{margin:0}

/* Contacts */
.contact-list{margin:0;max-width:640px;border-top:1px solid var(--rule)}
.contact-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 32px;padding-block:22px;border-bottom:1px solid var(--rule)}
.contact-row dt{font-size:22px;color:var(--blue)}
.contact-row dd{margin:0;font-size:17px}
.contact-row dd a{color:var(--ink);border-bottom:1px solid transparent;transition:border-color .3s ease}
.contact-row dd a:hover,.contact-row dd a:focus-visible{color:var(--ink);border-bottom-color:var(--ink)}

/* Privacy */
.prose{max-width:720px;display:flex;flex-direction:column;gap:28px}
.prose section{display:flex;flex-direction:column;gap:8px}
.prose p{margin:0}
.prose .small{font-size:14px;color:var(--muted)}

/* Footer */
.site-footer{border-top:1px solid var(--rule)}
.site-footer .wrap{padding-block:28px 40px;display:flex;flex-wrap:wrap;gap:16px 48px;justify-content:space-between;font-size:12.5px;line-height:1.6;color:var(--muted)}
.site-footer p{margin:0;max-width:820px;font-style:italic}
.site-footer a{color:var(--muted)}

@media (max-width:560px){
  .home .wrap{padding-block:64px 72px;gap:56px}
  .inner .wrap{padding-block:64px 72px;gap:56px}
  .circle{width:200px;height:200px;font-size:20px}
  .intro .mark{width:64px;height:64px}
}
@media (prefers-reduced-motion:reduce){.circle{transition:none}}
