.harrington{--gold-text:#806336;scroll-snap-type:none}
html:has(body.harrington){scroll-snap-type:none!important}
.harrington .scene:not(.hero){min-height:auto;scroll-snap-align:none;padding-top:110px;padding-bottom:110px}
.harrington .hero-media img{object-position:center}
.harrington .hero-copy{max-width:850px;z-index:4}
.harrington .hero-copy h1{font-family:'Noto Serif KR',serif;font-weight:400;letter-spacing:-.055em}
.harrington .hero-copy .eyebrow{letter-spacing:.3em}
.harrington .hero-shade{background:linear-gradient(90deg,rgba(8,20,29,.78),rgba(8,20,29,.2) 75%)}
.harrington .hero-media,.harrington .hero-shade,.harrington .hero .image-note{pointer-events:none}
.harrington .hero-actions{position:relative;z-index:5;flex-wrap:wrap}
.harrington .hero-actions>.btn{position:relative;pointer-events:auto;touch-action:manipulation}
.harrington .hero .image-note{bottom:25px}
.harrington .image-note,.harrington .fine,.harrington .lead-form>small{font-size:12px}
.harrington .studio-switch{display:none}
.harrington .scene-dots{z-index:8}
.harrington .section-heading .eyebrow,.harrington .h-film-card>small,.harrington .h-detail-title{color:var(--gold-text)}
.harrington :is(.hero,.h-overview,.h-community) .eyebrow{color:#d4b483}
.harrington .h-overview .fine{color:#c7cdd0}
.harrington .h-premium{background:#faf9f6}
.harrington .h-premium-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(6,auto);margin-top:40px;gap:0}
.h-premium-grid article{display:grid;grid-template-rows:subgrid;grid-row:span 6;align-items:start;padding:0 22px 32px;border-left:1px solid #ddd;min-width:0}
.h-premium-grid article:first-child{border-left:0}
.h-premium-photo{width:100%;aspect-ratio:1.5;object-fit:cover;display:block;margin-bottom:24px}
.h-premium-photo.h-plan-preview{object-fit:contain;background:#fff}
.h-premium-grid article>span{display:block;font:52px 'Noto Serif KR',serif;color:#d7c5a9;margin-bottom:22px}
.h-premium-grid small{letter-spacing:.2em;color:var(--gold-text);font-size:12px}
.h-premium-grid h3{font-size:24px;line-height:1.6;margin:15px 0 0;word-break:keep-all}
.h-premium-grid p{font-size:14px;color:#596772;margin:22px 0 24px;word-break:keep-all}
.h-premium-grid .text-link{justify-self:start;align-self:end;min-height:44px;padding:10px 0;margin:0;font-size:14px;position:relative;z-index:1}
.harrington .h-visual{position:relative;display:block;background:#fff;border:0;padding:16px;width:100%;cursor:zoom-in}
.h-visual img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.h-visual>span{display:block;color:var(--primary);font-size:13px;padding-top:14px;letter-spacing:.06em}
.h-map{max-width:1100px;margin:auto}
.h-dual{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.harrington .h-site{background:#f5f4f0}
.harrington .h-community{background:#1c2b3a;color:#fff}
.harrington .h-community .h-visual{max-width:none;padding:0;background:#fff}
.harrington .h-community .h-visual>span{padding:16px}
.h-community .fine,.harrington .h-community .section-heading>p:last-child:not(.eyebrow){color:#bec7cd}
.harrington .h-register{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#f4f1eb;align-items:center}
.h-register .section-heading{text-align:left}
.h-register .h-phone{font:48px 'Noto Serif KR',serif;color:var(--primary)}
.h-register .form-card{background:#fff}
.harrington .h-register>div>p{color:#596772}
.harrington .h-overview{min-height:780px!important}
.harrington .h-overview .overview-photo img{object-position:center}
.harrington .overview-copy .section-heading h2{font-size:34px}
.h-area-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}
.h-area-tabs [aria-pressed=true]{background:var(--primary);color:#fff}
.h-mobile-bar{display:none}
.h-project-link{display:inline-block;border:1px solid #b08d57;padding:15px 25px;margin:0 0 35px}
.harrington .drawing-open img{width:100%;max-width:1100px;margin:auto;height:auto;max-height:none;min-height:0}
.harrington .h-films{background:#f5f2ed}
.h-film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.h-film-card{text-align:left;background:none;border:0;padding:0;min-width:0;display:flex;flex-direction:column}
.h-film-card>div{position:relative;overflow:hidden;width:100%;aspect-ratio:16/10;background:#1c2b3a}
.h-film-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.h-film-card:hover img{transform:scale(1.04)}
.h-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:62px;height:62px;display:grid;place-items:center;border:1px solid #ffffffaa;border-radius:50%;color:#fff;background:#1c2b3a80;font-size:27px;backdrop-filter:blur(4px)}
.h-film-card>small{letter-spacing:.16em;margin-top:24px;font-size:12px}
.h-film-card h3{font-size:23px;margin:9px 0}
.h-film-card p{color:#596772;font-size:14px;margin:0 0 20px;flex:1}
.h-film-card>span{font-size:14px;border-bottom:1px solid;padding:10px 0;align-self:start}
.harrington .h-film-card:focus-visible{outline-offset:8px}
.h-detail article{margin-bottom:70px}
.h-detail-title{font-size:25px;margin:50px 0 25px}
.harrington .h-detail .h-visual{padding:0;margin-bottom:30px}
.h-cg-gallery{display:grid;gap:35px}
.h-unit-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;background:#f8f7f4}
.h-unit-intro .section-heading{text-align:left}
.h-unit-intro-visual{background:#fff;border:1px solid #e3e5e6;max-height:none;overflow:visible;padding-bottom:24px}
.h-unit-intro-visual>.text-link{margin-left:24px}
.h-type-links{display:flex;border-top:1px solid #d9d3c9;border-bottom:1px solid #d9d3c9}
.h-type-links>a{flex:1;padding:25px 12px;border-right:1px solid #d9d3c9}
.h-type-links>a:last-child{border:0}
.h-type-links b{font:44px 'Noto Serif KR',serif}
.h-type-links span{font-size:14px}
.h-type-links small{display:block;margin-top:12px;font-size:12px}
.h-map-links{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:660px;margin:35px auto}
.h-map-links h3{grid-column:1/-1;margin-top:18px;font-size:20px}
.h-image-viewer{width:min(1200px,96vw);max-width:96vw;padding:35px 24px 20px}
.h-image-viewer>h2{padding-right:35px;font-size:24px}
.h-image-scroll{height:68svh;overflow:auto;background:#f0f0ed;overscroll-behavior:contain}
.h-image-scroll #zoomContent{width:100%;min-width:50%;margin:0}
.h-image-scroll img{width:100%;height:auto;max-width:none;max-height:none;display:block}
@media(max-width:1000px){
 .harrington .h-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:30px;row-gap:28px}
 .h-premium-grid article{padding:0 18px 28px}
 .h-premium-grid article:nth-child(3){border-left:0}
 .h-premium-photo{aspect-ratio:1.8}
 .h-premium-grid article>span{font-size:45px}
 .harrington .h-register{gap:30px}
 .harrington .overview-copy .section-heading h2{font-size:27px}
 .h-film-grid{gap:20px}
 .h-unit-intro{gap:35px}
 .h-unit-intro .section-heading h2{font-size:30px}
}
@media(max-width:700px){
 .harrington .scene:not(.hero){padding:75px 24px}
 .harrington .hero-copy h1{font-size:35px}
 .harrington .hero .image-note{bottom:75px}
 .harrington .scroll-hint{bottom:95px}
 .harrington .section-heading h2{font-size:29px}
 .harrington .h-premium-grid{gap:0}
 .h-premium-grid article{padding:0 10px 30px}
 .h-premium-photo{aspect-ratio:1.3;margin-bottom:18px}
 .h-premium-grid article>span{font-size:35px;margin-bottom:15px}
 .h-premium-grid h3{font-size:18px}
 .h-premium-grid small{font-size:11px;letter-spacing:.1em}
 .h-premium-grid p{font-size:14px;margin:18px 0}
 .h-premium-grid .text-link{font-size:13px}
 .harrington .h-dual,.harrington .h-register,.h-unit-intro{grid-template-columns:1fr}
 .harrington .h-register{padding-bottom:110px!important}
 .harrington .h-register .section-heading,.h-register>div:first-child,.h-unit-intro .section-heading{text-align:center}
 .h-register .h-phone{font-size:36px}
 .h-mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;background:#1c2b3a;color:white;padding-bottom:env(safe-area-inset-bottom)}
 .h-mobile-bar>a,.h-mobile-bar>button{width:50%;min-height:54px;padding:17px 10px;text-align:center;border:0;background:transparent;color:white;font-size:14px}
 .h-mobile-bar>button{background:var(--accent);color:#142635;font-weight:700}
 .harrington .h-visual{padding:8px}
 .harrington .h-area-tabs .btn{padding:10px 20px}
 .harrington .h-register .form-card{padding:24px}
 .h-film-grid{grid-template-columns:1fr;gap:40px}
 .h-film-card>div{aspect-ratio:16/9}
 .h-unit-intro{gap:35px}
 .h-type-links b{font-size:35px}
 .harrington .h-detail-title{font-size:21px}
 .harrington .h-overview .overview-photo{height:320px}
 .harrington .scene-dots{display:none}
 .harrington .lead-form input:not([type=checkbox]),.harrington .lead-form select{font-size:16px}
 .harrington .lead-form>label,.harrington .consent-row{font-size:14px}
 .harrington .site-footer{padding-bottom:90px}
 .h-image-viewer{padding:30px 12px 12px}
 .h-image-viewer>h2{font-size:20px}
}

/* Mobile density: readable type, fewer forced breaks, compact media rows. */
@media(max-width:700px){
 .harrington{font-size:14px;line-height:1.6;overflow-wrap:break-word}
 .harrington .section,.harrington .scene:not(.hero){padding:44px 20px}
 .harrington .section-heading{margin-bottom:26px}
 .harrington .section-heading h2,.harrington .overview-copy .section-heading h2,.harrington .h-unit-intro .section-heading h2{font-size:23px;line-height:1.45;word-break:keep-all;text-wrap:pretty}
 .harrington .section-heading h2 br{display:none}
 .harrington .section-heading>p:last-child:not(.eyebrow){font-size:13px;line-height:1.65;margin-top:10px;white-space:normal;word-break:normal;text-wrap:pretty}
 .harrington .section-heading .eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:9px}
 .harrington .hero-copy{left:20px;max-width:calc(100% - 40px)}
 .harrington .hero-copy h1{font-size:clamp(26px,7.1vw,32px);line-height:1.5;text-wrap:initial}
 .harrington .hero-copy .eyebrow{font-size:10px;letter-spacing:.12em}
 .harrington .hero-spec{font-size:12px;line-height:1.7;max-width:28em}
 .harrington .hero-actions{gap:8px;margin-top:24px}
 .harrington .btn{font-size:13px;min-height:44px;padding:11px 16px;gap:6px}
 .harrington .center-actions{gap:8px;margin-top:20px}
 .harrington .h-premium-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none;margin-top:0;gap:0}
 .harrington .h-premium-grid article{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto auto auto auto;grid-row:auto;column-gap:16px;padding:18px 0;border-left:0;border-bottom:1px solid #dedbd5}
 .harrington .h-premium-grid article:first-child{padding-top:0}
 .harrington .h-premium-grid article:last-child{border-bottom:0;padding-bottom:0}
 .harrington .h-premium-photo{grid-column:1;grid-row:1/5;aspect-ratio:1;height:96px;margin:0;align-self:center}
 .harrington .h-premium-grid article>span{display:none}
 .harrington .h-premium-grid small{grid-column:2;font-size:10px;line-height:1.4;letter-spacing:.08em}
 .harrington .h-premium-grid h3{grid-column:2;font-size:16px;line-height:1.45;margin:4px 0 0;word-break:normal}
 .harrington .h-premium-grid p{grid-column:2;font-size:12px;line-height:1.6;margin:6px 0 0;word-break:normal;text-wrap:pretty}
 .harrington .h-premium-grid .text-link{grid-column:2;font-size:12px;min-height:44px;padding:11px 0 7px;margin:0}
 .harrington .h-overview{min-height:0!important}
 .harrington .h-overview .overview-photo{height:220px}
 .harrington .overview-copy{padding:28px 20px}
 .harrington .spec-list>div{grid-template-columns:64px minmax(0,1fr);gap:10px;padding:12px 0;font-size:13px}
 .harrington .spec-list dd{min-width:0;word-break:normal}
 .harrington .fine{font-size:11px;line-height:1.7;margin-top:16px}
 .harrington .h-film-grid{grid-template-columns:1fr;gap:18px}
 .harrington .h-film-card{display:grid;grid-template-columns:112px minmax(0,1fr);grid-template-rows:auto auto auto auto;column-gap:14px;text-align:left}
 .harrington .h-film-card>div{grid-column:1;grid-row:1/5;aspect-ratio:4/3;align-self:center}
 .harrington .h-film-card>small{grid-column:2;font-size:9px;letter-spacing:.08em;margin:0}
 .harrington .h-film-card h3{grid-column:2;font-size:16px;margin:3px 0}
 .harrington .h-film-card p{grid-column:2;font-size:12px;line-height:1.55;margin:0}
 .harrington .h-film-card>span{grid-column:2;justify-self:start;font-size:12px;min-height:44px;padding:11px 0 7px}
 .harrington .h-play{width:36px;height:36px;font-size:18px}
 .harrington .h-dual,.harrington .h-unit-intro,.harrington .h-register{gap:22px}
 .harrington .h-type-links>a{padding:16px 8px}
 .harrington .h-type-links b{font-size:28px}
 .harrington .h-type-links small{margin-top:6px;font-size:11px}
 .harrington .h-type-links span{font-size:12px}
 .harrington .h-register{padding-bottom:84px!important}
 .harrington .h-register .form-card{padding:20px 16px}
 .harrington .h-phone{font-size:28px}
 .harrington .lead-form{gap:14px}
 .harrington .lead-form>label,.harrington .consent-row{font-size:13px}
 .harrington .lead-form input:not([type=checkbox]),.harrington .lead-form select{font-size:16px}
 .harrington .h-detail article{margin-bottom:32px}
 .harrington .h-detail-title{font-size:18px;margin:28px 0 16px}
 .harrington .h-detail .h-visual{margin-bottom:18px}
 .harrington .h-cg-gallery{gap:18px}
 .harrington .h-map-links{gap:8px;margin:20px auto}
 .harrington .h-map-links h3{font-size:16px;margin-top:10px}
 .harrington .h-visual>span{font-size:11px;padding-top:8px}
 .harrington .sub-visual{height:210px}
 .harrington .sub-visual h1,.harrington .sub-title h1{font-size:28px;line-height:1.4}
 .harrington .sub-title{padding:32px 20px 20px}
 .harrington .local-nav{padding:0 12px}
 .harrington .local-nav a{padding:16px 12px;white-space:nowrap}
 .harrington .h-area-tabs{gap:8px;margin-bottom:12px}
 .harrington .h-area-tabs .btn{flex:1;padding:10px 12px}
 .harrington .unit-tabs{gap:4px}
 .harrington .unit-tabs button{min-width:56px;min-height:44px;padding:10px 12px}
 .harrington .site-footer{padding:28px 20px 86px;font-size:11px;line-height:1.7}
 .harrington .site-footer p{font-size:11px}
 .harrington .footer-links{gap:16px;flex-wrap:wrap}
 .harrington .register-panel{padding:50px 20px 24px}
 .harrington .register-panel>h2{font-size:23px}
}
@media(max-width:360px){
 .harrington .section,.harrington .scene:not(.hero){padding-left:16px;padding-right:16px}
 .harrington .h-premium-grid article{grid-template-columns:80px minmax(0,1fr);column-gap:12px}
 .harrington .h-premium-photo{height:80px}
 .harrington .h-film-card{grid-template-columns:96px minmax(0,1fr);column-gap:12px}
}
@media(max-width:700px){
 .harrington .h-premium-grid .h-premium-media{grid-column:1;grid-row:1/5;align-self:center;margin:0;min-width:0}
 .harrington .h-premium-media .h-premium-photo{height:96px;margin:0;aspect-ratio:1}
 .harrington .h-premium-media .asset-note{font-size:8px;left:4px;right:4px;bottom:4px;padding:3px;text-align:center}
}
@media(max-width:360px){.harrington .h-premium-media .h-premium-photo{height:80px}}
