/* Site 5 owner review: one Passport composition, then one even sharing row. */
.passport-section{padding-top:55px;padding-bottom:170px}
.passport-heading{max-width:1000px}
.passport-section .passport-heading>p:not(.eyebrow){max-width:650px}
.passport-objects{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:55px;align-items:center;max-width:1120px;height:auto;min-height:420px;margin:55px auto 0}
.passport-objects .stamp-fan{position:relative;inset:auto;width:100%;height:350px;max-width:630px;justify-self:center}
.passport-objects .stamp{width:215px;height:287px;padding:13px;transform-origin:50% 85%;transition:none}
.passport-objects .stamp.peach,.passport-objects .stamp-fan:hover .stamp.peach{left:3%;right:auto;top:36px;transform:rotate(-9deg);z-index:1}
.passport-objects .stamp.green{left:calc(50% - 107.5px);right:auto;top:21px;transform:none;z-index:2}
.passport-objects .stamp.gold,.passport-objects .stamp-fan:hover .stamp.gold{left:auto;right:3%;top:36px;transform:rotate(9deg);z-index:3}
.passport-objects .stamp-top{height:143px;padding:11px 8px}
.passport-objects .stamp-top>span:first-child{font-size:8px}
.passport-objects .stamp-top>span:nth-child(2){font-size:9px}
.passport-objects .stamp-top>span strong{font-size:34px}
.passport-objects .stamp-top>b{left:14px;top:48px;font-size:39px}
.passport-objects .stamp-top img{width:66px;right:9px;bottom:6px}
.passport-objects .stamp-country{font-size:19px;margin:15px 6px 0}
.passport-objects .stamp-bottom{left:19px;right:19px;bottom:18px;gap:7px}
.passport-objects .stamp-bottom>span{font-size:12px}
.passport-objects .stamp-bottom svg{width:40px}
.passport-objects .stamp-bottom small{font-size:9px}
.passport-world{position:relative;width:100%;height:365px}
.passport-world .globe-scene{width:250px;height:250px;margin:0 auto;position:relative}
.passport-world .globe{inset:25px}
.passport-world .globe-scene .pin{width:44px;height:44px;font-size:25px}
.passport-world .globe-scene .p1{left:0;top:125px}
.passport-world .globe-scene .p2{left:25px;top:12px}
.passport-world .globe-scene .p3{right:52px;top:0}
.passport-world .globe-scene .p4{right:0;top:84px}
.passport-world .globe-scene .p5{left:25px;right:auto;bottom:0}
.passport-world .traveller-bird{left:auto;right:0;bottom:0;width:170px}
.passport-sharing{margin-top:75px;padding-top:50px;border-top:1px solid #fffaf035}
.sharing-heading{text-align:center}
.sharing-heading h3{font-size:clamp(32px,3.4vw,46px);color:#fffaf0}
.sharing-heading p{font-size:17px;margin:15px auto 0;color:#fffaf0;max-width:550px}
.sharing-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;max-width:820px;margin:35px auto 0}
.sharing-cards figure{min-width:0}
.sharing-card{display:block;position:relative;isolation:isolate;aspect-ratio:4/5;overflow:hidden;border:4px solid #fffaf0;border-radius:20px;background:#f5f1e8;box-shadow:var(--shadow);transition:transform .2s}

.sharing-card img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;background:transparent}
.sharing-card .image-fallback{font-size:13px;padding:15px;gap:12px}
.sharing-card .image-fallback strong{font-size:32px}
.sharing-cards figcaption{color:#fffaf0;text-align:center;margin-top:14px;font-size:13px}
@media(max-width:1100px){
  .passport-objects{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:30px;min-height:360px}
  .passport-objects .stamp-fan{height:310px}
  .passport-objects .stamp{width:180px;height:250px;padding:11px}
  .passport-objects .stamp.green{left:calc(50% - 90px)}
  .passport-objects .stamp-top{height:119px;padding:9px 7px}
  .passport-objects .stamp-top>span:first-child{font-size:6px}
  .passport-objects .stamp-top>span:nth-child(2){font-size:8px}
  .passport-objects .stamp-top>span strong{font-size:28px}
  .passport-objects .stamp-top>b{font-size:31px;top:43px;left:10px}
  .passport-objects .stamp-top img{width:53px;right:5px}
  .passport-objects .stamp-country{font-size:17px;margin:12px 4px 0}
  .passport-objects .stamp-bottom{left:16px;right:16px;bottom:17px;gap:6px}
  .passport-objects .stamp-bottom>span{font-size:10px}
  .passport-objects .stamp-bottom svg{width:30px}
  .passport-objects .stamp-bottom small{font-size:8px}
  .passport-world{height:320px}
  .passport-world .globe-scene{width:220px;height:220px}
  .passport-world .globe{inset:22px}
  .passport-world .globe-scene .pin{width:39px;height:39px;font-size:22px}
  .passport-world .globe-scene .p1{top:110px}
  .passport-world .globe-scene .p4{top:75px}
  .passport-world .globe-scene .p3{right:45px}
  .passport-world .traveller-bird{width:145px}
}
@media(max-width:800px){
  .passport-section{padding-top:40px;padding-bottom:125px}
  .passport-objects{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:20px;margin-top:30px;min-height:330px}
  .passport-objects .stamp-fan{height:290px}
  .passport-objects .stamp{width:159px;height:226px;padding:10px}
  .passport-objects .stamp.green{left:calc(50% - 79.5px)}
  .passport-objects .stamp-top{height:102px;padding:9px 6px}
  .passport-objects .stamp-top>b{font-size:27px;left:10px;top:39px}
  .passport-objects .stamp-top img{width:47px}
  .passport-objects .stamp-country{font-size:16px;margin-top:12px}
  .passport-objects .stamp-bottom{left:15px;right:15px;bottom:15px;gap:5px}
  .passport-objects .stamp-bottom>span{font-size:9px}
  .passport-objects .stamp-bottom svg{width:25px}
  .passport-world{height:300px}
  .passport-world .globe-scene{width:200px;height:200px}
  .passport-world .globe{inset:20px}
  .passport-world .globe-scene .pin{width:36px;height:36px;font-size:20px}
  .passport-world .globe-scene .p1{top:100px}
  .passport-world .globe-scene .p2{left:20px;top:10px}
  .passport-world .globe-scene .p3{right:40px}
  .passport-world .globe-scene .p4{top:67px}
  .passport-world .globe-scene .p5{left:20px;right:auto}
  .passport-world .traveller-bird{width:140px}
  .passport-sharing{margin-top:45px;padding-top:40px}
  .sharing-cards{gap:22px;max-width:660px}
}
@media(max-width:600px){
  .passport-section{padding-top:35px;padding-bottom:110px}
  .passport-section .passport-heading h2{font-size:clamp(45px,12.3vw,68px)}
  .passport-heading h2 span{display:block}
  .passport-section .passport-heading>p:not(.eyebrow){font-size:17px;max-width:320px;margin-top:20px}
  .passport-objects{display:block;margin-top:30px;min-height:0}
  .passport-objects .stamp-fan{width:100%;height:240px;max-width:420px;margin-inline:auto}
  .passport-objects .stamp{width:calc((100% - 24px)/3);height:190px;padding:8px}
  .passport-objects .stamp.peach,.passport-objects .stamp-fan:hover .stamp.peach{left:2%;top:32px;transform:rotate(-6deg)}
  .passport-objects .stamp.green{left:calc(33.333333% + 4px);top:20px}
  .passport-objects .stamp.gold,.passport-objects .stamp-fan:hover .stamp.gold{right:2%;top:32px;transform:rotate(6deg)}
  .passport-objects .stamp-top{height:86px;padding:8px 5px}
  .passport-objects .stamp-top>span:first-child{font-size:5px;letter-spacing:.06em}
  .passport-objects .stamp-top>span:nth-child(2){font-size:6px}
  .passport-objects .stamp-top>span strong{font-size:24px}
  .passport-objects .stamp-top>b{font-size:22px;top:40px;left:5px}
  .passport-objects .stamp-top img{width:34px;right:2px;bottom:4px}
  .passport-objects .stamp-country{font-size:13px;margin:9px 2px 0;line-height:1.1}
  .passport-objects .stamp-bottom{left:10px;right:10px;bottom:12px;gap:4px}
  .passport-objects .stamp-bottom>span{font-size:8px}
  .passport-objects .stamp-bottom svg{width:17px}
  .passport-objects .stamp-bottom small{font-size:7px}
  .passport-world{height:210px;max-width:340px;margin:5px auto 0}
  .passport-world .globe-scene{width:190px;height:190px;margin:0}
  .passport-world .globe-scene .p1{top:94px}
  .passport-world .globe-scene .p4{top:63px}
  .passport-world .traveller-bird{width:142px;bottom:0;right:0}
  .passport-sharing{margin-top:45px;padding-top:35px}
  .sharing-heading h3{font-size:32px}
  .sharing-heading p{font-size:15px;max-width:300px;margin-top:13px}
  .sharing-cards{gap:12px;margin-top:25px}
  .sharing-card{border-width:2px;border-radius:10px}
  .sharing-cards figcaption{font-size:13px;margin-top:12px;line-height:1.4}
  .sharing-card .image-fallback{font-size:8px;padding:5px;gap:5px}
  .sharing-card .image-fallback strong{font-size:18px}
}
@media(max-width:374px){
  .sharing-cards{gap:10px}
}
@media(prefers-reduced-motion:reduce){.sharing-card:hover{transform:none}}
