/* First migrated special LP. Old front.css is not loaded for this template. */
/* Editorial rebuild. Legacy rules below remain for pre-existing editor content. */
.saiko-filming-v2{--film-accent:var(--aim26-promotion,#58624d);--film-gutter:clamp(20px,5vw,80px);color:var(--aim26-ink,#170e00);background:#fff;overflow-wrap:break-word}
.saiko-filming-v2 :where(div,figure,h1,h2,h3,p,ul,a){box-sizing:border-box;min-width:0}
.saiko-filming-v2 .aim-filming-story{padding-bottom:clamp(64px,8vw,112px)}
.saiko-filming-v2 :where(.film-hero,.film-section){width:min(calc(100% - 2*var(--film-gutter)),1160px);margin-inline:auto}
.saiko-filming-v2 .film-label{margin:0 0 24px;color:var(--film-accent);font:600 11px/1.5 var(--aim26-en,sans-serif);letter-spacing:.15em}
.saiko-filming-v2 :where(h1,h2,h3){font-weight:600;line-height:1.5;word-break:normal;line-break:strict;text-wrap:pretty}
.saiko-filming-v2 h1{max-width:18em;margin:0 0 24px;font-size:clamp(34px,5.8vw,80px);line-height:1.3;letter-spacing:-.035em}
.saiko-filming-v2 h2{max-width:24em;margin:0 0 32px;font-size:clamp(26px,3.3vw,46px);letter-spacing:-.02em}
.saiko-filming-v2 h3{margin:0 0 20px;font-size:clamp(22px,2.2vw,30px)}
.saiko-filming-v2 p{font-size:16px;line-height:1.95}
.saiko-filming-v2 .film-hero{padding-top:clamp(32px,5vw,72px)}
.saiko-filming-v2 .film-lead{max-width:44em;margin:0 0 40px}
.saiko-filming-v2 .film-hero>figure{width:calc(100% + 2*var(--film-gutter));max-width:none;margin:0 calc(-1*var(--film-gutter))}
.saiko-filming-v2 figure{margin:0}
.saiko-filming-v2 img{display:block;width:100%;max-width:100%;height:auto}
.saiko-filming-v2 .film-section{padding-top:clamp(76px,10vw,144px)}
.saiko-filming-v2 .film-why{padding-inline:clamp(0px,7vw,110px);max-width:1000px}
.saiko-filming-v2 .film-why>p:last-child{max-width:40em}
.saiko-filming-v2 .film-location{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:center;margin-top:64px}
.saiko-filming-v2 .film-location--reverse{grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);margin-top:clamp(64px,10vw,144px)}
.saiko-filming-v2 .film-location--reverse>figure{grid-column:2;grid-row:1}
.saiko-filming-v2 .film-location--reverse>.film-caption{grid-column:1;grid-row:1}
.saiko-filming-v2 .film-caption .film-label{font-size:10px;margin-bottom:20px}
.saiko-filming-v2 .film-caption p:last-child{margin-bottom:0;font-size:15px}
.saiko-filming-v2 .film-note{max-width:65em;margin:40px 0 0;color:var(--aim26-muted,#675f55);font-size:13px}
.saiko-filming-v2 .film-advantage{padding-bottom:clamp(40px,5vw,64px);border-bottom:1px solid var(--aim26-line)}
.saiko-filming-v2 .film-advantage>p:not(.film-label){max-width:44em}
.saiko-filming-v2 .film-lab-notes{display:grid;grid-template-columns:minmax(150px,.6fr) minmax(0,1.4fr);column-gap:48px;margin-top:48px}
.saiko-filming-v2 .film-lab-notes :where(h3,p){margin:0;padding:24px 0;border-top:1px solid var(--aim26-line);font-size:16px;line-height:1.9}
.saiko-filming-v2 .film-lab-notes h3{color:var(--film-accent);font-family:var(--aim26-en,sans-serif)}
.saiko-filming-v2 .film-support>ul{columns:2;column-gap:64px;margin:0;padding:0;list-style:none}
.saiko-filming-v2 .film-support>ul>li{break-inside:avoid;padding:18px 0;border-bottom:1px solid var(--aim26-line);font-size:16px;line-height:1.8}
.saiko-filming-v2 .film-photo-sequence{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(20px,3vw,48px);align-items:start;margin-top:48px}
.saiko-filming-v2 .film-photo-sequence>figure:nth-child(4n+1){grid-column:1/9}
.saiko-filming-v2 .film-photo-sequence>figure:nth-child(4n+2){grid-column:9/13;margin-top:34%}
.saiko-filming-v2 .film-photo-sequence>figure:nth-child(4n+3){grid-column:2/7;margin-top:12%}
.saiko-filming-v2 .film-photo-sequence>figure:nth-child(4n){grid-column:8/13}
.saiko-filming-v2 .film-contact{margin-top:clamp(64px,8vw,112px);padding:clamp(36px,5vw,72px);background:var(--aim26-paper,#f6f4ef)}
.saiko-filming-v2 .film-contact>p:not(.film-label){max-width:42em}
.saiko-filming-v2 .film-contact-button>a{display:inline-flex;align-items:center;justify-content:center;gap:20px;max-width:100%;min-height:52px;padding:14px 24px;border:1px solid var(--film-accent);border-radius:999px;background:var(--film-accent);color:#fff;text-decoration:none;font-size:14px;line-height:1.7;transition:background-color .2s,color .2s}
.saiko-filming-v2 a:focus-visible{outline:3px solid #2f69d9;outline-offset:4px}
@media(hover:hover) and (pointer:fine){.saiko-filming-v2 .film-contact-button>a:hover{background:transparent;color:var(--film-accent)}}
@media(max-width:767px){
 .saiko-filming-v2 .film-why{padding-inline:0}
 .saiko-filming-v2 :is(.film-location,.film-location--reverse){grid-template-columns:minmax(0,1fr);gap:24px;margin-top:48px}
 .saiko-filming-v2 .film-location--reverse>:is(figure,.film-caption){grid-column:auto;grid-row:auto}
 .saiko-filming-v2 .film-lab-notes{grid-template-columns:minmax(0,1fr);margin-top:32px}
 .saiko-filming-v2 .film-lab-notes h3{padding:20px 0 8px}
 .saiko-filming-v2 .film-lab-notes p{border:0;padding:0 0 24px}
 .saiko-filming-v2 .film-support>ul{columns:1}
 .saiko-filming-v2 .film-photo-sequence{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px 16px}
 .saiko-filming-v2 .film-photo-sequence>figure:nth-child(odd){grid-column:1/6;margin-top:0}
 .saiko-filming-v2 .film-photo-sequence>figure:nth-child(even){grid-column:2/7;margin-top:0}
 .saiko-filming-v2 .film-contact{padding:32px 24px}
 .saiko-filming-v2 .film-contact-button>a{width:100%;padding-inline:18px;gap:12px}
}
@media(prefers-reduced-motion:reduce){.saiko-filming-v2 .film-contact-button>a{transition:none}}
.aim26-special.saiko-filming :is(.sf-inner, .sf-hero, .sf-photo-carousel, .sf-contact__inner) { width: min(calc(100% - 2 * var(--special-gutter)), var(--special-width)); margin-inline: auto; min-width: 0; }
.aim26-special.saiko-filming .sf-section { padding-block: clamp(64px, 8vw, 112px); }
.aim26-special.saiko-filming :is(.sf-section__label, .sf-hero__label, .sf-card__label) { color: var(--special-accent); font: 600 11px/1.5 var(--aim26-en); letter-spacing: .16em; margin: 0 0 18px; }
.aim26-special.saiko-filming .sf-hero { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(24px, 5vw, 64px); align-items: center; padding-block: 32px 56px; }
.aim26-special.saiko-filming .sf-hero__bg { grid-column: 2; grid-row: 1; border-radius: 0 0 0 56px; overflow: hidden; }
.aim26-special.saiko-filming .sf-hero__bg img { width: 100%; height: auto; }
.aim26-special.saiko-filming .sf-hero__content { grid-column: 1; grid-row: 1; min-width: 0; }
.aim26-special.saiko-filming .sf-hero__overlay { display: none; }
.aim26-special.saiko-filming .sf-hero h1 { margin: 0 0 24px; }
.aim26-special.saiko-filming .sf-hero__text { font-size: 16px; }
.aim26-special.saiko-filming :is(.sf-intro, .sf-about) p { max-width: 760px; }
.aim26-special.saiko-filming .sf-card-grid { display: grid; gap: 64px; }
.aim26-special.saiko-filming .sf-card { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(24px, 4vw, 48px); align-items: center; }
.aim26-special.saiko-filming .sf-card:nth-child(even) .sf-card__image { order: 2; }
.aim26-special.saiko-filming .sf-card__image { border-radius: 0 0 0 40px; overflow: hidden; }
.aim26-special.saiko-filming .sf-card__image img { width: 100%; height: auto; }
.aim26-special.saiko-filming .sf-card__body { min-width: 0; }
.aim26-special.saiko-filming .sf-photo-carousel { padding-block: 48px; }
.aim26-special.saiko-filming .sf-photo-carousel__track { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.aim26-special.saiko-filming .sf-photo-carousel__item { min-width: 0; }
.aim26-special.saiko-filming .sf-photo-carousel__item[aria-hidden="true"] { display: none; }
.aim26-special.saiko-filming .sf-photo-carousel__item img { width: 100%; height: auto; }
.aim26-special.saiko-filming .sf-location-item { display: grid; grid-template-columns: 56px minmax(0, .8fr) minmax(0, 1.2fr); gap: 24px; align-items: baseline; padding-block: 24px; border-bottom: 1px solid var(--aim26-line); }
.aim26-special.saiko-filming .sf-location-item span { color: var(--special-accent); font: 500 18px/1.5 var(--aim26-en); }
.aim26-special.saiko-filming .sf-location-item :is(h3, p) { margin: 0; }
.aim26-special.saiko-filming .sf-note { font-size: 14px; color: var(--aim26-muted); }
.aim26-special.saiko-filming .sf-support-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 40px; padding-inline-start: 20px; }
.aim26-special.saiko-filming .sf-support-list li { padding: 8px 0; }
.aim26-special.saiko-filming :is(.sf-recommend-grid, .sf-lab-grid) { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.aim26-special.saiko-filming :is(.sf-recommend-grid > div, .sf-lab) { min-width: 0; padding-block: 16px; border-top: 1px solid var(--aim26-line); }
.aim26-special.saiko-filming .sf-contact { padding-block: 80px; background: var(--special-accent); color: #fff; }
.aim26-special.saiko-filming .sf-contact .sf-section__label { color: #fff; }
.aim26-special.saiko-filming .sf-contact__button { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; max-width: 100%; padding: 12px 32px; border: 1px solid #fff; border-radius: 999px; background: #fff; color: var(--special-accent); text-decoration: none; transition: opacity .2s; }
.aim26-special.saiko-filming .sf-contact__button:hover { opacity: .8; }
.aim26-special.saiko-filming .sf-contact__button:focus-visible { outline-color: #fff; }
@media (max-width: 1024px) {
  .aim26-special.saiko-filming :is(.sf-recommend-grid, .sf-lab-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
  .aim26-special.saiko-filming :is(.sf-hero, .sf-card) { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .aim26-special.saiko-filming .sf-hero__content { grid-column: 1; grid-row: 1; }
  .aim26-special.saiko-filming .sf-hero__bg { grid-column: 1; grid-row: 2; border-bottom-left-radius: 32px; }
  .aim26-special.saiko-filming .sf-card:nth-child(even) .sf-card__image { order: initial; }
  .aim26-special.saiko-filming :is(.sf-recommend-grid, .sf-lab-grid, .sf-support-list) { grid-template-columns: minmax(0, 1fr); }
  .aim26-special.saiko-filming .sf-photo-carousel__track { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .aim26-special.saiko-filming .sf-location-item { grid-template-columns: 32px minmax(0, 1fr); gap: 12px; }
  .aim26-special.saiko-filming .sf-location-item p { grid-column: 2; }
}
