/* ECS corporate template extensions.
   Loaded after rounded.css. Every rule is scoped to the expanded pages;
   the six approved homepage / solenoid previews are intentionally unchanged. */

.expanded-page main h1,
.expanded-page main h2,
.expanded-page main h3 { overflow-wrap:anywhere; hyphens:auto; }
.expanded-page main h2 { margin-bottom:24px; }
.expanded-page main h3 { margin-bottom:18px; }
.expanded-page main p:not(.eyebrow) { margin-bottom:20px; }
.expanded-page main p:last-child { margin-bottom:0; }
.expanded-page main .section-head h2 { margin-bottom:0; }
.expanded-page main .section-head>p { margin-bottom:0; }
.expanded-page .grid>* ,
.expanded-page .split>* { min-width:0; }
.expanded-page .button { max-width:100%; text-align:center; overflow-wrap:anywhere; }
.expanded-page .button.outline { background:transparent; border-color:#a0b4b5; color:var(--ink); }
.expanded-page .button.outline:hover { background:#e6ece8; border-color:var(--navy); }
.expanded-page .text-link { max-width:100%; overflow-wrap:anywhere; }
.expanded-page .border-top { border-top:1px solid var(--line); }

/* Quiet editorial opening, with the same asymmetric geometry as the imagery. */
.expanded-page .intro {
  padding:26px 0 66px;
  background:#eaf0ed;
  border-radius:0 0 72px 0;
  position:relative;
}
.expanded-page .intro .wrap { position:relative; }
.expanded-page .crumb {
  display:inline-flex; align-items:center; gap:18px; min-height:44px;
  font-size:12px; color:var(--muted); margin-bottom:27px;
}
.expanded-page .crumb:hover { color:var(--orange); }
.expanded-page .crumb span { color:var(--orange); font-size:19px; }
.expanded-page .intro .eyebrow { margin-bottom:18px; }
.expanded-page .intro h1 {
  max-width:1120px; font-size:clamp(42px,5.3vw,74px);
  line-height:1.07; margin-bottom:25px;
}
.expanded-page .intro .lede { max-width:760px; font-size:18px; line-height:1.7; margin-bottom:0; }

/* Photographs retain their native content; the coloured backplate is CSS only. */
.expanded-page .photo {
  height:340px; border-radius:var(--ecs-photo-corners);
  background:#e5e9e6; cursor:zoom-in;
  box-shadow:11px 11px 0 var(--depth,var(--ecs-depth-gray));
}
.expanded-page .photo img { object-fit:cover; }
.expanded-page .photo>span { min-width:44px; min-height:44px; }
.expanded-page .grid>.photo:nth-child(3n+1),
.expanded-page .gallery figure:nth-child(3n+1),
.expanded-page .cad-grid figure:nth-child(3n+1) { --depth:var(--ecs-depth-orange); }
.expanded-page .grid>.photo:nth-child(3n+2),
.expanded-page .gallery figure:nth-child(3n+2),
.expanded-page .cad-grid figure:nth-child(3n+2) { --depth:var(--ecs-depth-blue); }
.expanded-page .grid>.photo:nth-child(3n+3),
.expanded-page .gallery figure:nth-child(3n+3),
.expanded-page .cad-grid figure:nth-child(3n+3) { --depth:var(--ecs-depth-gray); }
.expanded-page .grid>.photo:nth-child(even) { border-radius:68px 28px 28px 28px; }
.expanded-page .feature-image {
  height:460px; overflow:hidden; background:#e5e9e6;
  border-radius:var(--ecs-photo-corners);
  box-shadow:12px 12px 0 var(--depth,var(--ecs-depth-blue));
}
.expanded-page .feature-image img { object-position:center 60%; }
.expanded-page .feature-image img[data-asset="kalip-tasarim"] { object-fit:contain; }
.expanded-page .story-image { min-width:0; }
.expanded-page .wide-photo { padding-bottom:12px; }
.expanded-page .wide-photo .photo { height:500px; --depth:var(--ecs-depth-gray); border-radius:var(--ecs-photo-corners); }
.expanded-page .wide-photo img { object-fit:contain; }

/* Product detail: open technical content and a distinct, compact request brief. */
.expanded-page .detail-layout {
  display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);
  gap:66px; align-items:start;
}
.expanded-page .detail-layout>* { min-width:0; }
.expanded-page .detail-image { height:470px; margin-bottom:12px; }
.expanded-page .detail-image .photo { height:100%; --depth:var(--ecs-depth-orange); }
.expanded-page .detail-image img { object-fit:contain; }
.expanded-page .detail-copy { margin-top:38px; padding-top:30px; }
.expanded-page .detail-copy h2 { font-size:30px; margin-bottom:20px; }
.expanded-page .detail-copy p { font-size:16px; line-height:1.75; }
.expanded-page .brief {
  display:block; padding:36px; border-radius:32px 32px 64px 32px;
  background:#e6eeea; border-top:3px solid var(--orange);
}
.expanded-page .detail-layout>.brief { position:sticky; top:32px; }
.expanded-page .brief>* { grid-column:auto; grid-row:auto; }
.expanded-page .brief h2 { font-size:clamp(27px,2.6vw,38px); }
.expanded-page .brief h3 { max-width:none; font-size:30px; margin-bottom:23px; }
.expanded-page .brief ul { margin:24px 0 30px; padding:0; list-style:none; }
.expanded-page .brief li { font-size:14px; padding:12px 0; gap:13px; line-height:1.65; }
.expanded-page .brief li:before { flex:none; }
.expanded-page .brief .small { margin-top:20px; font-size:12px; }

/* Manufacturing capabilities: alternating image / copy rhythm, not a card wall. */
.expanded-page .cap-feature {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:80px; align-items:center; padding-bottom:72px; margin-bottom:72px;
  border-bottom:1px solid var(--line);
}
.expanded-page .cap-feature>* { min-width:0; }
.expanded-page .cap-feature:nth-child(even) .feature-image { order:2; border-radius:var(--ecs-photo-corners); }
.expanded-page .cap-feature:nth-child(3n+1) { --depth:var(--ecs-depth-orange); }
.expanded-page .cap-feature:nth-child(3n+2) { --depth:var(--ecs-depth-blue); }
.expanded-page .cap-feature:nth-child(3n+3) { --depth:var(--ecs-depth-gray); }
.expanded-page .cap-feature:last-child { padding-bottom:0; margin-bottom:0; border-bottom:0; }
.expanded-page .cap-feature p:not(.eyebrow) { max-width:530px; }
.expanded-page .steps { margin:26px 0 32px; padding-left:24px; }
.expanded-page .steps li { padding:13px 0 13px 5px; border-bottom:1px solid var(--line); font-size:15px; }
.expanded-page .steps li::marker { color:var(--orange); font-weight:bold; }
.expanded-page .approach { padding:25px 0 8px; border-top:1px solid #b8c8c8; }
.expanded-page .approach h3 { margin:20px 0 16px; font-size:26px; }
.expanded-page .approach p { font-size:15px; line-height:1.75; }
.expanded-page .cap-section .approach { border-color:#557783; }
.expanded-page .cap-section p:not(.eyebrow) { color:#d2e0e3; }
.expanded-page .cap-section .index { color:#ffb47f; }
.expanded-page .cap-section .button.outline { color:var(--navy); background:#fff; border-color:#fff; }
.expanded-page .split>div>h2 { margin-bottom:24px; }
.expanded-page .split>div>p:not(.eyebrow) { line-height:1.75; }

/* Galleries and case studies. */
.expanded-page .gallery-section { padding:80px 0; background:#eaf0ed; border-radius:64px 0 64px 0; }
.expanded-page .gallery,
.expanded-page .cad-grid { row-gap:44px; }
.expanded-page .gallery figure,
.expanded-page .cad-grid figure { margin:0; min-width:0; }
.expanded-page .gallery .photo { height:320px; }
.expanded-page .gallery figcaption,
.expanded-page .cad-grid figcaption { padding:25px 0 0; font-size:14px; line-height:1.65; color:var(--muted); }
.expanded-page .cad-grid .photo { height:370px; padding:22px; background:#e8ece8; }
.expanded-page .cad-grid img { object-fit:contain; }
.expanded-page .project-detail-photo { padding-bottom:12px; }
.expanded-page .project-detail-photo .photo { height:570px; --depth:var(--ecs-depth-blue); border-radius:var(--ecs-photo-corners); }
.expanded-page .project-detail-photo img { object-fit:contain; background:#e5e9e6; }
.expanded-page .project-note { display:grid; grid-template-columns:1fr 1fr; gap:80px; padding:56px 0; }
.expanded-page .project-note>* { min-width:0; }
.expanded-page .project-note h2 { font-size:clamp(28px,3vw,40px); }

/* Catalogues: keep the original poster crop coordinates and product images. */
.expanded-page .model-grid,
.expanded-page .plastic-grid { row-gap:48px; }
.expanded-page .model-photo .photo { border-radius:0; box-shadow:none; height:245px; }
.expanded-page .model-photo .photo img { object-fit:contain; }
.expanded-page .model-card .eyebrow { margin-bottom:12px; font-size:9px; }
.expanded-page .model-card h3 { font-size:24px; margin-bottom:14px; }
.expanded-page .model-card .small { font-size:12px; }
.expanded-page .model-card .text-link { font-size:12px; }
.expanded-page .application-strip { margin-top:48px; padding:36px; background:#e6eeea; border-radius:30px 65px 30px 30px; }
.expanded-page .application-strip h3 { margin-bottom:24px; }
.expanded-page .application-strip p { font-size:14px; margin:14px 0 0; }
.expanded-page .poster-crop {
  position:relative; overflow:hidden; aspect-ratio:1.8; background:#f4f4f2;
  border-radius:var(--ecs-photo-corners);
  box-shadow:8px 8px 0 var(--depth,var(--ecs-depth-gray));
}
.expanded-page .poster-crop img { position:absolute; width:100%; height:auto; top:-62%; left:0; }
.expanded-page .plastic-grid .model-card:nth-child(3n+1) { --depth:var(--ecs-depth-orange); }
.expanded-page .plastic-grid .model-card:nth-child(3n+2) { --depth:var(--ecs-depth-blue); }
.expanded-page .plastic-grid .model-card:nth-child(3n+3) { --depth:var(--ecs-depth-gray); }
.expanded-page .plastic-grid .card-body { padding-top:28px; }
.expanded-page .plastic-grid h3 { font-size:23px; }

/* Contact and RFQ. No form transport behavior is defined in this stylesheet. */
.expanded-page .contact-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr); gap:80px; align-items:start; }
.expanded-page .contact-grid>* { min-width:0; }
.expanded-page .contact-details dl { margin:32px 0; }
.expanded-page .contact-details dt { font-size:10px; letter-spacing:.16em; color:var(--orange); margin:27px 0 4px; font-weight:bold; }
.expanded-page .contact-details dd { margin:0; font-size:24px; line-height:1.6; overflow-wrap:anywhere; }
.expanded-page .contact-details dd a { display:inline-flex; align-items:center; min-height:44px; max-width:100%; }
.expanded-page .contact-details dd a:hover { color:var(--orange); }
.expanded-page .contact-details dd.address { font-size:17px; max-width:365px; }
.expanded-page .social-heading { margin:36px 0 16px; font-size:20px; letter-spacing:-.02em; }
.expanded-page .social-links { display:flex; flex-wrap:wrap; gap:12px; }
.expanded-page .social-links a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:8px 17px; border:1px solid #a8bbbd; border-radius:100px; font-size:13px; font-weight:600; }
.expanded-page .social-links a:hover { color:var(--orange); border-color:var(--orange); }
.expanded-page .quote-form {
  padding:38px; background:white; border:1px solid #d4dfda; border-top:3px solid var(--orange);
  border-radius:32px 32px 64px 32px; box-shadow:11px 11px 0 #d6e0dd;
}
.expanded-page .quote-form h2 { font-size:34px; margin:15px 0 28px; }
.expanded-page .quote-form label { display:block; min-width:0; font-size:13px; font-weight:bold; margin-bottom:19px; line-height:1.6; }
.expanded-page .quote-form input:not([type="checkbox"]):not([type="radio"]),
.expanded-page .quote-form textarea,
.expanded-page .quote-form select {
  display:block; width:100%; min-width:0; max-width:100%; min-height:48px;
  margin-top:7px; padding:12px; border:1px solid #a9babb; border-radius:12px;
  background:#fafbf9; color:var(--ink); font-size:16px; line-height:1.5; font-weight:400;
}
.expanded-page .quote-form input::placeholder,
.expanded-page .quote-form textarea::placeholder { color:#5b6e74; opacity:1; }
.expanded-page .quote-form textarea { resize:vertical; min-height:110px; }
.expanded-page .quote-form input[type="checkbox"],
.expanded-page .quote-form input[type="radio"] { accent-color:var(--navy); width:20px; height:20px; margin-right:10px; vertical-align:middle; }
.expanded-page .quote-form [aria-invalid="true"] { border-color:#a6321a; }
.expanded-page .quote-form .small { font-size:13px; line-height:1.7; }
.expanded-page .quote-form button[type="submit"] { margin-top:6px; }
.expanded-page .quote-form #form-status:not(:empty) { margin-top:20px; padding:14px 16px; border-left:3px solid var(--orange); background:#f4f6f1; overflow-wrap:anywhere; }
.expanded-page .form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; }
.expanded-page details { margin:20px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.expanded-page summary { cursor:pointer; min-height:48px; padding:15px 0; font-size:14px; font-weight:bold; line-height:1.6; }
.expanded-page summary:focus-visible { outline:3px solid var(--orange); outline-offset:4px; border-radius:4px; }
.expanded-page details[open] summary { margin-bottom:12px; }
.expanded-page .map-section { padding:74px 0; background:#eaf0ed; border-radius:64px 0 0 0; }
.expanded-page .map-section iframe { display:block; width:100%; height:430px; border:0; border-radius:30px 76px 30px 30px; background:#d7e1de; box-shadow:11px 11px 0 var(--ecs-depth-gray); }
.expanded-page .map-section>div>p { font-size:13px; margin-top:26px; }
.expanded-page .certificate-card { margin:0; padding:30px; background:#fff; border:1px solid var(--line); border-radius:28px; text-align:center; }
.expanded-page .certificate-card>img { width:160px; height:auto; max-width:100%; margin:0 auto 24px; object-fit:contain; }
.expanded-page .certificate-card h3 { font-size:21px; letter-spacing:0; }
.expanded-page .certificate-card p { font-size:14px; }
.expanded-page .cta p:not(.eyebrow) { margin-bottom:0; }

@media(max-width:1100px) {
  .expanded-page .detail-layout { gap:36px; }
  .expanded-page .cap-feature { gap:48px; }
  .expanded-page .feature-image { height:410px; }
  .expanded-page .contact-grid { gap:42px; }
  .expanded-page .quote-form { padding:30px; }
  .expanded-page .brief { padding:30px; }
  .expanded-page .project-note { gap:48px; }
}
@media(max-width:900px) {
  .expanded-page .contact-grid { grid-template-columns:1fr; gap:42px; }
  .expanded-page .contact-details dl { display:grid; grid-template-columns:115px minmax(0,1fr); gap:16px 25px; align-items:start; }
  .expanded-page .contact-details dt { margin:11px 0 0; }
  .expanded-page .contact-details dd { font-size:22px; }
  .expanded-page .quote-form { max-width:740px; width:100%; }
}
@media(max-width:760px) {
  .expanded-page .intro { padding:16px 0 45px; border-radius:0 0 44px 0; }
  .expanded-page .crumb { margin-bottom:23px; }
  .expanded-page .intro h1 { font-size:clamp(38px,8.5vw,56px); margin-bottom:23px; }
  .expanded-page .intro .lede { font-size:16px; }
  .expanded-page .detail-layout,
  .expanded-page .cap-feature { grid-template-columns:1fr; gap:36px; }
  .expanded-page .detail-layout>.brief { position:static; }
  .expanded-page .detail-image { height:390px; }
  .expanded-page .detail-copy h2 { font-size:28px; }
  .expanded-page .photo { height:320px; border-radius:var(--ecs-photo-corners); box-shadow:8px 8px 0 var(--depth,var(--ecs-depth-gray)); }
  .expanded-page .feature-image { height:390px; border-radius:var(--ecs-photo-corners); box-shadow:8px 8px 0 var(--depth,var(--ecs-depth-blue)); }
  .expanded-page .cap-feature { margin-bottom:50px; padding-bottom:50px; }
  .expanded-page .cap-feature:nth-child(even) .feature-image { order:0; border-radius:var(--ecs-photo-corners); }
  .expanded-page .cap-section .approach h3 { font-size:25px; }
  .expanded-page .wide-photo .photo { height:400px; }
  .expanded-page .gallery-section { padding:56px 0; border-radius:42px 0 42px 0; }
  .expanded-page .gallery { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .expanded-page .gallery .photo { height:250px; }
  .expanded-page .cad-grid .photo { height:330px; padding:16px; }
  .expanded-page .project-detail-photo .photo { height:410px; border-radius:var(--ecs-photo-corners); }
  .expanded-page .project-note { grid-template-columns:1fr; gap:10px; padding:40px 0; }
  .expanded-page .brief { padding:28px; border-radius:28px 28px 52px 28px; }
  .expanded-page .brief h2 { font-size:32px; }
  .expanded-page .model-grid.grid.three,
  .expanded-page .plastic-grid.grid.three { grid-template-columns:repeat(2,minmax(0,1fr)); gap:38px 24px; }
  .expanded-page .model-photo .photo { height:210px; box-shadow:none; }
  .expanded-page .model-card h3 { font-size:21px; }
  .expanded-page .poster-crop { border-radius:var(--ecs-photo-corners); box-shadow:6px 6px 0 var(--depth,var(--ecs-depth-gray)); }
  .expanded-page .application-strip { padding:26px; border-radius:25px 50px 25px 25px; }
  .expanded-page .map-section { padding:55px 0; border-radius:42px 0 0 0; }
  .expanded-page .map-section iframe { height:360px; border-radius:26px 60px 26px 26px; box-shadow:8px 8px 0 var(--ecs-depth-gray); }
  .expanded-page .quote-form { border-radius:28px 28px 50px 28px; box-shadow:8px 8px 0 #d6e0dd; }
}
@media(max-width:500px) {
  .expanded-page .intro h1 { font-size:clamp(35px,9.2vw,45px); }
  .expanded-page .detail-image { height:315px; }
  .expanded-page .photo { height:290px; }
  .expanded-page .feature-image { height:330px; }
  .expanded-page .wide-photo .photo { height:320px; }
  .expanded-page .gallery { grid-template-columns:1fr; }
  .expanded-page .gallery .photo { height:310px; }
  .expanded-page .project-detail-photo .photo { height:330px; }
  .expanded-page .model-grid.grid.three,
  .expanded-page .plastic-grid.grid.three { grid-template-columns:1fr; gap:38px; }
  .expanded-page .model-photo .photo { height:260px; }
  .expanded-page .plastic-grid h3 { font-size:23px; }
  .expanded-page .brief { padding:27px 23px; }
  .expanded-page .brief h2 { font-size:29px; }
  .expanded-page .brief h3 { font-size:28px; }
  .expanded-page .contact-details dl { display:block; }
  .expanded-page .contact-details dt { margin:24px 0 4px; }
  .expanded-page .contact-details dd { font-size:22px; }
  .expanded-page .quote-form { padding:27px 20px; }
  .expanded-page .quote-form h2 { font-size:29px; }
  .expanded-page .form-grid { grid-template-columns:1fr; gap:0; }
  .expanded-page .quote-form button[type="submit"] { width:100%; }
  .expanded-page .map-section iframe { height:330px; }
}
@media(prefers-reduced-motion:reduce) {
  .expanded-page *,
  .expanded-page *:before,
  .expanded-page *:after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

/* Quiet monochrome footer links, shared by all three languages. */
footer .social-links{display:flex;flex-wrap:wrap;gap:20px;margin-top:18px}
footer .social-links a.social-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:4px 0;border:0;border-radius:4px;background:transparent;box-shadow:none;font-size:12px;font-weight:500;line-height:1.2;color:#d3e0e2;transition:color .2s}
footer .social-links a.social-button:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
footer .social-links a.social-button:focus-visible{outline:2px solid #fff;outline-offset:5px}
footer .social-links .social-icon{width:16px;height:16px;flex:none}
footer .social-links .arrow-icon{display:none}
.cta-row>.button{max-width:100%;white-space:normal}
@media(prefers-reduced-motion:reduce){footer .social-links a.social-button{transition:none}}

/* Use the same proportional frames on the remaining page families. */
.expanded-page .feature-image{height:auto;aspect-ratio:4/3}
.expanded-page .photo{height:auto;aspect-ratio:4/3}
.expanded-page .detail-image{height:auto;aspect-ratio:4/3}
.expanded-page .detail-image .photo{height:100%;aspect-ratio:auto}
.expanded-page .wide-photo .photo{height:auto;aspect-ratio:16/9}
.expanded-page .gallery .photo{height:auto;aspect-ratio:4/3}
.expanded-page .cad-grid .photo{height:auto;aspect-ratio:4/3}
.expanded-page .project-detail-photo .photo{height:auto;aspect-ratio:16/9}
.expanded-page .model-photo .photo{height:auto;aspect-ratio:4/3}
@media(max-width:900px){
 .expanded-page .detail-layout,.expanded-page .cap-feature{grid-template-columns:1fr;gap:36px}
 .expanded-page .detail-layout>.brief{position:static}
 .expanded-page .cap-feature:nth-child(even) .feature-image{order:0}
}

/* Selected production perspectives: complete subjects take precedence over uniform cropping. */
.expanded-page .project-image:has(img[src*="/selected/A"]){height:auto;aspect-ratio:auto;display:block;background:#e5e9e6}
.expanded-page .project-image img[src*="/selected/A"]{display:block;width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:auto}
.expanded-page [data-selected-project-gallery]{align-items:start}
.expanded-page [data-selected-project-gallery] .photo{height:auto;aspect-ratio:auto;background:#e5e9e6}
.expanded-page [data-selected-project-gallery] .photo img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:auto}
/* Catalogue models: four compact columns, two on tablets, one on phones. */
body .model-grid.grid.three,body .plastic-grid.grid.three{grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 24px}
body .model-card .model-photo img,body .model-card .poster-crop img{object-fit:contain}
@media(max-width:1000px){body .model-grid.grid.three,body .plastic-grid.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){body .model-grid.grid.three,body .plastic-grid.grid.three{grid-template-columns:1fr}}
