@charset "utf-8";

/* 햇살농원 찾아오시는 길 - Premium Brand Page */
body.is-location-page #container.hp_sub_container{
    width:100%!important;
    max-width:none!important;
    padding:0!important;
    background:#f6f0e6!important;
}
body.is-location-page .shop-content-wrap{
    width:100%!important;
    max-width:none!important;
    padding:0!important;
    background:transparent!important;
}
body.is-location-page .page-title,
body.is-location-page #text_size{
    display:none!important;
}

.hs-location-wrap{
    position:relative;
    width:100%;
    overflow:hidden;
    background:
        radial-gradient(circle at 18% 8%,rgba(185,120,72,.12),transparent 30%),
        linear-gradient(180deg,#f8f2e8 0%,#f5eee3 52%,#f8f2e8 100%);
    color:#241a13;
    padding:0 0 110px;
    word-break:keep-all;
}
.hs-location-wrap *{box-sizing:border-box}
.hs-location-kicker,.hs-location-label{
    margin:0 0 12px;
    font-size:12px;
    line-height:1;
    letter-spacing:.20em;
    font-weight:950;
    color:#a64632;
    text-transform:uppercase;
}

/* Opening */
.hs-location-opening{
    width:min(1320px,calc(100% - 72px));
    margin:0 auto;
    padding:92px 0 42px;
}
.hs-location-opening__inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:42px;
    align-items:end;
    padding-bottom:38px;
    border-bottom:1px solid rgba(90,59,34,.14);
}
.hs-location-opening h2{
    margin:0;
    font-size:clamp(42px,4.6vw,72px);
    line-height:1.04;
    letter-spacing:-.075em;
    font-weight:950;
    color:#241a13;
}
.hs-location-opening p:not(.hs-location-kicker){
    margin:20px 0 0;
    max-width:760px;
    font-size:18px;
    line-height:1.88;
    letter-spacing:-.035em;
    font-weight:650;
    color:#6b5747;
}
.hs-location-opening__actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:10px;
}
.hs-location-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 22px;
    border-radius:999px;
    border:1px solid rgba(75,46,27,.12);
    background:#fffaf3;
    color:#3b2a20!important;
    font-size:14px;
    font-weight:900;
    letter-spacing:-.035em;
    text-decoration:none!important;
    box-shadow:0 12px 32px rgba(50,30,18,.07);
    transition:transform .18s ease, box-shadow .18s ease;
}
.hs-location-pill:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(50,30,18,.12)}
.hs-location-pill--primary{background:#a64632;border-color:#a64632;color:#fff!important}

/* Premium card */
.hs-location-premium-card{
    width:min(1320px,calc(100% - 72px));
    margin:0 auto;
    border-radius:42px;
    overflow:hidden;
    background:rgba(255,250,242,.82);
    border:1px solid rgba(105,72,44,.12);
    box-shadow:0 34px 110px rgba(45,31,20,.10);
}
.hs-location-card-visual{
    position:relative;
    min-height:430px;
    display:grid;
    grid-template-columns:.92fr 1.08fr;
    isolation:isolate;
    background:#20150f;
}
.hs-location-card-visual__photo{
    min-height:430px;
    background:
        linear-gradient(90deg,rgba(18,12,8,.10),rgba(18,12,8,.84)),
        url('/theme/gpt/img/haetsal-location-hero.jpg') center center/cover no-repeat;
}
.hs-location-card-visual__content{
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:68px 78px;
    color:#fff;
}
.hs-location-card-visual__content .hs-location-kicker{color:#f2c999}
.hs-location-card-visual__content h3{
    margin:0;
    font-size:clamp(38px,3.7vw,58px);
    line-height:1.08;
    letter-spacing:-.07em;
    font-weight:950;
    color:#fff;
}
.hs-location-card-visual__content p{
    margin:22px 0 0;
    max-width:620px;
    font-size:17px;
    line-height:1.86;
    letter-spacing:-.035em;
    font-weight:650;
    color:rgba(255,255,255,.82);
}
.hs-location-proof{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:30px;
}
.hs-location-proof span{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:0 14px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.22);
    background:rgba(255,255,255,.10);
    color:rgba(255,255,255,.92);
    font-size:13px;
    font-weight:850;
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}
.hs-location-card-info{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
    gap:24px;
    padding:34px;
}
.hs-location-info-card{
    border-radius:32px;
    background:#fffdf8;
    border:1px solid rgba(95,62,37,.10);
    box-shadow:0 18px 54px rgba(45,31,20,.08);
    padding:42px;
}
.hs-location-info-card--guide{background:linear-gradient(145deg,#fffaf1,#fffdf9)}
.hs-location-info-card h3,
.hs-location-section-title h3,
.hs-location-standard h3{
    margin:0;
    font-size:clamp(28px,2.6vw,40px);
    line-height:1.18;
    letter-spacing:-.06em;
    font-weight:950;
    color:#241a13;
}
.hs-location-info-list{margin:30px 0 0}
.hs-location-info-list div{
    display:grid;
    grid-template-columns:120px minmax(0,1fr);
    gap:18px;
    padding:19px 0;
    border-bottom:1px solid rgba(60,42,28,.10);
}
.hs-location-info-list div:first-child{border-top:1px solid rgba(60,42,28,.10)}
.hs-location-info-list dt{
    font-size:14px;
    font-weight:950;
    color:#9b6c44;
    letter-spacing:-.025em;
}
.hs-location-info-list dd{
    margin:0;
    font-size:16px;
    line-height:1.65;
    font-weight:850;
    color:#2f241b;
    letter-spacing:-.035em;
}
.hs-location-info-list dd a{color:#a64632;text-decoration:none}
.hs-copy-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:30px;
    margin-left:8px;
    padding:0 11px;
    border:1px solid rgba(166,70,50,.22);
    border-radius:999px;
    background:#fff3ea;
    color:#a64632;
    font-size:12px;
    font-weight:950;
    cursor:pointer;
    vertical-align:middle;
}
.hs-location-check-list{list-style:none;margin:30px 0 0;padding:0}
.hs-location-check-list li{
    position:relative;
    padding:21px 0 21px 40px;
    border-bottom:1px solid rgba(60,42,28,.10);
}
.hs-location-check-list li:first-child{border-top:1px solid rgba(60,42,28,.10)}
.hs-location-check-list li:before{
    content:"";
    position:absolute;
    left:0;
    top:27px;
    width:18px;
    height:18px;
    border-radius:50%;
    background:#a64632;
    box-shadow:inset 0 0 0 5px #f3d8c9;
}
.hs-location-check-list strong{
    display:block;
    margin-bottom:7px;
    font-size:17px;
    line-height:1.35;
    font-weight:950;
    letter-spacing:-.045em;
    color:#241a13;
}
.hs-location-check-list span{
    display:block;
    font-size:14px;
    line-height:1.7;
    font-weight:650;
    letter-spacing:-.035em;
    color:#6b5747;
}

/* Map */
.hs-location-map-section{
    width:min(1320px,calc(100% - 72px));
    margin:96px auto 0;
}
.hs-location-section-title{text-align:center;margin-bottom:34px}
.hs-location-section-title p:not(.hs-location-label){
    margin:14px auto 0;
    max-width:720px;
    font-size:16px;
    line-height:1.78;
    font-weight:650;
    letter-spacing:-.035em;
    color:#6b5747;
}
.hs-location-map-frame{
    position:relative;
    overflow:hidden;
    width:100%;
    height:470px;
    border-radius:34px;
    border:1px solid rgba(95,62,37,.14);
    background:#e9dfd0;
    box-shadow:0 34px 100px rgba(45,31,20,.13);
}
#haetsalKakaoMap,.hs-location-kakao-map{display:block;width:100%;height:100%;min-height:470px}
.hs-map-label{
    position:relative;
    display:block;
    min-width:204px;
    padding:15px 19px 14px;
    border-radius:18px;
    background:#fffaf3;
    border:1px solid rgba(140,82,48,.24);
    box-shadow:0 14px 36px rgba(35,24,16,.24);
    text-align:center;
    transform:translateY(-12px);
    white-space:nowrap;
}
.hs-map-label:after{
    content:"";
    position:absolute;
    left:50%;
    bottom:-8px;
    width:16px;
    height:16px;
    background:#fffaf3;
    border-right:1px solid rgba(140,82,48,.24);
    border-bottom:1px solid rgba(140,82,48,.24);
    transform:translateX(-50%) rotate(45deg);
}
.hs-map-label strong{display:block;margin-bottom:5px;font-size:16px;font-weight:950;color:#a64632;letter-spacing:-.04em}
.hs-map-label span{display:block;font-size:12px;font-weight:850;color:#5d4b3f;letter-spacing:-.04em}
.hs-location-map-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:24px}
.hs-location-map-actions a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 24px;
    border-radius:999px;
    background:#2f241b;
    color:#fff!important;
    font-size:14px;
    font-weight:950;
    letter-spacing:-.035em;
    text-decoration:none!important;
    box-shadow:0 12px 30px rgba(40,25,15,.12);
}
.hs-location-map-actions a:first-child{background:#03c75a}
.hs-location-map-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:#6b5747}
.hs-location-map-empty strong{font-size:18px;color:#241a13;margin-bottom:8px}

/* Standard */
.hs-location-standard{
    width:min(1320px,calc(100% - 72px));
    margin:96px auto 0;
    padding:110px 32px;
    border-radius:42px;
    overflow:hidden;
    background:
        linear-gradient(120deg,rgba(22,14,9,.88),rgba(22,14,9,.58)),
        url('/theme/gpt/img/haetsal-location-bottom.jpg') center center/cover no-repeat;
    color:#fff;
    box-shadow:0 34px 100px rgba(45,31,20,.14);
}
.hs-location-standard__inner{width:min(980px,100%);margin:0 auto;text-align:center}
.hs-location-standard .hs-location-label{color:#f2c999}
.hs-location-standard h3{color:#fff;font-size:clamp(34px,3.5vw,56px)}
.hs-location-standard p{
    margin:24px auto 0;
    max-width:780px;
    font-size:17px;
    line-height:1.86;
    font-weight:650;
    letter-spacing:-.035em;
    color:rgba(255,255,255,.84);
}
.hs-location-standard-list{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:32px}
.hs-location-standard-list span{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:0 15px;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.20);
    color:rgba(255,255,255,.92);
    font-size:13px;
    font-weight:850;
}

@media(max-width:1100px){
    .hs-location-opening,.hs-location-premium-card,.hs-location-map-section,.hs-location-standard{width:min(100% - 36px,860px)}
    .hs-location-opening__inner{grid-template-columns:1fr;gap:22px}
    .hs-location-opening__actions{justify-content:flex-start}
    .hs-location-card-visual{grid-template-columns:1fr;min-height:0}
    .hs-location-card-visual__photo{min-height:310px}
    .hs-location-card-visual__content{padding:48px 34px}
    .hs-location-card-info{grid-template-columns:1fr;padding:24px}
    .hs-location-map-frame{height:390px}
    #haetsalKakaoMap,.hs-location-kakao-map{min-height:390px}
}
@media(max-width:520px){
    .hs-location-wrap{padding-bottom:68px}
    .hs-location-opening{width:calc(100% - 24px);padding:54px 0 28px}
    .hs-location-opening h2{font-size:34px}
    .hs-location-opening p:not(.hs-location-kicker){font-size:15px;line-height:1.75}
    .hs-location-opening__actions{display:grid;grid-template-columns:1fr;width:100%}
    .hs-location-pill{width:100%}
    .hs-location-premium-card,.hs-location-map-section,.hs-location-standard{width:calc(100% - 24px);border-radius:24px}
    .hs-location-card-visual__photo{min-height:240px}
    .hs-location-card-visual__content{padding:36px 22px}
    .hs-location-card-visual__content h3{font-size:30px}
    .hs-location-card-info{padding:14px;gap:14px}
    .hs-location-info-card{padding:24px 18px;border-radius:20px}
    .hs-location-info-list div{display:block;padding:15px 0}
    .hs-location-info-list dt{margin-bottom:5px;font-size:13px}
    .hs-location-info-list dd{font-size:15px}
    .hs-copy-btn{margin-left:0;margin-top:8px}
    .hs-location-map-section{margin-top:58px}
    .hs-location-map-frame{height:330px;border-radius:22px}
    #haetsalKakaoMap,.hs-location-kakao-map{min-height:330px}
    .hs-map-label{min-width:164px;padding:12px 14px 11px;border-radius:14px}
    .hs-map-label strong{font-size:14px}.hs-map-label span{font-size:11px}
    .hs-location-map-actions{display:grid;grid-template-columns:1fr}.hs-location-map-actions a{width:100%}
    .hs-location-standard{margin-top:58px;padding:58px 18px}
    .hs-location-standard h3{font-size:28px}
    .hs-location-standard p{font-size:15px}
    .pc-br{display:none}
}
