/* IFC editorial hero and shared search layout. */
.ifc-hero{height:100svh;min-height:800px;padding:155px var(--layout-gutter) 220px;gap:0;justify-content:center}
.ifc-hero-image{object-position:center 55%}
.ifc-hero-shade{background:linear-gradient(90deg,#081e36a8,#102b4155 65%,#102b412e),linear-gradient(0deg,#071c3399,transparent 65%)}
.ifc-hero-copy{width:100%;max-width:1050px;margin:0}
.ifc-hero-copy .eyebrow{display:flex;align-items:center;gap:16px;letter-spacing:.25em;font-size:10px;font-weight:500;margin-bottom:27px;color:#a9ddff}
.ifc-hero-copy .eyebrow:before{content:'';width:35px;height:1px;background:#a9ddff;flex-shrink:0}
.ifc-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(70px,6.8vw,124px);font-weight:400;letter-spacing:-.045em;line-height:1.06;margin-bottom:30px;color:#fff}
.ifc-hero h1 em{font-weight:400;letter-spacing:-.045em;color:#9ed9ff}
.ifc-hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;max-width:530px;color:#e4eff8;margin-bottom:20px}
.ifc-hero .ifc-explore{font-size:11px;letter-spacing:.07em}
.ifc-hero-projects{position:absolute;right:var(--layout-gutter);bottom:157px;display:flex;gap:24px;z-index:1}
.ifc-hero-projects>a{padding:0 0 12px;border-bottom:1px solid #ffffff44;color:#fff;font-size:10px;letter-spacing:.13em;text-transform:uppercase;transition:border-color .25s,color .25s}
.ifc-hero-projects>a span{color:#a4c9e5;font-size:9px;margin-right:7px}
.ifc-hero-projects>a:hover{color:#a9ddff;border-color:#a9ddff}
.ifc-hero .ifc-search-wrap{position:absolute;inset:auto var(--layout-gutter) 55px;width:auto;margin:0}
.ifc-image-caption{bottom:18px}
/* One row on large screens; explicit placement avoids stretched controls. */
body .search-form.ifc-search-bar{display:grid;grid-template-columns:210px minmax(0,1fr) minmax(0,1fr) minmax(100px,.7fr) 135px 165px;align-items:stretch;gap:0;padding:0;border:1px solid #d6e5f0;border-radius:6px;background:#fff;box-shadow:0 8px 28px #123e6810;color:#183e5c;backdrop-filter:none;min-width:0}
body .ifc-search-bar .transaction-tabs{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:center;gap:14px;padding:20px 14px;margin:0;border:0;border-right:1px solid #dce7ee;min-width:0;background:transparent}
body .ifc-search-bar .transaction-tabs label{margin:0;padding:0;min-width:0}
body .ifc-search-bar .transaction-tabs span{display:block;background:transparent;border-radius:0;padding:9px 0;font-size:10px;line-height:1.3;font-weight:500;color:#627e93;white-space:nowrap;box-shadow:none}
body .ifc-search-bar .transaction-tabs input:checked+span{background:transparent;color:#1b6b9f;box-shadow:0 1px #2e90cd}
body .ifc-search-bar .search-primary{display:contents}
body .ifc-search-bar .search-primary>label{grid-row:1;display:flex;flex-direction:column;justify-content:center;min-width:0;margin:0;padding:17px 22px;border:0;border-right:1px solid #dce7ee;background:transparent}
body .ifc-search-bar .search-primary>label:nth-child(1){grid-column:2}
body .ifc-search-bar .search-primary>label:nth-child(2){grid-column:3}
body .ifc-search-bar .search-primary>label:nth-child(3){grid-column:4}
body .ifc-search-bar .search-primary>label>span{display:block;margin:0 0 3px;color:#5a82a1;font-size:8px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
body .ifc-search-bar .search-primary>label>span>.icon{display:none}
body .ifc-search-bar .search-primary input,body .ifc-search-bar .ifc-select-button{height:auto;min-height:28px;margin:0;padding:3px 0;border:0;background:transparent;color:#183e5c;font-size:13px;font-weight:500;line-height:1.5;box-shadow:none;border-radius:0;width:100%}
body .ifc-search-bar .search-primary input::placeholder{color:#6f889b;opacity:1}
body .ifc-search-bar .bootstrap-select{width:100%!important;min-width:0;max-width:100%;align-self:stretch}
body .ifc-search-bar .bootstrap-select .filter-option{max-width:100%;text-overflow:ellipsis}
body .ifc-search-bar .search-bottom{grid-column:5;grid-row:1;display:flex;align-items:center;justify-content:center;padding:12px;margin:0;min-width:0}
body .ifc-search-bar .advanced-toggle{font-size:10px;color:#365e7b;gap:7px;font-weight:500;line-height:1.4;background:transparent;border:0}
body .ifc-search-bar .advanced-toggle>.icon{width:15px;height:15px;flex-shrink:0}
body .ifc-search-bar .advanced-toggle>span{display:none}
body .ifc-search-bar .search-primary>.btn{grid-column:6;grid-row:1;display:flex;align-items:center;justify-content:center;gap:12px;width:auto;height:auto;min-height:76px;padding:18px;margin:0;border-radius:0 5px 5px 0;border:0;background:#164b73;color:#fff;font-size:10px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;box-shadow:none;transform:none}
body .ifc-search-bar .search-primary>.btn .icon{width:17px;height:17px;flex-shrink:0}
body .ifc-search-bar .search-primary>.btn:hover{background:#257eaf;box-shadow:none;transform:none}
body .ifc-search-bar input:focus-visible,body .ifc-search-bar .ifc-select-button:focus-visible,body .ifc-search-bar .advanced-toggle:focus-visible{outline:2px solid #68baf0;outline-offset:4px}
/* Glass is limited to the hero; results pages keep dark, readable controls. */
body .ifc-hero .ifc-search-bar{background:#eff8ff21;border-color:#ffffff55;box-shadow:0 10px 40px #071b3425;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}
body .ifc-hero .ifc-search-bar .transaction-tabs,body .ifc-hero .ifc-search-bar .search-primary>label{border-right-color:#ffffff30}
body .ifc-hero .ifc-search-bar .transaction-tabs span,body .ifc-hero .ifc-search-bar .search-primary>label>span{color:#d5eafb}
body .ifc-hero .ifc-search-bar .transaction-tabs input:checked+span{color:#fff;box-shadow:0 1px #a9ddff}
body .ifc-hero .ifc-search-bar .search-primary input,body .ifc-hero .ifc-search-bar .ifc-select-button,body .ifc-hero .ifc-search-bar .advanced-toggle{color:#fff}
body .ifc-hero .ifc-search-bar .search-primary input::placeholder{color:#deedfa}
body .listing-search{position:relative;z-index:2;margin-top:-24px;margin-bottom:42px}
body .listing-search .search-form{box-shadow:0 15px 45px #123e6815}
/* Interior banners: blue depth, architectural lines and restrained motion. */
body .page-heading{isolation:isolate;background:linear-gradient(115deg,#0d3459,#195f98 55%,#459bd0);padding:46px var(--layout-gutter) 65px;color:#fff;overflow:hidden;min-height:270px;margin-bottom:0}
body .page-heading:before{content:'';position:absolute;z-index:-1;inset:-60% -10% -90% 45%;background:radial-gradient(ellipse,#94dcff66,transparent 62%);animation:ifc-banner-glow 12s ease-in-out infinite alternate;pointer-events:none}
body .page-heading:after{content:'';position:absolute;z-index:-1;top:-45%;right:-4%;width:52%;height:220%;border:1px solid #bde7ff40;border-radius:45% 0 0 45%;transform:rotate(-28deg);background:linear-gradient(125deg,#b1dfff15,transparent 65%);animation:ifc-banner-roof 16s ease-in-out infinite alternate;pointer-events:none}
body .page-heading h1{color:#fff;font-size:clamp(36px,4.2vw,68px);font-weight:500;line-height:1.15;max-width:1100px;text-wrap:balance}
body .page-heading .eyebrow{color:#b4e3ff;font-size:10px;letter-spacing:.19em;margin-bottom:12px}
body .page-heading>p:last-child{color:#d9edfc;font-size:14px;margin-top:16px;max-width:740px;line-height:1.8}
body .page-heading .breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:10px;width:fit-content;max-width:100%;padding:8px 14px;margin-bottom:28px;background:#ffffff12;border:1px solid #ffffff2e;border-radius:30px;font-size:11px;color:#d8eeff;line-height:1.6}
body .page-heading .breadcrumbs a{color:#fff;transition:color .25s}
body .page-heading .breadcrumbs a:hover{color:#a9ddff}
body .page-heading .breadcrumbs>span{color:#96d5fc}
.property-summary .breadcrumbs{padding:8px 13px;border-radius:24px;background:#e8f4ff;border:1px solid #cbe5f6;color:#235f8c;width:fit-content}
@keyframes ifc-banner-glow{from{transform:translate(-5%,-3%) scale(.9)}to{transform:translate(8%,6%) scale(1.15)}}
@keyframes ifc-banner-roof{from{transform:rotate(-28deg) translateX(0)}to{transform:rotate(-22deg) translateX(-5%)}}
@media(min-width:1800px){.ifc-hero{min-height:850px}}
@media(min-width:701px) and (max-height:850px){.ifc-hero{min-height:740px;padding-top:135px;padding-bottom:190px;gap:0}.ifc-hero h1{font-size:80px;margin-bottom:22px}.ifc-hero-copy .eyebrow{margin-bottom:20px}.ifc-hero-projects{bottom:150px}}
@media(max-width:1200px){
 body .search-form.ifc-search-bar{grid-template-columns:repeat(3,minmax(0,1fr)) 155px}
 body .ifc-search-bar .transaction-tabs{grid-column:1/4;grid-row:1;justify-content:flex-start;padding:12px 20px 0;border:0;gap:24px}
 body .ifc-search-bar .search-primary>label{grid-row:2;padding:12px 20px}
 body .ifc-search-bar .search-primary>label:nth-child(1){grid-column:1}
 body .ifc-search-bar .search-primary>label:nth-child(2){grid-column:2}
 body .ifc-search-bar .search-primary>label:nth-child(3){grid-column:3}
 body .ifc-search-bar .search-primary>.btn{grid-column:4;grid-row:2;min-height:65px;border-radius:0 0 5px 0}
 body .ifc-search-bar .search-bottom{grid-column:4;grid-row:1;padding:10px}
 .ifc-hero-projects{bottom:210px}.ifc-hero{padding-bottom:250px;min-height:820px}
}
@media(max-width:700px){
 .ifc-hero{height:100svh;min-height:750px;padding:115px 20px 32px;justify-content:center;gap:25px}
 .ifc-hero h1{font-size:clamp(48px,10.5vw,68px);line-height:1.1;margin-bottom:22px}
 .ifc-hero-copy .eyebrow{font-size:8px;letter-spacing:.14em;gap:10px;margin-bottom:20px}
 .ifc-hero-copy .eyebrow:before{width:22px}.ifc-hero-copy>p:not(.eyebrow){font-size:12px;max-width:360px;line-height:1.8}
 .ifc-hero h1 em:before{content:none}.ifc-hero-projects{position:relative;inset:auto;justify-content:flex-start;gap:20px;order:1}
 .ifc-hero-projects{gap:18px;flex-wrap:wrap}
 .ifc-hero-projects>a{display:inline-flex;align-items:center;min-height:40px;font-size:14px;font-weight:600;letter-spacing:.06em;padding-bottom:7px}.ifc-hero-projects>a span{font-size:10px;margin-right:6px}
 .ifc-hero .ifc-search-wrap{position:relative;inset:auto;width:100%;order:2;margin:0}
 body .search-form.ifc-search-bar{grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:6px}
 body .ifc-search-bar .transaction-tabs{grid-column:1/-1;grid-row:1;gap:23px;padding:13px 15px 0}
 body .ifc-search-bar .transaction-tabs span{font-size:11px}
 body .ifc-search-bar .search-primary>label{grid-row:2;padding:14px 15px}
 body .ifc-search-bar .search-primary>label:nth-child(1){grid-column:1}
 body .ifc-search-bar .search-primary>label:nth-child(2){grid-column:2;border-right:0;padding-left:20px;padding-right:20px;box-sizing:border-box;overflow:hidden}
 body .ifc-search-bar .search-primary>label>.bootstrap-select{width:100%!important;max-width:100%;min-width:0;margin:0}
 body .ifc-search-bar .bootstrap-select>.ifc-select-button{display:flex;align-items:center;gap:10px;min-width:0;max-width:100%;padding:5px 0;box-sizing:border-box}
 body .ifc-search-bar .bootstrap-select .ifc-select-button .filter-option{position:static;flex:1;min-width:0;width:auto;height:auto;padding:0;text-align:left;overflow:hidden}
 body .ifc-search-bar .bootstrap-select .filter-option-inner-inner{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 body .ifc-search-bar .bootstrap-select>.ifc-select-button:after{flex-shrink:0;margin:0 6px 0 0}
 body .ifc-search-bar .search-primary>label:nth-child(3){grid-column:1/-1;grid-row:3;border-right:0;border-top:1px solid #c8ddea55;padding:8px 15px}
 body .ifc-search-bar .search-primary>label>span{font-size:8px;letter-spacing:.12em}
 body .ifc-search-bar .search-primary input,body .ifc-search-bar .ifc-select-button{font-size:12px}
 body .ifc-search-bar .search-bottom{grid-column:1;grid-row:4;justify-content:flex-start;padding:12px 15px}
 body .ifc-search-bar .advanced-toggle{font-size:10px;gap:6px}
 body .ifc-search-bar .search-primary>.btn{grid-column:2;grid-row:4;width:auto;min-height:48px;padding:13px 10px;font-size:9px;border-radius:0 0 5px 0;gap:10px}
 body .listing-search{margin-top:-22px!important;margin-bottom:30px}
 body .page-heading{padding:30px 20px 54px;min-height:260px}
 body .page-heading h1{font-size:36px;line-height:1.17}
 body .page-heading .breadcrumbs{font-size:10px;padding:7px 12px;margin-bottom:22px;gap:8px}
 body .page-heading .eyebrow{font-size:8px;letter-spacing:.15em}
 body .page-heading>p:last-child{font-size:12px;margin-top:13px}
}
@media(prefers-reduced-motion:reduce){.page-heading:before,.page-heading:after{animation:none!important}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body .ifc-hero .ifc-search-bar{background:#143c5ee8}}
/* Transaction links retain native radio keyboard and form behaviour. */
body .ifc-search-bar .transaction-tabs label{position:relative;cursor:pointer}
body .ifc-search-bar .transaction-tabs input[type=radio]{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0;padding:0;pointer-events:none}
body .ifc-search-bar .transaction-tabs .transaction-nav-link{display:flex;align-items:center;justify-content:center;gap:5px;padding:11px 0;font-size:10px;line-height:1.4;border-bottom:2px solid transparent;box-shadow:none;transition:color .2s,border-color .2s;cursor:pointer}
body .ifc-search-bar .transaction-tabs .transaction-nav-link .icon{display:block;width:14px;height:14px;flex-shrink:0;opacity:.8}
body .ifc-search-bar .transaction-tabs input:checked+.transaction-nav-link{border-bottom-color:#2e90cd;box-shadow:none;color:#1b6b9f}
body .ifc-search-bar .transaction-tabs input:focus-visible+.transaction-nav-link{outline:2px solid #68baf0;outline-offset:4px;border-radius:2px}
body .ifc-search-bar .transaction-tabs label:hover .transaction-nav-link{color:#278dc9}
body .ifc-hero .ifc-search-bar .transaction-tabs input:checked+.transaction-nav-link{border-bottom-color:#a9ddff;color:#fff;box-shadow:none}
body .ifc-hero .ifc-search-bar .transaction-tabs label:hover .transaction-nav-link{color:#a9ddff}
@media(min-width:1201px){body .search-form.ifc-search-bar{grid-template-columns:260px minmax(0,1fr) minmax(0,1fr) minmax(100px,.7fr) 135px 165px}body .ifc-search-bar .transaction-tabs{gap:12px}}
@media(max-width:700px){body .ifc-search-bar .transaction-tabs{gap:20px}body .ifc-search-bar .transaction-tabs .transaction-nav-link{font-size:10px;gap:5px}}
/* Independent selection buttons, stacked at the lower left. */
body .selection-rail{position:fixed;top:auto;right:auto;bottom:calc(24px + env(safe-area-inset-bottom,0px));left:calc(24px + env(safe-area-inset-left,0px));display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;z-index:80}
body .selection-rail .rail-link{width:50px;height:50px;border-radius:50%;background:#fff;color:#246b9f;border:1px solid #d7e9f7;box-shadow:0 5px 20px #103c6326;transition:background .2s,color .2s,transform .2s}
body .selection-rail .rail-link[data-rail=compare]{background:#195984;color:#fff;border-color:#3778a5}
body .selection-rail .rail-link:hover{transform:translateY(-3px);background:#e8f5ff;color:#195984}
body .selection-rail .rail-link .icon{width:23px;height:23px}
body.cookie-visible .selection-rail{bottom:calc(24px + env(safe-area-inset-bottom,0px))}
@media(max-width:700px){body .selection-rail{left:calc(15px + env(safe-area-inset-left,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));gap:12px}body .selection-rail .rail-link{width:46px;height:46px}body.cookie-visible .selection-rail{bottom:calc(18px + env(safe-area-inset-bottom,0px))}}
/* Editorial invitation before the footer. */
body .cta.ifc-closing{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:clamp(35px,7vw,130px);width:100%;margin:0;padding:75px var(--layout-gutter);background:#edf5fb;color:#173e5d;border-radius:0;overflow:hidden}
body .cta.ifc-closing:after{display:none}
.ifc-closing-picture{position:relative;height:450px;max-width:560px;isolation:isolate}
.ifc-closing-picture:before{content:'';position:absolute;inset:18px -18px -18px 18px;border:1px solid #b9d9ef;border-radius:5px;z-index:-1}
.ifc-closing-picture>img{height:100%;width:100%;object-fit:cover;object-position:center 43%;border-radius:5px;transition:transform .7s}
.ifc-closing-signature{position:absolute;left:22px;right:22px;bottom:22px;display:flex;gap:12px;align-items:center;background:#0d3558d9;backdrop-filter:blur(12px);color:#fff;border:1px solid #ffffff33;padding:15px 18px;font-size:11px;letter-spacing:.03em;border-radius:4px}
.ifc-closing-signature .icon{width:21px;height:21px;color:#a4daff}
.ifc-closing-content{max-width:820px}
body .ifc-closing .eyebrow{color:#5585a8;font-size:10px;letter-spacing:.19em;margin:0 0 23px}
body .ifc-closing h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(38px,4vw,72px);line-height:1.14;letter-spacing:-.035em;color:#183e5e;max-width:none;margin:0}
body .ifc-closing h2 em{color:#428fc0}
body .ifc-closing .ifc-closing-intro{font-size:14px;line-height:1.9;color:#688297;margin:24px 0 29px}
.ifc-closing-links{border-top:1px solid #cbdfea}
.ifc-closing-links>a{display:flex;align-items:center;gap:17px;padding:21px 0;border-bottom:1px solid #cbdfea;color:#1d4869;transition:padding .25s,color .25s}
.ifc-closing-link-icon{width:42px;height:42px;flex-shrink:0;display:grid;place-items:center;background:#dfeef8;border-radius:50%;color:#3e80ad}
.ifc-closing-link-icon .icon{width:21px;height:21px}
.ifc-closing-links strong{display:block;font-size:15px;font-weight:600;line-height:1.5}
.ifc-closing-links small{display:block;margin-top:4px;font-size:11px;color:#718da1}
.ifc-closing-arrow{margin-left:auto;display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border:1px solid #b9d6e9;border-radius:50%;transition:background .25s,color .25s}
.ifc-closing-arrow .icon{width:17px;height:17px}
.ifc-closing-links>a:hover{padding-left:7px;color:#2386c1}.ifc-closing-links>a:hover .ifc-closing-arrow{background:#256c9d;color:#fff}
@media(max-width:1000px){body .cta.ifc-closing{gap:40px;padding-block:55px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.ifc-closing-picture{height:390px}body .ifc-closing h2{font-size:43px}.ifc-closing-links strong{font-size:14px}}
@media(max-width:700px){body .cta.ifc-closing{grid-template-columns:1fr;gap:36px;padding:42px 20px 45px}.ifc-closing-picture{height:260px;max-width:none;margin-right:12px}.ifc-closing-picture:before{inset:12px -12px -12px 12px}.ifc-closing-picture>img{object-position:center 45%}.ifc-closing-signature{left:15px;right:15px;bottom:15px;padding:12px 14px;font-size:10px}body .ifc-closing .eyebrow{font-size:8px;margin-bottom:18px;letter-spacing:.16em}body .ifc-closing h2{font-size:clamp(33px,8.6vw,46px);line-height:1.16;max-width:none}body .ifc-closing .ifc-closing-intro{font-size:13px;margin:20px 0 23px}.ifc-closing-links>a{gap:12px;padding:18px 0}.ifc-closing-link-icon{width:35px;height:35px}.ifc-closing-link-icon .icon{width:18px;height:18px}.ifc-closing-links strong{font-size:13px}.ifc-closing-links small{font-size:10px}.ifc-closing-arrow{width:31px;height:31px}}
/* Full bleed footer, with slow architectural light and interactive links. */
body .site-shell>footer.footer.ifc-footer{position:relative;isolation:isolate;display:block;width:100%;max-width:none;margin:0;border-radius:0;padding:60px var(--layout-gutter) 25px;background:linear-gradient(115deg,#092842,#124c77 65%,#17628e);overflow:hidden;color:#fff}
.ifc-footer:before{content:'';position:absolute;inset:-50% -25% -50% 30%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse,#55bdff35,transparent 60%);animation:ifc-footer-light 15s ease-in-out infinite alternate}
.ifc-footer:after{content:'IFC';position:absolute;z-index:-1;right:1%;bottom:-.23em;font-family:Georgia,serif;font-size:clamp(200px,25vw,440px);line-height:1;letter-spacing:-.05em;color:#fff;opacity:.025;pointer-events:none}
.ifc-footer-orbit{position:absolute;z-index:-1;width:1100px;height:600px;top:-240px;right:-400px;border:1px solid #b0e1ff30;border-radius:50%;transform:rotate(-24deg);animation:ifc-footer-orbit 20s ease-in-out infinite alternate;pointer-events:none}
.ifc-footer-orbit:after{content:'';position:absolute;inset:35px -70px -35px 70px;border:1px solid #b0e1ff20;border-radius:50%}
body .ifc-footer-head{display:flex;align-items:center;gap:8%;padding-bottom:42px;margin-bottom:40px;border-bottom:1px solid #b0dcff30}
body .ifc-footer .ifc-footer-head .brand-logo{width:135px;height:89px;border-radius:4px;background:transparent;object-fit:contain;transition:transform .4s}
.ifc-footer .brand:hover .brand-logo{transform:translateY(-4px)}
body .ifc-footer-head>p{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4vw,68px);line-height:1.08;font-weight:400;letter-spacing:-.035em;color:#fff;margin:0}
.ifc-footer-head>p em{color:#9edaff}
body .ifc-footer-head>a.ifc-back-top{display:grid;place-items:center;width:56px;height:56px;flex-shrink:0;margin:0 0 0 auto;border:1px solid #b0dcff66;border-radius:50%;background:#ffffff08;color:#e8f6ff;transition:background .25s,transform .25s}
.ifc-back-top .icon{width:22px;height:22px;transform:rotate(-90deg)}
body .ifc-footer-head>a.ifc-back-top:hover{background:#3f9ed3;transform:translateY(-5px);color:#fff}
.ifc-footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.1fr;gap:clamp(24px,4vw,75px);padding-bottom:44px}
body .ifc-footer .ifc-footer-kicker{display:block;color:#a6d8fa;font-size:9px;letter-spacing:.18em;font-weight:650}
body .ifc-footer .ifc-footer-about>p{color:#d3e6f5;font-size:13px;line-height:1.9;margin:17px 0 20px;max-width:270px}
.ifc-footer-socials{display:flex;gap:10px}
.ifc-footer-socials>a{display:grid;place-items:center;width:38px;height:38px;border:1px solid #9fd1f244;border-radius:50%;color:#c4e6ff;background:#ffffff08;transition:background .25s,transform .25s}
.ifc-footer-socials .icon{width:18px;height:18px}
.ifc-footer-socials>a:hover{background:#2b89bf;transform:translateY(-4px);color:#fff}
body .ifc-footer h3{font-size:11px;letter-spacing:.06em;color:#fff;font-weight:650;margin:0 0 20px}
.ifc-footer-nav>a{display:block;width:fit-content;position:relative;color:#c9e1f3;font-size:13px;margin:13px 0;padding-left:0;transition:color .25s,transform .25s}
.ifc-footer-nav>a:after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:1px;background:#a1dcff;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.ifc-footer-nav>a:hover{color:#fff;transform:translateX(5px)}.ifc-footer-nav>a:hover:after{transform:scaleX(1)}
.ifc-footer-contact>a{display:flex;align-items:center;gap:12px;margin-bottom:17px;color:#d4eaff;min-width:0}
.ifc-footer-contact>a>span:first-child{display:grid;place-items:center;width:35px;height:35px;flex-shrink:0;border:1px solid #9fd1f233;border-radius:9px;background:#ffffff08;transition:background .25s}
.ifc-footer-contact>a>span:nth-child(2){min-width:0}
.ifc-footer-contact .icon{width:17px;height:17px}
.ifc-footer-contact small{display:block;font-size:9px;letter-spacing:.04em;color:#9dc6e3;margin-bottom:3px}
.ifc-footer-contact strong{font-size:13px;font-weight:500;overflow-wrap:anywhere}
.ifc-footer-contact>a:hover{color:#fff}.ifc-footer-contact>a:hover>span:first-child{background:#277db1}
.ifc-footer-contact>a.ifc-footer-facebook{font-size:10px;gap:9px;color:#a7d9fa;margin-top:22px}
.ifc-footer-facebook .icon{width:14px;height:14px;transform:rotate(-35deg)}
body .ifc-footer .footer-bottom{border-top:1px solid #b0dcff30;margin:0;padding-top:23px;color:#9fc4dd;font-size:10px;gap:20px}
body .ifc-footer .footer-bottom a,body .ifc-footer .cookie-settings{color:#b8dbf3}
body .ifc-footer .footer-bottom a:hover,body .ifc-footer .cookie-settings:hover{color:#fff}
@keyframes ifc-footer-light{from{transform:translate(-10%,-5%)}to{transform:translate(12%,9%)}}
@keyframes ifc-footer-orbit{from{transform:rotate(-24deg) translateY(0)}to{transform:rotate(-16deg) translateY(35px)}}
@media(max-width:1000px){.ifc-footer-grid{grid-template-columns:1fr 1fr;gap:35px 50px}.ifc-footer-head{gap:45px}.ifc-footer-orbit{right:-650px}}
@media(max-width:700px){body .site-shell>footer.footer.ifc-footer{padding:38px 20px 25px}body .ifc-footer-head{gap:23px;align-items:center;padding-bottom:28px;margin-bottom:30px;flex-wrap:wrap}body .ifc-footer .ifc-footer-head .brand-logo{width:90px;height:60px}body .ifc-footer-head>p{font-size:34px}body .ifc-footer-head>a.ifc-back-top{width:39px;height:39px}.ifc-back-top .icon{width:18px;height:18px}.ifc-footer-grid{grid-template-columns:1fr 1fr;gap:29px 22px;padding-bottom:30px}.ifc-footer-about{grid-column:1/-1}body .ifc-footer .ifc-footer-about>p{font-size:12px;max-width:none;margin-block:12px 16px}.ifc-footer-contact{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:14px}.ifc-footer-contact h3{grid-column:1/-1;margin-bottom:2px}body .ifc-footer h3{font-size:10px}.ifc-footer-nav>a{font-size:12px;margin:12px 0}.ifc-footer-contact>a{gap:9px;margin:0}.ifc-footer-contact strong{font-size:11px}.ifc-footer-contact small{font-size:8px}.ifc-footer-contact>a>span:first-child{width:30px;height:30px}.ifc-footer-contact>a.ifc-footer-facebook{grid-column:1/-1;margin:0}.ifc-footer .footer-bottom{display:flex;flex-direction:column;gap:14px!important}body .ifc-footer .footer-bottom{font-size:9px;padding-top:20px}.ifc-footer .footer-bottom>div{margin:0;gap:12px;flex-wrap:wrap;line-height:1.7}.ifc-footer-orbit{width:800px;height:450px;right:-550px;top:-160px}}
@media(max-width:380px){body .ifc-footer-head>p{font-size:29px}.ifc-footer-head{gap:15px}.ifc-footer-contact{grid-template-columns:1fr}.ifc-footer-contact h3,.ifc-footer-contact>a.ifc-footer-facebook{grid-column:1}}
@media(prefers-reduced-motion:reduce){.ifc-footer:before,.ifc-footer-orbit{animation:none!important}}
/* Edge-to-edge interior banners, aligned directly below the fixed menu. */
body.inner-page .site-shell{padding-top:var(--header-height)}
body .site-shell>main>.page-heading{position:relative;width:100%;max-width:none;margin:0;border-radius:0;min-height:320px;padding:48px var(--layout-gutter) 66px;background:linear-gradient(110deg,#0a3055,#185a94 55%,#339ad5);isolation:isolate;overflow:hidden}
body .site-shell>main>.page-heading:before{animation:ifc-banner-glow 8s ease-in-out infinite alternate}
body .site-shell>main>.page-heading:after{animation:ifc-banner-roof 12s ease-in-out infinite alternate}
.ifc-banner-art{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.ifc-banner-art>span{position:absolute;right:-3%;top:-25%;width:43%;height:150%;border:1px solid #c3eaff50;border-radius:30% 0 0 30%;background:linear-gradient(120deg,#9bddff0c,transparent 60%);transform:rotate(-32deg);animation:ifc-banner-planes 11s ease-in-out infinite alternate}
.ifc-banner-art>span:nth-child(2){right:7%;border-color:#c3eaff26;animation-delay:-4s}
.ifc-banner-art>span:nth-child(3){right:17%;border-color:#c3eaff18;animation-delay:-7s}
.ifc-banner-art>i{position:absolute;right:17%;top:22%;height:8px;width:8px;background:#c9eeff;border-radius:50%;box-shadow:0 0 25px 8px #8ed6ff44;animation:ifc-banner-point 9s ease-in-out infinite alternate}
.page-heading.ifc-shown>.breadcrumbs{animation:ifc-banner-text .65s both}
.page-heading.ifc-shown>.eyebrow{animation:ifc-banner-text .7s .08s both}
.page-heading.ifc-shown>h1{animation:ifc-banner-text .85s .16s both}
.page-heading.ifc-shown>p:last-child{animation:ifc-banner-text .85s .26s both}
@keyframes ifc-banner-planes{from{transform:rotate(-32deg) translate(0,-3%)}to{transform:rotate(-23deg) translate(-5%,5%)}}
@keyframes ifc-banner-point{from{transform:translate(0,0);opacity:.3}to{transform:translate(-65px,90px);opacity:.9}}
@keyframes ifc-banner-text{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:700px){body .site-shell>main>.page-heading{min-height:275px;padding:30px 20px 56px}.ifc-banner-art>span{width:80%;right:-35%;border-color:#c3eaff33}.ifc-banner-art>span:nth-child(2){right:-15%}.ifc-banner-art>span:nth-child(3){right:5%}.ifc-banner-art>i{width:6px;height:6px;right:12%}}
@media(prefers-reduced-motion:reduce){.ifc-banner-art>span,.ifc-banner-art>i,.page-heading.ifc-shown>.breadcrumbs,.page-heading.ifc-shown>.eyebrow,.page-heading.ifc-shown>h1,.page-heading.ifc-shown>p:last-child{animation:none!important}}
.catalog-navigation{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 30px;padding:0 0 23px;border-bottom:1px solid #d8e7f1}
.catalog-navigation>a{display:inline-flex;align-items:center;min-height:38px;padding:8px 15px;border:1px solid #d3e4f0;border-radius:5px;background:#f0f7fc;color:#3b6584;font-size:12px;line-height:1.5;transition:background .2s,color .2s,border-color .2s}
.catalog-navigation>a:hover,.catalog-navigation>a[aria-current=page]{background:#1d6495;color:#fff;border-color:#1d6495}
@media(max-width:700px){.catalog-navigation{flex-wrap:nowrap;overflow-x:auto;gap:8px;padding-bottom:14px;margin-bottom:23px;scrollbar-width:thin;scrollbar-color:#80bce4 transparent}.catalog-navigation>a{flex-shrink:0;white-space:nowrap;font-size:11px;min-height:36px;padding:7px 12px}}
