/* Place navigation and the two-column portal modules. */
header {display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"logo place actions";height:auto;min-height:80px;padding-block:12px}
.place-layout>header {height:auto;min-height:80px}
.header-identity {display:contents}
.header-identity>a {grid-area:logo;line-height:0}
.header-place {display:flex;flex-direction:column;gap:5px;min-width:0;color:#fff;line-height:1.4;overflow-wrap:anywhere}
.header-place {grid-area:place}
.header-place strong {font-size:15px}
.header-place span {font-size:13px}
.header-account {grid-area:actions;gap:12px;min-width:0}
.header-account>a {display:flex;align-items:center;justify-content:center;min-height:44px;text-decoration:none}
.header-switch-place {display:none}
.account-menu {position:relative}
.account-menu summary {display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 12px;border:1px solid #237965;border-radius:9px;color:#fff;cursor:pointer;list-style:none}
.account-menu summary::-webkit-details-marker {display:none}
.account-menu summary:hover,.account-menu[open] summary {background:#064c40}
.account-menu summary:focus-visible {outline:3px solid #62edbd;outline-offset:4px}
.account-menu summary svg {width:20px;height:20px;flex:none}
.account-dropdown {position:absolute;z-index:20;right:0;top:calc(100% + 10px);width:min(300px,calc(100vw - 36px));padding:18px;border:1px solid #237965;border-radius:12px;background:#001c28;box-shadow:0 12px 30px #00171a66}
.account-label {display:block;font-size:12px;color:#bad5cf;margin-bottom:7px}
.account-dropdown .account {display:block;max-width:none;color:#fff;line-height:1.5;overflow-wrap:anywhere}
.account-dropdown form {margin-top:16px;padding-top:14px;border-top:1px solid #237965}
.account-dropdown button {min-height:44px;width:100%;text-align:left}
.place-layout>main {padding-top:20px}
.place-layout.external-layout>main {padding-top:12px}
.visually-hidden {position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.place-home, .place-detail.wide {max-width:none}
.place-title {max-width:none;font-size:30px;line-height:1.3;letter-spacing:-.5px}
.place-label {display:block;color:#61ebbc;font-size:14px;line-height:1.5;margin-bottom:12px}
.wide>h1 {margin-bottom:32px}
.module-tiles {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:20px;padding:0;margin:0;list-style:none}
.module-tiles li {min-width:0}
.module-tile {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;height:100%;min-height:190px;padding:28px 20px;border:2px solid #23846d;border-radius:24px;background:linear-gradient(145deg,#08604e,#064a42);color:#f6fffc;text-align:center;text-decoration:none;font-size:19px;font-weight:700;line-height:1.4;transition:background .15s,border-color .15s}
.module-tile:hover {background:#08765d;border-color:#61ebbc}
.module-icon {width:44px;height:44px;color:#36e3b1;flex:none}
.module-tile {position:relative;padding-bottom:42px}
.module-tile .message-badge {position:absolute;bottom:12px;font-size:12px}
.promotion-item {position:relative}
.promoted-tile {background:linear-gradient(145deg,#164e46,#073c38);border-color:#397569}
.promoted-tile:hover {background:linear-gradient(145deg,#164e46,#073c38);border-color:#397569}
.promoted-tile h2 {font-size:19px;line-height:1.4;margin:0}
.promoted-tile .promotion-label {position:absolute;bottom:8px}
.promotion-label {font-size:12px;font-weight:600;line-height:1.5;letter-spacing:.04em;color:#c5dcd5}
.promotion-illustration {display:flex;align-items:center;justify-content:center;gap:20px;width:100%;height:76px;filter:blur(3px);opacity:.55;pointer-events:none;user-select:none}
.promotion-illustration>div {display:grid;gap:9px;width:75px}
.promotion-illustration i {display:block;height:8px;border-radius:4px;background:#72bbaa}
.promotion-illustration i:nth-child(2) {width:75%}
.promotion-illustration i:nth-child(3) {width:55%}
.promoted-tile .promotion-illustration {height:44px;flex:none}
.promoted-tile .promotion-illustration>div {display:none}
.promotion-tooltip {position:absolute;z-index:10;top:calc(100% - 4px);left:0;width:100%;padding:16px;border:1px solid #397569;border-radius:12px;background:#001c28;color:#e2f2ed;font-size:14px;line-height:1.6;box-shadow:0 8px 24px #00171a66;visibility:hidden;overflow-wrap:anywhere}
.promotion-item:not([data-tooltip-dismissed]):focus-within>.promotion-tooltip {visibility:visible}
@media(hover:hover) {
  .promotion-item:not([data-tooltip-dismissed]):hover>.promotion-tooltip {visibility:visible}
}
.promotion-link:focus-visible,.promotion-contact:focus-visible {outline:3px solid #62edbd;outline-offset:5px;border-radius:4px}
.feature-presentation {max-width:620px}
.feature-presentation .promotion-illustration {justify-content:flex-start;height:100px;margin-bottom:20px}
.feature-presentation .feature-intro {font-size:20px;color:#f6fffc}
.feature-presentation ul {padding-left:22px;line-height:1.7}
.feature-presentation li {margin-bottom:12px}
.promotion-contact {display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 22px;border-radius:12px;text-decoration:none;margin-top:8px}
.finance-columns {display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:32px;align-items:start}
.finance-columns>* {min-width:0}
.finance-details {grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.finance-details>div {min-width:0}
.finance-periods {display:grid;gap:6px;margin:12px 0 0;padding:0;list-style:none;color:#bad5cf;font-size:13px;line-height:1.5;white-space:normal}
.finance-history {margin-top:0}
.finance-history h2 {margin-top:0}
.finance-document {flex-direction:column;gap:16px}
.finance-document-details {width:100%}
.finance-document-details summary {display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;cursor:pointer;list-style:none}
.finance-document-details summary::-webkit-details-marker {display:none}
.finance-document-details summary:focus-visible {outline:3px solid #62edbd;outline-offset:6px;border-radius:4px}
.finance-document-details summary:hover strong {color:#61ebbc}
.finance-document-label {min-width:0}
.finance-document-label strong {display:block;font-size:18px;line-height:1.4;margin-top:10px}
.finance-document-total {display:flex;align-items:center;gap:12px;flex:none;white-space:nowrap;font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}
.finance-document-total svg {width:18px;height:18px;flex:none}
.finance-document-details[open] .finance-document-total svg {transform:rotate(180deg)}
.finance-document-content {border-top:1px solid #237b64;margin-top:18px;padding-top:10px}
.finance-download {flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin-top:20px}
.finance-download a {display:flex;align-items:center;min-height:44px}
.contact-columns {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:32px;align-items:start}
.contact-columns>* {min-width:0}
.contact-columns h2 {margin-top:0}
.contact-single {grid-template-columns:minmax(0,1fr)}
.contact-cards {grid-template-columns:1fr;margin-top:24px}
.contact-card {padding:22px;display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.contact-card h3 {font-size:20px;line-height:1.4;margin:10px 0 0}
.contact-photo {width:80px;height:80px;border-radius:50%;object-fit:cover}
.contact-single .contact-cards {grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.contact-conversation {border:1px solid #287b68;background:#003e3766;border-radius:18px;padding:24px}
.contact-conversation .message-intro p:first-child {margin-top:0}
.contact-conversation .message-compose>.primary {width:auto;min-width:160px;margin-top:12px}
.contact-conversation .quiet {white-space:normal;max-width:100%;text-align:left}
.contact-conversation input[type=file] {font-size:13px;padding:10px;min-width:0}
@media(min-width:1200px) {
  main {max-width:1320px}
  header {padding-inline:max(24px,calc((100vw - 1320px)/2))}
}
@media(max-width:900px) {
  header {grid-template-columns:auto minmax(0,1fr);grid-template-areas:"logo actions";gap:12px}
  .place-layout>header {grid-template-areas:"logo actions" "place place"}
  .header-account {justify-self:end}
  .header-place {gap:3px}
  .finance-columns,.contact-columns {grid-template-columns:minmax(0,1fr);gap:32px}
  .contact-cards {grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
}
@media(max-width:600px) {
  header,.place-layout>header {padding:10px 18px}
  .header-account {gap:8px}
  .header-account>a {padding:8px 10px}
  .header-all-places,.account-menu summary span {display:none}
  .header-switch-place {display:inline}
  .account-menu summary {width:44px;padding:10px}
  .header-place strong {font-size:14px}
  .header-place span {font-size:12px}
  .place-layout>main {padding-top:16px}
  .place-title {font-size:25px}
  .module-tile {min-height:155px}
  .module-tiles {gap:16px}
  .finance-details {grid-template-columns:1fr}
  .finance-document-details summary {align-items:flex-start;gap:12px;flex-wrap:wrap}
  .finance-document-total {font-size:17px}
  .contact-conversation {padding:20px 16px}
  .contact-conversation .message-compose>.primary {width:100%}
}
.cancellation-form {max-width:620px;margin:28px 0}
.cancellation-form .ring-check {align-items:flex-start;line-height:1.6}
.cancellation-form .primary {justify-content:center}
