.ip{max-width:1280px;margin:auto;padding:65px 40px 0;color:var(--ink)}.ip *{min-width:0}.ip h1,.ip h2,.ip h3{text-wrap:balance}.ip h1{font-size:clamp(38px,4.8vw,68px);line-height:1.08}.ip h2{font-size:clamp(27px,3vw,40px);margin-bottom:20px}.ip p{max-width:64ch}.ip-intro{max-width:920px;margin-bottom:50px}.ip-intro h1{margin-bottom:25px}.ip-intro>p{font-size:19px}.ip-photo{aspect-ratio:4/3;overflow:hidden;background:var(--panel,#e5ebec)}.ip-photo img{display:block;width:100%;height:100%;object-fit:cover}.ip-block{padding:28px 0;align-self:center}.ip-block ul{padding-left:22px;margin:24px 0;line-height:1.9}.ip-action{display:inline-block;padding:13px 20px;background:var(--accent,var(--action,#006cab));color:var(--onaccent,#fff);text-decoration:none;font-size:15px;line-height:1.4;border-radius:var(--radius,0);margin-top:12px}.ip-action:hover{filter:brightness(.9)}.ip a:focus-visible,.ip button:focus-visible{outline:3px solid currentColor;outline-offset:4px}.ip-close{display:flex;align-items:center;justify-content:space-between;gap:45px;margin-top:70px;padding:42px;background:var(--panel,#f1f4f4)}.ip-close>div{max-width:730px}.ip-close .ip-action{flex-shrink:0}.ip-close h2{font-size:34px}.ip-more{padding:45px 0}.ip-more h2{font-size:27px}.ip-related{display:flex;flex-wrap:wrap;gap:16px 30px}.ip-related a{text-underline-offset:5px}.ip-lead-split{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center}.ip-open-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.ip-open-grid>.ip-photo{grid-column:span 3;aspect-ratio:2.6}.ip-cinema{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.ip-cinema>.ip-photo{grid-column:1/-1;aspect-ratio:2.3}.ip-cinema>.ip-block{max-width:650px}.ip-cinema>.ip-block:nth-child(2){grid-column:1/-1;margin-left:12%;padding:20px 0 45px}.ip-cinema>.ip-photo:last-child{width:88%;margin-left:auto}.ip-2{max-width:1440px;padding-left:45px;padding-right:45px}.ip-bold-title{background:#000;color:white;padding:45px;margin-bottom:40px}.ip-bold-title .ip-intro{margin:0}.ip-rulebook{display:grid;grid-template-columns:1fr 1fr;gap:0 45px}.ip-rulebook>.ip-photo:first-child{grid-column:1/-1;aspect-ratio:2.2;margin-bottom:35px}.ip-rulebook>.ip-block{border-top:3px solid #000;align-self:start;padding:30px 0}.ip-rulebook>.ip-photo:not(:first-child){margin:25px 0}.ip-compact{max-width:980px;display:grid;grid-template-columns:1fr 1fr;gap:30px 40px}.ip-compact>.ip-block{padding:18px 0}.ip-compact>.ip-photo{aspect-ratio:1.1}.ip-questions{grid-column:1/-1}.ip-questions details{border-top:1px solid var(--line);padding:20px 0}.ip-questions summary{cursor:pointer;font-size:23px;padding:8px 0}.ip-questions p{margin:20px 0}.ip-editorial{display:grid;grid-template-columns:1fr 1fr;gap:35px 75px;align-items:start}.ip-editorial>.ip-photo{aspect-ratio:1.15}.ip-editorial>.ip-block:nth-child(2){margin-top:70px}.ip-editorial>.ip-block:nth-child(3){padding-top:60px}.ip-editorial>.ip-photo:last-child{margin-top:80px}.ip-5{padding-left:55px;padding-right:55px}.ip-welcome{display:grid;grid-template-columns:1fr 1fr;gap:30px}.ip-welcome>.ip-block{padding:32px;background:var(--panel);border-radius:6px;height:100%}.ip-welcome>.ip-photo{border-radius:6px}.ip-welcome>.ip-block:nth-child(2){background:transparent}.ip-traditional{display:grid;grid-template-columns:1fr 1fr;gap:35px;border:1px solid var(--line);padding:35px}.ip-traditional>.ip-photo:first-child{grid-column:1/-1;aspect-ratio:2.2}.ip-traditional>.ip-block:nth-child(2){grid-column:1/-1;text-align:center;max-width:760px;justify-self:center}.ip-traditional>.ip-block{padding:25px}.ip-7>.ip-intro,.ip-14>.ip-intro{text-align:center;margin-left:auto;margin-right:auto}.ip-7>.ip-intro p,.ip-14>.ip-intro p{margin-left:auto;margin-right:auto}.ip-guide-layout{display:grid;grid-template-columns:320px 1fr;gap:80px}.ip-guide-layout>aside{position:sticky;top:35px;align-self:start}.ip-guide-layout h1{font-size:40px}.ip-guide-layout .ip-intro p{font-size:17px}.ip-guide-layout nav{display:flex;flex-direction:column;gap:18px;border-top:1px solid var(--line);padding-top:25px}.ip-guide-content>.ip-block{border-bottom:1px solid var(--line);padding:40px 0}.ip-guide-content>.ip-photo{margin:0 0 30px}.ip-green-story{display:grid;grid-template-columns:1fr 1fr}.ip-green-story>.ip-block{padding:45px;height:100%;background:var(--panel)}.ip-green-story>.ip-block:nth-child(3),.ip-green-story>.ip-block:nth-child(5){background:var(--deep);color:white}.ip-green-story>.ip-photo{aspect-ratio:auto;min-height:390px}.ip-capability{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.ip-capability>.ip-photo:first-child{grid-column:span 2;aspect-ratio:1.8}.ip-capability>.ip-block{padding:30px;background:var(--panel);border:1px solid var(--line);height:100%}.ip-capability>.ip-block:nth-child(3){grid-column:span 2}.ip-capability>.ip-photo{min-height:280px;aspect-ratio:auto}.ip-horizontal{display:grid;grid-template-columns:1fr 1fr;gap:0 50px}.ip-horizontal>.ip-block{display:grid;grid-template-columns:.9fr 1.3fr;gap:25px;grid-column:1/-1;border-top:2px solid var(--ink);padding:35px 0}.ip-horizontal>.ip-block h2{font-size:30px}.ip-horizontal>.ip-block ul,.ip-horizontal>.ip-block .ip-action{grid-column:2;justify-self:start}.ip-horizontal>.ip-photo{aspect-ratio:1.8;margin:25px 0}.ip-reference{display:grid;grid-template-columns:260px 1fr;gap:20px 40px}.ip-reference>.ip-photo:first-child{grid-row:span 2;aspect-ratio:1;align-self:start}.ip-reference>.ip-block{border-top:1px solid var(--line);padding:25px 0}.ip-reference>.ip-block:nth-child(n+4){grid-column:1/-1;display:grid;grid-template-columns:1fr 2fr;gap:30px}.ip-reference>.ip-block:nth-child(n+4) .ip-action{grid-column:2;justify-self:start}.ip-reference>.ip-photo:last-child{grid-column:1/-1;aspect-ratio:2.5}.ip-architecture{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.ip-architecture>.ip-photo:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:1.1}.ip-architecture>.ip-block{padding:25px 0;border-top:1px solid var(--line)}.ip-architecture>.ip-block h2{font-size:29px}.ip-architecture>.ip-photo:not(:first-child){grid-column:span 2;aspect-ratio:1.8}.ip-classic{display:grid;grid-template-columns:1fr 1fr;gap:45px 60px}.ip-classic>.ip-block:nth-child(even){padding:35px;background:var(--panel)}.ip-classic>.ip-photo:last-child{grid-column:1/-1;aspect-ratio:2.4}.ip-classic>.ip-block{padding:25px 0}.ip-planning{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.ip-planning>.ip-photo:first-child{grid-column:1/-1;aspect-ratio:2.6;border-radius:8px}.ip-planning>.ip-block{padding:30px;background:var(--panel);border-radius:8px;height:100%}.ip-planning>.ip-photo:not(:first-child){border-radius:8px}.ip-15 .ip-close{border-radius:8px}.ip-service-area .ip-photo img{object-fit:contain}.ip-3.ip-service-area .ip-rulebook,.ip-11.ip-service-area .ip-horizontal{display:block}.ip-3.ip-service-area .ip-block,.ip-11.ip-service-area .ip-block{display:grid;grid-template-columns:1fr 1.7fr;gap:30px}.ip-3.ip-service-area .ip-block .ip-action,.ip-11.ip-service-area .ip-block .ip-action{grid-column:2;justify-self:start}.ip-12.ip-service-area .ip-reference{display:block}.ip-12.ip-service-area .ip-block{display:grid;grid-template-columns:1fr 2fr;gap:25px}.ip-12.ip-service-area .ip-action{grid-column:2;justify-self:start}
/* Galleries use separate photographic rhythms, keeping captions absent. */
.ip-gallery-note{font-size:13px;color:var(--muted,#52636c);margin:0 0 35px}.ip-gallery-nav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:35px}.ip-gallery-nav button{font:inherit;font-size:14px;border:1px solid var(--line);padding:10px 16px;background:transparent;color:inherit;cursor:pointer;border-radius:var(--radius,0)}.ip-gallery-nav button[aria-pressed=true]{background:var(--accent,var(--action,#006cab));color:var(--onaccent,#fff)}.ip-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.ip-gallery-photo{appearance:none;display:block;border:0;padding:0;margin:0;background:var(--panel,#e5ebec);cursor:pointer;width:100%;aspect-ratio:4/3;overflow:hidden}.ip-gallery-photo img{width:100%;height:100%;object-fit:cover;display:block}.ip-gallery-photo:hover img{filter:brightness(.94)}.ip-gallery-photo[hidden]{display:none!important}.ip-gallery-group{margin:50px 0 60px}.ip-gallery-group>h2{margin-bottom:28px}.ip-2 .ip-gallery{grid-template-columns:1fr 1fr;gap:55px}.ip-2 .ip-gallery-photo:nth-child(3n+1){grid-column:1/-1;aspect-ratio:2.1}.ip-3.ip-projects>.ip-intro{border-bottom:4px solid black;padding-bottom:35px}.ip-3 .ip-gallery{gap:10px;grid-template-columns:repeat(4,1fr)}.ip-4 .ip-gallery{grid-template-columns:repeat(4,1fr);gap:16px}.ip-4 .ip-gallery-photo{aspect-ratio:1}.ip-5 .ip-gallery{grid-template-columns:1.4fr 1fr;gap:45px}.ip-5 .ip-gallery-photo:nth-child(4n+3){grid-column:1/-1;aspect-ratio:2.2}.ip-6 .ip-gallery{grid-template-columns:1fr 1fr;gap:25px}.ip-6 .ip-gallery-photo{border-radius:6px}.ip-7 .ip-gallery-group{padding:30px;border:1px solid var(--line)}.ip-7 .ip-gallery{grid-template-columns:1fr 1fr;gap:30px}.ip-8 .ip-gallery-nav{position:sticky;top:0;background:var(--bg);padding:15px 0;z-index:2;border-bottom:1px solid var(--line)}.ip-8 .ip-gallery{grid-template-columns:1fr 1fr;gap:45px}.ip-9 .ip-gallery-group{padding:35px;background:var(--panel)}.ip-9 .ip-gallery-group:nth-of-type(even){background:var(--deep);color:white}.ip-9 .ip-gallery{grid-template-columns:1fr 1fr}.ip-9 .ip-gallery-photo:first-child{grid-column:1/-1;aspect-ratio:2}.ip-10 .ip-gallery{grid-template-columns:repeat(4,1fr);gap:12px}.ip-10 .ip-gallery-photo{border:1px solid var(--line)}.ip-11 .ip-gallery{grid-template-columns:1.6fr 1fr;gap:35px}.ip-11 .ip-gallery-photo:nth-child(4n+3){aspect-ratio:1.15}.ip-12 .ip-gallery{grid-template-columns:repeat(4,1fr);gap:15px}.ip-13 .ip-gallery{grid-template-columns:repeat(3,1fr);gap:22px}.ip-13 .ip-gallery-photo:nth-child(5n+1){grid-column:span 2;grid-row:span 2;aspect-ratio:1.2}.ip-14 .ip-gallery-group{padding-top:35px;border-top:1px solid var(--line)}.ip-14 .ip-gallery{grid-template-columns:1fr 1fr;gap:40px}.ip-14 .ip-gallery-photo:first-child{grid-column:1/-1;aspect-ratio:2.2}.ip-15 .ip-gallery-photo{border-radius:8px}.ip-15 .ip-gallery-group{padding:30px;background:var(--panel);border-radius:8px}
/* Contact page structures; all forms stay local demonstrations. */
.ip-form-panel{padding:35px;background:var(--panel,#f1f4f4);border:1px solid var(--line,#ccd)}.ip form{display:block;max-width:none;width:100%;padding:0;border:0;background:transparent}.ip fieldset{border:0;padding:0;margin:0 0 30px;display:grid;gap:20px}.ip legend{font-family:var(--heading,Arial);font-size:23px;font-weight:var(--weight,500);margin-bottom:22px}.ip label{display:grid;gap:8px;font-size:15px;color:inherit}.ip input,.ip select,.ip textarea{font:inherit;display:block;width:100%;padding:12px;border:1px solid var(--line,#b9c5cb);background:var(--bg,#fff);color:inherit;border-radius:var(--radius,0);box-sizing:border-box}.ip textarea{resize:vertical;min-height:130px}.ip .formrow,.ip .form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ip-demo-note{font-size:13px;line-height:1.6;border-bottom:1px solid var(--line,#ccd);padding-bottom:20px;margin-bottom:28px}.ip form .fine{font-size:13px;margin-bottom:20px}.ip form button{cursor:pointer}.ip-contact-split{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}.ip-contact-split>div:first-child{display:grid;gap:25px}.ip-contact-wide{max-width:1000px}.ip-contact-notes{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding:20px 0}.ip-2 .ip-contact-wide{max-width:none}.ip-2 .ip-form-panel{padding:50px;border:0}.ip-5 .ip-contact-wide,.ip-14 .ip-contact-wide{margin:auto;max-width:850px}.ip-5.ip-contact>.ip-intro{text-align:center;margin-left:auto;margin-right:auto}.ip-contact-guided{display:grid;grid-template-columns:1fr 2fr;gap:25px 50px}.ip-contact-guided>.ip-form-panel{grid-column:2;grid-row:1/span 2}.ip-contact-guided>.ip-block{align-self:start;border-top:1px solid var(--line)}.ip-4 .ip-contact-guided{max-width:900px;grid-template-columns:1fr}.ip-4 .ip-contact-guided>.ip-form-panel{grid-column:auto;grid-row:auto}.ip-6 .ip-form-panel,.ip-15 .ip-form-panel{border-radius:8px}.ip-15 .ip-contact-guided>.ip-block{background:var(--panel);padding:25px;border:0;border-radius:8px}.ip-contact-brief{display:grid;grid-template-columns:1fr 1.4fr;gap:35px 65px}.ip-contact-brief .ip-intro{grid-column:1;grid-row:1}.ip-contact-brief .ip-form-panel{grid-column:2;grid-row:1/span 3;background:transparent;border:0;border-left:1px solid var(--line);padding:0 0 0 40px}.ip-contact-brief>.ip-block{grid-column:1;padding:0}.ip-contact-frame{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.ip-contact-frame .ip-form-panel{border:2px solid var(--ink);background:transparent}.ip-3 .ip-form-panel{border:3px solid #000;background:transparent}.ip-7 .ip-form-panel{border:1px solid var(--line);padding:40px;background:transparent}.ip-9 .ip-contact-split{background:var(--deep);color:white;padding:40px;gap:40px}.ip-9 .ip-form-panel{background:white;color:var(--ink)}.ip-10 .ip-form-panel{background:var(--panel);border-top:4px solid var(--accent)}.ip-11 .ip-contact-wide{max-width:none}.ip-11 .ip-form-panel{border:0;border-top:3px solid #111;background:transparent;padding:40px 0}.ip-11 .ip-contact-notes{border-top:2px solid #111}.ip-12 .ip-form-panel{background:var(--panel)}.ip-14 .ip-form-panel{padding:40px}.ip-14.ip-contact>.ip-intro{text-align:center;margin:auto auto 50px}
@media(max-width:1000px){.ip{padding:45px 25px 0}.ip h1{font-size:48px}.ip-guide-layout{grid-template-columns:240px 1fr;gap:35px}.ip-guide-layout h1{font-size:35px}.ip-guide-content h2{font-size:30px}.ip-editorial{gap:30px}.ip-architecture{grid-template-columns:1fr 1fr}.ip-architecture>.ip-photo:first-child{grid-row:auto;aspect-ratio:1.7}.ip-architecture>.ip-photo:not(:first-child){grid-column:auto}.ip-capability{grid-template-columns:1fr 1fr}.ip-capability>.ip-photo:first-child,.ip-capability>.ip-block:nth-child(3){grid-column:auto}.ip-contact-split,.ip-contact-frame{gap:30px}.ip-contact-guided{grid-template-columns:1fr 1.5fr;gap:30px}.ip-gallery,.ip-3 .ip-gallery,.ip-4 .ip-gallery,.ip-10 .ip-gallery,.ip-12 .ip-gallery{grid-template-columns:repeat(3,1fr)}.ip-13 .ip-gallery{grid-template-columns:repeat(3,1fr)}.ip-close{padding:30px;gap:25px}.ip-green-story>.ip-block{padding:28px}.ip-traditional{padding:25px;gap:20px}.ip-classic{gap:30px}.ip-contact-brief{gap:30px}}
@media(max-width:650px){.ip{padding:35px 20px 0}.ip h1{font-size:36px;line-height:1.12}.ip h2{font-size:28px}.ip-intro{margin-bottom:32px}.ip-intro>p{font-size:17px}.ip-photo{aspect-ratio:4/3!important;min-height:0!important;margin:0!important;width:100%!important}.ip-lead-split,.ip-open-grid,.ip-cinema,.ip-rulebook,.ip-compact,.ip-editorial,.ip-welcome,.ip-traditional,.ip-green-story,.ip-capability,.ip-horizontal,.ip-reference,.ip-architecture,.ip-classic,.ip-planning{display:flex;flex-direction:column;gap:22px}.ip .ip-block{display:block!important;width:100%;margin:0!important;padding:22px 0;align-self:stretch}.ip .ip-block h2{font-size:28px}.ip-cinema>.ip-block:nth-child(2){margin-left:0}.ip-bold-title{padding:25px;margin:0 -20px 30px}.ip-guide-layout{display:block}.ip-guide-layout>aside{position:static;margin-bottom:35px}.ip-guide-layout nav{flex-direction:row;flex-wrap:wrap;gap:15px;font-size:14px}.ip-guide-content>.ip-photo{margin-bottom:20px!important}.ip-green-story>.ip-block,.ip-welcome>.ip-block,.ip-capability>.ip-block,.ip-classic>.ip-block:nth-child(even),.ip-planning>.ip-block{padding:25px}.ip-green-story>.ip-photo{min-height:0}.ip-traditional{padding:20px}.ip-traditional>.ip-block:nth-child(2){text-align:left}.ip-reference>.ip-block{border-top:1px solid var(--line)}.ip-gallery,.ip-2 .ip-gallery,.ip-3 .ip-gallery,.ip-4 .ip-gallery,.ip-5 .ip-gallery,.ip-6 .ip-gallery,.ip-7 .ip-gallery,.ip-8 .ip-gallery,.ip-9 .ip-gallery,.ip-10 .ip-gallery,.ip-11 .ip-gallery,.ip-12 .ip-gallery,.ip-13 .ip-gallery,.ip-14 .ip-gallery{grid-template-columns:1fr 1fr;gap:15px}.ip .ip-gallery-photo{grid-column:auto!important;grid-row:auto!important;aspect-ratio:1.15!important}.ip-2 .ip-gallery,.ip-5 .ip-gallery,.ip-7 .ip-gallery,.ip-9 .ip-gallery,.ip-11 .ip-gallery,.ip-14 .ip-gallery{grid-template-columns:1fr}.ip-2 .ip-gallery-photo,.ip-5 .ip-gallery-photo,.ip-7 .ip-gallery-photo,.ip-9 .ip-gallery-photo,.ip-11 .ip-gallery-photo,.ip-14 .ip-gallery-photo{aspect-ratio:4/3!important}.ip-gallery-group{margin:35px 0;padding:0!important;border:0!important}.ip-gallery-group>h2{padding-top:15px}.ip-9 .ip-gallery-group,.ip-15 .ip-gallery-group{padding:20px!important}.ip-gallery-nav{gap:8px;position:static!important}.ip-gallery-nav button{padding:9px 11px;font-size:13px}.ip-gallery-note{font-size:13px}.ip-close{flex-direction:column;align-items:flex-start;gap:20px;padding:25px;margin-top:40px}.ip-close h2{font-size:28px}.ip-contact-split,.ip-contact-wide,.ip-contact-guided,.ip-contact-brief,.ip-contact-frame,.ip-contact-notes{display:flex;flex-direction:column;gap:25px}.ip-contact-split>.ip-form-panel,.ip-contact-wide>.ip-form-panel,.ip-contact-guided>.ip-form-panel,.ip-contact-frame>.ip-form-panel{width:100%}.ip-form-panel,.ip-2 .ip-form-panel,.ip-7 .ip-form-panel,.ip-14 .ip-form-panel{padding:22px}.ip-contact-brief .ip-form-panel{border:1px solid var(--line);padding:22px;width:100%}.ip-9 .ip-contact-split{padding:20px;gap:25px}.ip .formrow,.ip .form-row{grid-template-columns:1fr;gap:20px}.ip fieldset{margin-bottom:25px}.ip legend{font-size:22px}.ip input,.ip select,.ip textarea{font-size:16px;max-width:100%}.ip-related{flex-direction:column;gap:15px}.ip-more{padding:35px 0}.ip-action{max-width:100%}.ip-15 .ip-gallery{grid-template-columns:1fr 1fr}}
/* The inquiry ending is part of each company's design, rather than one shared banner. */
.ip-2 .ip-close{background:transparent;border-top:1px solid var(--line);padding:65px 0;align-items:flex-start}.ip-3 .ip-close{background:#000;color:#fff}.ip-3 .ip-close .ip-action{border:1px solid white}.ip-4 .ip-close{max-width:980px;display:block;padding:30px}.ip-5 .ip-close{background:transparent;border-top:1px solid var(--line);padding:50px 0}.ip-6 .ip-close{border-radius:6px;display:block;max-width:900px}.ip-7 .ip-close{background:transparent;border:1px solid var(--line);text-align:center;display:block;padding:45px}.ip-7 .ip-close>div{margin:auto}.ip-8 .ip-close{display:grid;grid-template-columns:1fr auto;background:transparent;border-top:1px solid var(--line);padding:40px 0}.ip-9 .ip-close{background:var(--deep);color:white}.ip-9 .ip-close .ip-action{background:white;color:var(--ink)}.ip-10 .ip-close{border-left:5px solid var(--accent)}.ip-11 .ip-close{background:transparent;border-top:3px solid #111;border-bottom:1px solid #111;padding:40px 0}.ip-12 .ip-close{display:block;padding:30px;max-width:950px}.ip-13 .ip-close{background:transparent;border:2px solid #111;align-items:flex-end}.ip-14 .ip-close{display:block;text-align:center;background:var(--panel)}.ip-14 .ip-close>div{margin:auto}.ip-15 .ip-close{border:1px solid var(--line)}
@media(max-width:650px){.ip-8 .ip-close{display:block}.ip-13 .ip-close{align-items:flex-start}.ip-2 .ip-close,.ip-5 .ip-close{padding:35px 0}.ip-7 .ip-close{padding:25px}}
