.hide-on-full {
	display: none !important;
}

/* devices narrower than the site resolution - begin media transformation */
@media only screen and (max-width: 960px) {
	.hide-on-medium {
		display: none !important;
	}

	.block-on-medium {
		display: block !important;
	}

	#shell {
		width: auto;
	}

	/* fluid columns */
	.col,
	.col.solo,
	#content-main.col.solo {
		margin-left: 1%;
		margin-right: 1%;
	}

	.col-group {
		display: block;
		clear: both;
		margin-left: -1%;
		margin-right: -1%;
	}

	.col1 {
		width: 4.25%;
	}

	.col2 {
		width: 10.5%;
	}

	.col3 {
		width: 16.75%;
	}

	.col4 {
		width: 23.0%;
	}

	.col5 {
		width: 29.25%;
	}

	.col6 {
		width: 35.5%;
	}

	.col7 {
		width: 41.75%;
	}

	.col8 {
		width: 48.0%;
	}

	.col9 {
		width: 54.25%;
	}

	.col10 {
		width: 60.5%;
	}

	.col11 {
		width: 66.75%;
	}

	.col12 {
		width: 73.0%;
	}

	.col13 {
		width: 79.25%;
	}

	.col14 {
		width: 85.5%;
	}

	.col15 {
		width: 91.75%;
	}

	.col16,
	.col12 > .col-group > .col12,
	.col.solo,
	#content.col12-solo,
	#content.col15-solo {
		width: 98.0%;
	}

	/* header */
	#header .basket {
		left: 200px;
	}

	#header div.navigation-outer {
		width: auto;
		padding: 20px 10px;
	}

	/* header - user forms */
	#header .userforms {
		border-radius: 0 0 0 5px;
		width: 350px;
		background: #71824e;
	}

	#frm-signup fieldset.control {
		width: 40px;
	}

	#frm-signup .login-cta {
		width: 130px;
	}

	#frm-signup .login-cta em {
		width: 70px;
	}

	/* primary navigation */
	#nav-primary li {
		padding-right: 10px;
		font-size: 1.25em;
	}

	#nav-primary a {
		padding: 6px 10px;
	}

	/* secondary navigation */
	#nav-secondary a {
		padding: 10px 20px;
	}

	/* content */
	body.tpl-home #content-secondary,
	body.tpl-home #content-main,
	body.tpl-basket #content-secondary {
		width: 98.0%;
	}

	body.tpl-basket #content-main {
		margin-right: 1%;
		width: 73.0%;
	}

	#content .caption img {
		max-width: 100%;
	}

	#content img {
		max-width: 100%;
	}

	#content img.content-resizable {
		margin: 1em 0 !important;
		height: auto !important;
	}

	/* content - blog layout */
	body.tpl-blog #content-title.col12 {
		width: 98%;
	}

	body.tpl-blog #content-main.col8 {
		width: 66.75%;
	}

	body.tpl-blog #content-related.col4 {
		width: 29.25%;
	}

	/* forms */
	select {
		max-width: 100%;
	}

	/* forms - search forms */
	#header form.search-form {
		width: 200px;
	}

	/* image lists */
	#content ul.image-list {
		margin-left: -1%;
		margin-right: -1%;
	}

	#content ul.image-list li {
		margin: 1%;
		width: 31.33%;
	}

	#content ul.catalogues li,
	#content-main.col8 ul.catalogues li,
	#content ul.author-list li {
		width: 48%;
	}

	ul.author-list span.portrait {
		width: auto;
		height: auto;
	}

	ul.author-list span.portrait span {
		background: none;
	}

	ul.image-list img {
		max-width: 100%;
		height: auto;
	}

	ul.author-list img {
		border-radius: 5px;
	}

	/* panels */
	.panel {
		border-radius: 5px;
	}

	/* panels - call to actions */
	.panel-cta,
	.cta-strip .col5.panel-cta,
	.cta-strip .col6.panel-cta {
		background: #efe0cf;
	}

	.panel-cta:hover,
	.cta-strip .col5.panel-cta:hover,
	.cta-strip .col6.panel-cta:hover,
	.cta-strip .col6.book-search.panel-cta:hover {
		background: #dbdfd2;
	}

	.panel-cta .content,
	.panel-cta:hover .content,
	.cta-strip .col5.panel-cta .content,
	.cta-strip .col5.panel-cta:hover .content,
	.cta-strip .col6.panel-cta .content,
	.cta-strip .col6.panel-cta:hover .content,
	.cta-strip .col6.book-search.panel-cta:hover .content {
		background: none;
	}

	/* panels - introduction/alternate */
	#introduction.panel,
	div.panel-alt {
		background: #ccd1c1;
	}

	#introduction.panel .content,
	div.panel-alt .content {
		background: none;
	}

	/* panels - free books */
	#free-books.panel,
	#free-books.panel:hover {
		background: #71824e;
	}

	#free-books.panel .content,
	#free-books.panel:hover .content {
		background: none;
	}

	#free-books.panel .context {
		width: 35%;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: right bottom;
	}

	/* panels - picture kelpies */
	#picture-kelpies.panel div.content {
		background-size: 50% auto;
	}

	/* panels - basket sign up/login */
	#basket-signup.panel div.content {
		width: auto;
		background: #ccd1c1;
	}

	/* search results */
	.search-results {
		background: none;
	}

	.result {
		width: 98%;
		background: url(../../images/layout/rule-green-horiz.gif) repeat-x left bottom;
	}

	.result .data {
		overflow: hidden;
	}

	.result cite {
		display: block;
	}

	#content .result p.excerpt {
		clear: left;
	}

	/* tabs - data tabs */
	.data-tabs .part {
		clear: left;
		width: auto;
	}

	/* tabs - book carousel tabs */
	.books-tab-carousels {
		position: relative;
	}

	.books-tab-carousels .part {
		position: static;
	}

	#content .books-tab-carousels .tabs .part p.cta-right-context {
		position: absolute;
		right: 0;
		top: 0;
		max-width: 50%;
		line-height: 130%;
	}

	#content .books-tab-carousels h2 {
		max-width: 49%;
	}

	/* book carousels */
	.book-carousel-active .canvas,
	.col .book-carousel-active .canvas {
		box-sizing: border-box;
		width: 100%;
		padding: 7px 35px;
	}

}

/* devices narrower than the average content areas (col12) - optimise for smaller screens */
@media only screen and (max-width: 720px) {
	.hide-on-small {
		display: none !important;
	}

	.block-on-small {
		display: block !important;
	}

	.inline-block-on-small {
		display: inline-block !important;
	}

	#shell {
		-webkit-transition: -webkit-transform .2s ease-out;
		transition: transform .2s ease-out;
		position: relative;
		overflow: hidden;
		background-color: #fff;
	}

	body.nav-opener-open #shell {
		-webkit-transform: translateX(-220px);
		transform: translateX(-220px);
		overflow: visible;
	}

	/* reset columns */
	.col,
	.col > .col-group > .col,
	.col.solo,
	#content.col {
		float: none;
		width: auto;
		margin: 0;
	}

	.col-group {
		margin: 0;
	}

	/* header */
	#header {
		overflow: visible;
	}

	#header #logo {
		margin-top: 0;
		height: 60px;
	}

	#header div.navigation {
		padding: 10px 10px 20px;
	}

	#header .nav-toggle {
		display: block;
		position: absolute;
		overflow: hidden;
		top: 5px;
		right: 5px;
		width: 40px;
		height: 40px;
		text-indent: -99em;
		text-transform: uppercase;
		text-decoration: none;
		text-align: center;
		font-size: .75em;
	}

	#header .nav-toggle i {
		display: block;
		margin: 0 auto 5px;
		width: 23px;
		height: 20px;
		background: url(../images/icons/menu-burger.gif) no-repeat;
	}

	#header .basket {
		left: auto;
		top: 5px;
		right: 55px;
		width: auto;
	}

	#header .basket p.status a {
		overflow: hidden;
		width: 26px;
		padding-left: 5px;
		text-indent: -99em;
	}

	#header .basket p.status .label {
		display: none;
	}

	#header .basket p:nth-child(n+2) {
		display: none;
	}

	#header #nav-opener p {
		margin: .5em 0;
	}

	/* header - user forms */
	#header .userforms {
		position: static;
		clear: left;
		overflow: hidden;
		border-radius: 0;
		width: auto;
		padding: 0;
		background: transparent;
	}

	.userforms form {
		margin: 10px;
		border-radius: 5px;
		width: auto;
		padding: 10px;
		background: #71824e;
	}

	#frm-signup {
		display: none;
		height: auto;
	}

	body.frm-login-open #header .cta.login-cta {
		display: none;
	}

	#frm-signup .login-cta {
		float: none;
		clear: left;
		width: auto;
		padding-top: 10px;
	}

	#frm-signup p.notice a,
	#frm-login p.notice a {
		display: none;
	}

	#frm-signup .login-cta em {
		float: none;
		display: inline-block;
		width: auto;
		padding: 6px 0;
	}

	#frm-login {
		position: relative;
	}

	#frm-login fieldset.control {
		float: none;
		width: auto;
	}

	#status-user {
		padding: 10px;
		background: #71824e;
	}

	#status-user h2 {
		font-size: .875em;
	}

	/* primary navigation */
	#header #nav-opener {
		-webkit-transition: opacity .3s ease-out;
		transition: opacity .3s ease-out;
		position: absolute;
		overflow: hidden;
		opacity: 0;
		z-index: 1000;
		right: -220px;
		top: 0;
		bottom: 0;
		width: 220px;
		padding: 0;
		line-height: 130%;
		background: #fff url(../images/layout/sep-vert.gif) repeat-y left center
	}

	body.nav-opener-open #header #nav-opener {
		opacity: 1;
	}

	#header #nav-primary {
		float: none;
	}

	#header #nav-primary li {
		display: block;
		float: none;
		overflow: hidden;
		margin: 10px 0;
		padding: 0 10px;
	}

	#nav-primary a {
		display: block;
		float: none;
	}

	#nav-primary li li {
		font-size: 1em;
	}

	/* secondary navigation */
	#nav-opener #nav-secondary {
		background: url(../../images/layout/rule-horiz.gif) repeat-x center top;
	}

	#header #nav-secondary li {
		float: none;
		margin: 0;
		padding: 0 10px 0 10px;
		background: none;
	}

	#header #nav-secondary li.first {
		margin-top: 15px;
	}

	#nav-secondary a {
		display: block;
		float: none;
		padding: 0 10px;
	}

	/* content */
	#content,
	#content-main.solo,
	#content.col12-solo,
	#content.col14-solo,
	#content.col15-solo {
		margin: 0 10px;
		width: auto;
	}

	body.tpl-basket #content-main,
	body.tpl-blog #content-main.col8,
	body.tpl-blog #content-related.col4 {
		width: auto;
	}

	#content dt,
	#content dd {
		line-height: 120%;
	}

	/* footer */
	#footer {
		margin: 0 10px;
		width: auto;
	}

	#footer .links .inner {
		-webkit-column-count: 2;
		-webkit-column-gap: .5em;
		column-count: 2;
		column-gap: .5em;
	}

	#footer .links .col {
		margin: 0 0 .5em;
	}

	#footer .links .col:nth-child(3) {
		-webkit-column-break-before: always;
		break-before: column;
	}

	#footer .links ul {
		overflow: hidden;
		width: 100%;
	}

	#footer .homelink {
		bottom: 5px;
	}

	/* forms - search form */
	#header form.search-form {
		float: right;
		width: auto;
	}

	form.search-form input.text {
		border-radius: 5px;
		height: 23px;
		background: #e9dac8;
	}

	.book-search.panel form.search-form fieldset.control input,
	form.search-form fieldset.control input {
		border-radius: 5px;
		background: #2e331e;
	}

	#header p.login-cta {
		display: block;
		overflow: hidden;
		float: left;
		margin: 2px 5px 0 0;
	}

	#header .login-cta a {
		text-decoration: none;
		color: #fff;
	}

	/* forms */
	input.text {
		font-size: 1em;
	}

	#content form input.text {
		box-sizing: border-box;
		width: 100%;
		background: #fff;
	}

	/* calls to action */
	#content p.cta-right-context {
		position: static;
		float: right;
	}

	/* panels */
	.panel h2 br {
		display: none;
	}

	/* panels - call to action */
	.panel-cta,
	.cta-strip .col.panel-cta {
		clear: both;
		margin: 1em 0;
		border-radius: 5px;
		background: #efe0cf;
	}

	.cta-strip .col.panel-alt {
		background: #ccd1c1;
	}

	.cta-strip .col.panel-cta {
		box-sizing: border-box;
		float: left;
		clear: none;
		margin: 1%;
		width: 48%;
	}

	.cta-strip .col.panel-cta.book-search {
		width: 98%;
		float: none;
	}

	.panel-cta:hover,
	.cta-strip .col.panel-cta:hover {
		background: #dbdfd2;
	}

	.panel-cta .content {
		background: none;
		min-height: 0;
	}

	.cta-strip .col.panel-cta .content {
		min-height: 100px;
	}

	.cta-strip .col.panel-cta.book-search .content {
		min-height: 0;
	}

	#content .panel-cta h2 {
		font-size: 1em;
	}

	/* panels - free books */
	#free-books.panel,
	#free-books.panel:hover {
		border-radius: 5px;
		background: #71824e;
	}

	#free-books.panel .content,
	#free-books.panel:hover .content {
		background: none;
	}

	#free-books.panel p.text {
		margin-right: 40%;
	}

	#free-books.panel p.text br {
		display: none;
	}

	#nav-opener #free-books.panel {
		margin: 1em 10px 1em 20px;
		width: auto;
	}

	#nav-opener #free-books.panel h2 {
		font-size: 1.25em;
	}

	#nav-opener #free-books.panel p.text {
		font-size: .875em;
	}

	/* panels - basket sign up/login */
	#frm-basket-full td.offercode-text strong {
		display: block;
	}

	#frm-basket-full td.offercode-text br {
		display: none;
	}

	#basket-signup p.cta {
		margin-left: 10px;
	}

	/* panels - book search */
	.book-search.panel form.search-form input.text {
		background: #fff;
	}

	/* basket table */
	#content table.basket .isbn {
		text-indent: -99em;
		width: 0;
		padding: 0;
	}

	/* book display */
	#content .book-single .headings {
		width: auto !important;
	}
	
	#content .book-single.e-book h1,
	#content .book-single.e-book h2.subtitle {
		margin-right: 60px;
	}

	#content .book-single h2.subtitle {
		margin-bottom: .5em;
		font-size: 1.125em;
	}

	.e-book .data {
		background-size: 51px 34px;
	}

	.book .data .image {
		float: right;
		margin-left: 10px;
		width: 35%;
	}

	#content-main > .e-book .data .image {
		margin-top: 50px;
	}

	#content-main .book-single .content .image {
		float: none;
		margin: 1em 0;
		width: 100%;
	}

	#content .book .author {
		margin: 0;
		line-height: 130%;
	}

	#content .book p.enlarge {
		line-height: 120%;
		font-size: .75em;
	}

	.book .data .content {
		margin-left: 0;
	}

	.book .data dl.book-meta {
		float: none;
		overflow: hidden;
		width: auto;
	}

	.book .book-meta.meta-main dt {
		display: none;
	}

	#content .book .book-meta.meta-main dd {
		display: inline-block;
		float: none;
		margin-right: 1em;
		width: auto;
	}

	.book .data .actions {
		float: none;
		clear: both;
		margin-left: 0;
	}

	.book .data .actions:after {
		content: '';
		display: table;
		clear: both;
	}

	#content .book .data .actions p.cta {
		float: left;
		margin: 0 10px 10px 0;
	}

	.book .info {
		clear: both;
	}

	/* tabs - strip tabs */
	#content .strip-tabs ul.tab-controller {
		margin-right: 0;
	}

	#content .strip-tabs ul.tab-controller li {
		font-size: .875em;
	}

	#content .strip-tabs ul.tab-controller li.active {
		font-weight: normal;
	}

	/* tabs - data tabs */
	.data-tabs .part {
		border: 0;
		padding: 10px 0 0 0;
		background: url(../../images/layout/rule-horiz.gif) repeat-x center top;
	}

	/* tabs - book carousel tabs */
	.books-tab-carousels .tabs {
		margin-top: 0;
	}

	#content .books-tab-carousels .tabs .part p.cta-right-context {
		position: static;
		float: none;
		max-width: 100%;
	}

	/* a to z list */
	#content .atoz .letter {
		margin: 0;
	}

	.atoz .letter li {
		box-sizing: border-box;
		margin-left: 0;
		margin-right: 0;
		width: 50%;
		padding: 0 5px;
	}

	/* social links */
	#content .social {
		display: none;
	}

	#footer .social li {
		margin-right: 10px;
	}

	#footer .social a em {
		display: none;
	}

	#footer .social .ir {
		margin-left: 0;
	}

	/* search results */
	.search-results .col.result {
		margin: .875em 0;
	}

	.search-results .book .data .content {
		margin-left: 0;
	}

	.search-results .book .data .image {
		margin: 0 10px 0 0;
		float: left;
		width: auto;
	}

	.search-results .book .book-links {
		clear: both;
	}

	/* sign up CTA */
	#shell #sign-up-cta {
		display: block;
		margin: 10px;
		text-align: center;
		font-size: 1em;
		color: #fff;
	}

	#shell #content #sign-up-cta {
		margin: 1em 0;
	}

	#shell #sign-up-cta a,
	#shell #sign-up-cta a:hover {
		display: block;
		border-radius: 5px;
		box-shadow: 1px 1px 0 #ccc;
		padding: 10px;
		text-decoration: none;
		color: #fff;
		background-color: #71824e;
	}

	#shell #sign-up-cta a:active,
	#shell #sign-up-cta a:focus {
		position: relative;
		left: 1px;
		top: 1px;
		box-shadow: none;
		color: #fff;
	}

	#sign-up-cta b {
		text-transform: uppercase;
	}

	/* share controls */
	div.share-controls {
		margin: 1em 0;
	}

}